示例#1
0
        public ITagger <T> CreateTagger <T>(ITextView textView, ITextBuffer buffer) where T : ITag
        {
            Entity <LinkedList <Token> > tokenizedBuffer   = TokenizedBufferBuilder.TokenizedBuffers[buffer];
            ClojureTokenTagger           tagger            = new ClojureTokenTagger(buffer, tokenizedBuffer);
            BufferTextChangeHandler      textChangeHandler = new BufferTextChangeHandler(new TextBufferAdapter(textView), tokenizedBuffer);
            TextChangeAdapter            textChangeAdapter = new TextChangeAdapter(textChangeHandler);

            buffer.Changed += textChangeAdapter.OnTextChange;
            textChangeHandler.TokenChanged += tagger.OnTokenChange;
            return(tagger as ITagger <T>);
        }
示例#2
0
        public void Initialize()
        {
            _tokenizer             = new Tokenizer();
            _tokenizedBufferEntity = new Entity <LinkedList <Token> >();
            _textBuffer            = MockRepository.GenerateStub <ITextBufferAdapter>();

            _bufferTextChangeHandler = new BufferTextChangeHandler(
                _textBuffer,
                _tokenizedBufferEntity);

            _bufferTextChangeHandler.TokenChanged += MockRepository.GenerateStub <EventHandler <TokenChangedEventArgs> >();
        }