123456789101112131415161718192021222324252627282930313233343536 |
- package ini
- // Statement is an empty AST mostly used for transitioning states.
- func newStatement() AST {
- return newAST(ASTKindStatement, AST{})
- }
- // SectionStatement represents a section AST
- func newSectionStatement(tok Token) AST {
- return newASTWithRootToken(ASTKindSectionStatement, tok)
- }
- // ExprStatement represents a completed expression AST
- func newExprStatement(ast AST) AST {
- return newAST(ASTKindExprStatement, ast)
- }
- // CommentStatement represents a comment in the ini definition.
- //
- // grammar:
- // comment -> #comment' | ;comment'
- // comment' -> epsilon | value
- func newCommentStatement(tok Token) AST {
- return newAST(ASTKindCommentStatement, newExpression(tok))
- }
- // CompletedSectionStatement represents a completed section
- func newCompletedSectionStatement(ast AST) AST {
- return newAST(ASTKindCompletedSectionStatement, ast)
- }
- // SkipStatement is used to skip whole statements
- func newSkipStatement(ast AST) AST {
- return newAST(ASTKindSkipStatement, ast)
- }
|