public EvaluationTree parse() { ExpressionLexer lexer = new ExpressionLexer(expression); TokenStream tokenStream = lexer.lex(); SyntaxTree syntaxTree = new SyntaxTree(tokenStream); syntaxTree.analyze(); SemanticTree semanticTree = new SemanticTree(syntaxTree); semanticTree.analyze(declaration); EvaluationTree evaluationTree = new EvaluationTree(semanticTree); return(evaluationTree); }