首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在通过方法创建对象时遇到的自动连接问题

在通过方法创建对象时遇到的自动连接问题
EN

Stack Overflow用户
提问于 2011-03-17 16:46:43
回答 1查看 88关注 0票数 0

我使用PicoContainer来连接我的应用程序的类。正如你在下面看到的,一切都很完美,但都在一个地方:

代码语言:javascript
复制
    CharArrayReader reader = new CharArrayReader(acCode.toCharArray());
    CharStream charStream = new CharStream(reader);
    Scanner scanner = new Scanner(charStream);
    TokenStream tokenStream = new TokenStream(scanner);
    ParserGeneratingAST parserGeneratingAST = new ParserGeneratingAST(tokenStream);
--> AbstractSyntaxTree ast = parserGeneratingAST.generateAST(); <-- here is the problem
    SymbolsTable symbolsTable = new SymbolsTable();
    ErrorsTable errorsTable = new ErrorsTable();

    SymbolsTableFillerVisitor symbolsTableFillerVisitor = new SymbolsTableFillerVisitor(symbolsTable, errorsTable);
    TypeCheckingVisitor typeCheckingVisitor = new TypeCheckingVisitor(symbolsTable, errorsTable);
    InstructionsList instructionsList = new InstructionsList();
    CodeGenerationVisitor codeGenerationVisitor = new CodeGenerationVisitor(instructionsList);

    symbolsTableFillerVisitor.visit(ast);
    typeCheckingVisitor.visit(ast);
    codeGenerationVisitor.visit(ast);        

问题所在是

代码语言:javascript
复制
AbstractSyntaxTree ast = parserGeneratingAST.generateAST();

有什么办法可以使用PicoContainer来解决这个问题吗?如果可能的话,我想让我的类不带注释。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-17 17:01:40

如果我理解正确的话,您的问题是将AbstractSyntaxTree注入到您的类中,但您必须使用ParserGeneratingAST来生成AbstractSyntaxTree的实例。尽管我不是PicoContainer方面的专家,但我认为在这种情况下,您可以使用创建AbstractSyntaxTree对象的工厂(通过使用ParserGeneratingAST),然后可以使用Factory Injection

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5336751

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档