@Test @DisplayName("The syntax is defined in two parts with interface name") void splitAndInterfaceName() { var klass = FluentBuilder.from(MyClass.class); var sut = klass .syntax("kw(String) ( noParameters | parameters | parameter+ )? regex* usage help executor") .name("SpecialName") .syntax("build"); sut.optimize(); Assertions.assertEquals(EXPECTED, sut.toString()); }
public Syntax(Lexer lexer, FluentNodeCreator nodeCreator) { this.lexer = lexer; this.nodeCreator = nodeCreator; }
Syntax { public Syntax(Lexer lexer, FluentNodeCreator nodeCreator) { this.lexer = lexer; this.nodeCreator = nodeCreator; } }
Syntax { public Syntax(Lexer lexer, FluentNodeCreator nodeCreator) { this.lexer = lexer; this.nodeCreator = nodeCreator; } Syntax(Lexer lexer, FluentNodeCreator nodeCreator); }
Syntax { public Syntax(Lexer lexer, FluentNodeCreator nodeCreator) { this.lexer = lexer; this.nodeCreator = nodeCreator; } Syntax(Lexer lexer, FluentNodeCreator nodeCreator); List<Node> expression(); List<Node> subExpression(); List<Node> alternate(); List<Node> simple(); List<Node> terminal(); }
Syntax { public Syntax(Lexer lexer, FluentNodeCreator nodeCreator) { this.lexer = lexer; this.nodeCreator = nodeCreator; } Syntax(Lexer lexer, FluentNodeCreator nodeCreator); List<Node> expression(); List<Node> subExpression(); List<Node> alternate(); List<Node> simple(); List<Node> terminal();  }