mirror of
				https://gitea.com/Lydanne/buildx.git
				synced 2025-11-04 10:03:42 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
		
			981 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			981 B
		
	
	
	
		
			Go
		
	
	
	
	
	
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 defintion.
 | 
						|
//
 | 
						|
//	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)
 | 
						|
}
 |