Паттерн: Фасад (Facade)
Исходник: ProgramNodeBuilder.cpp, язык: C++ [code #465, hits: 6194]
автор: this [добавлен: 19.08.2007]
  1. class ProgramNodeBuilder {
  2. public:
  3. ProgramNodeBuilder();
  4. virtual ProgramNode* NewVariable(
  5. const char* variableName
  6. ) const;
  7. virtual ProgramNode* NewAssignment(
  8. ProgramNode* variable, ProgramNode* expression
  9. ) const;
  10. virtual ProgramNode* NewReturnStatement(
  11. ProgramNode* value
  12. ) const;
  13. virtual ProgramNode* NewCondition(
  14. ProgramNode* condition,
  15. ProgramNode* truePart, ProgramNode* falsePart
  16. ) const;
  17. // ...
  18. ProgramNode* GetRootNode();
  19. private:
  20. ProgramNode* _node;
  21. };
Сущность Classes

Используется для инкрементного построения дерева разбора.
Тестировалось на: MS Visual Studio 2005, .NET Framework 2.0

+добавить реализацию