public static SpanConstructor AsDirectiveToken(this SpanConstructor self, DirectiveTokenDescriptor descriptor) { return(self .With(new DirectiveTokenChunkGenerator(descriptor)) .With(new DirectiveTokenEditHandler((content) => SpanConstructor.TestTokenizer(content))) .Accepts(AcceptedCharactersInternal.NonWhiteSpace)); }
public SpanConstructor(SpanKindInternal kind, SourceLocation location, IEnumerable <IToken> tokens) { Builder = new SpanBuilder(location); Builder.Kind = kind; Builder.EditHandler = SpanEditHandler.CreateDefault((content) => SpanConstructor.TestTokenizer(content)); foreach (IToken sym in tokens) { Builder.Accept(sym); } }
public static SpanConstructor AsCodeMarkup(this SpanConstructor self) { return(self .With(new ImplicitExpressionEditHandler( (content) => SpanConstructor.TestTokenizer(content), CSharpCodeParser.DefaultKeywords, acceptTrailingDot: true)) .With(new MarkupChunkGenerator()) .Accepts(AcceptedCharactersInternal.AnyExceptNewline)); }
public static SpanConstructor AutoCompleteWith( this SpanConstructor self, string autoCompleteString, bool atEndOfSpan) { return(self.With(new AutoCompleteEditHandler( (content) => SpanConstructor.TestTokenizer(content), autoCompleteAtEndOfSpan: atEndOfSpan) { AutoCompleteString = autoCompleteString })); }
internal virtual Block ConfigureAndAddSpanToBlock(BlockBuilder block, SpanConstructor span) { switch (block.Type) { case BlockKindInternal.Markup: span.With(new MarkupChunkGenerator()); break; case BlockKindInternal.Statement: span.With(new StatementChunkGenerator()); break; case BlockKindInternal.Expression: block.ChunkGenerator = new ExpressionChunkGenerator(); span.With(new ExpressionChunkGenerator()); break; } block.Children.Add(span); return(block.Build()); }
public SpanConstructor AsImplicitExpression(ISet <string> keywords, bool acceptTrailingDot) { return(_self .With(new ImplicitExpressionEditHandler((content) => SpanConstructor.TestTokenizer(content), keywords, acceptTrailingDot)) .With(new ExpressionChunkGenerator())); }
public UnclassifiedCodeSpanConstructor(SpanConstructor self) { _self = self; }
public static SpanConstructor AutoCompleteWith(this SpanConstructor self, string autoCompleteString) { return(AutoCompleteWith(self, autoCompleteString, atEndOfSpan: false)); }
public static SpanConstructor Accepts(this SpanConstructor self, AcceptedCharactersInternal accepted) { return(self.With(eh => eh.AcceptedCharacters = accepted)); }