示例#1
0
        public void RemoveParserListener(IParserListener listener)
        {
            ParserListeners.Remove(listener);

            BeforeParsingStarted           -= listener.OnBeforeParsingStarted;
            AfterParsingFinished           -= listener.OnAfterParsingFinished;
            TrackChanged                   -= listener.OnTrackChanged;
            LayerChanged                   -= listener.OnLayerChanged;
            InstrumentParsed               -= listener.OnInstrumentParsed;
            TempoChanged                   -= listener.OnTempoChanged;
            KeySignatureParsed             -= listener.OnKeySignatureParsed;
            TimeSignatureParsed            -= listener.OnTimeSignatureParsed;
            BarLineParsed                  -= listener.OnBarLineParsed;
            TrackBeatTimeBookmarked        -= listener.OnTrackBeatTimeBookmarked;
            TrackBeatTimeBookmarkRequested -= listener.OnTrackBeatTimeBookmarkRequested;
            TrackBeatTimeRequested         -= listener.OnTrackBeatTimeRequested;
            PitchWheelParsed               -= listener.OnPitchWheelParsed;
            ChannelPressureParsed          -= listener.OnChannelPressureParsed;
            PolyphonicPressureParsed       -= listener.OnPolyphonicPressureParsed;
            SystemExclusiveParsed          -= listener.OnSystemExclusiveParsed;
            ControllerEventParsed          -= listener.OnControllerEventParsed;
            LyricParsed    -= listener.OnLyricParsed;
            MarkerParsed   -= listener.OnMarkerParsed;
            FunctionParsed -= listener.OnFunctionParsed;
            NotePressed    -= listener.OnNotePressed;
            NoteReleased   -= listener.OnNoteReleased;
            NoteParsed     -= listener.OnNoteParsed;
            ChordParsed    -= listener.OnChordParsed;
        }
示例#2
0
            public void Parse(IReadOnlyList <Token> tokens, IParserListener listener)
            {
                this.tokens   = tokens;
                this.listener = listener;
                this.index    = 0;

                this.Parse(this.StartSymbol);
            }
示例#3
0
        public void Parse(IReadOnlyList <Token> tokens, IParserListener listener)
        {
            this.index          = 0;
            this.lookaheadIndex = -1;
            this.tokens         = tokens.Concat(new[] { Token.Eof }).ToArray();
            this.listener       = listener;

            this.Parse(this.startSymbol);
        }
示例#4
0
 public Parser(Lexer scanner, IParserListener listener)
 {
     this.scanner      = scanner;
     this.baseListener = new BaseParserListener(listener);
 }
示例#5
0
 public Parser(Lexer scanner, IParserListener listener)
 {
     this.scanner = scanner;
     this.baseListener = new BaseParserListener(listener);
 }
示例#6
0
 public BaseParserListener(IParserListener listener)
 {
     this.listener = listener;
 }
示例#7
0
 public BaseParserListener(IParserListener listener)
 {
     this._listener = listener;
 }
示例#8
0
 public DefaultParser(ILexer scanner, IParserListener baseListener, Session session)
 {
     this._scanner      = scanner;
     this._baseListener = new BaseParserListener(baseListener);
     this._session      = session;
 }