Enhanced C#
Language of your choice: library documentation
Public Member Functions | Protected Member Functions | Protected fields | Protected static fields | List of all members
Loyc.Syntax.Les.Les3Parser Class Reference

Source files:
Inheritance diagram for Loyc.Syntax.Les.Les3Parser:
Loyc.Syntax.BaseParserForList< Token, int >

Public Member Functions

 Les3Parser (IList< Token > list, ISourceFile file, IMessageSink sink, int startIndex=0)
void Reset (IList< Token > list, ISourceFile file, int startIndex=0)
IEnumerable< LNodeStart (Holder< TokenType > separator)
 Top-level rule: expects a sequence of statements followed by EOF More...
LNodeList ExprList (string listContextName, LNode firstItem=null, bool presumeCommaSeparated=true)
LNodeList ExprList (string listContextName, ref TokenType separatorType, LNode firstItem=null, bool presumeCommaSeparated=true, bool isBracedBlock=false)
IEnumerable< LNodeExprListLazy (Holder< TokenType > separatorType)

Protected Member Functions

override void Reset (IList< Token > list, Token eofToken, ISourceFile file, int startIndex=0)
override string ToString (int type)
virtual LNode MarkSpecial (LNode n)
virtual LNode MarkCall (LNode n)
LNode MissingExpr (Token tok, string error=null, bool afterToken=false)
Precedence PrefixPrecedenceOf (Token t)
LNode CompactExpression ()
LNode NextExpression (ref TokenType separatorType, out Token separator, bool isBracedBlock)
LNode TopExpr (bool compactMode)

Protected fields

Les3PrecedenceMap _precMap = Les3PrecedenceMap.Default

Protected static fields

const new TT EOF = TT.EOF

Member Function Documentation

◆ Start()

IEnumerable<LNode> Loyc.Syntax.Les.Les3Parser.Start ( Holder< TokenType >  separator)

Top-level rule: expects a sequence of statements followed by EOF

separatorIf there are multiple expressions, the Value of this Holder is set to the separator between them: Comma or Semicolon.

Referenced by Loyc.Syntax.Les.Les3LanguageService.Parse().