1 ///////////////////////////////////////////////////////////////////////////////
3 // This file contains the definitions used in the attribute
6 ///////////////////////////////////////////////////////////////////////////////
7 #ifndef attribute_grammar_h
8 #define attribute_grammar_h
16 ///////////////////////////////////////////////////////////////////////////////
18 // Class to represent an attribute grammar class
20 ///////////////////////////////////////////////////////////////////////////////
21 class AttributeGrammarClass : public SyntaxClass
22 { AttributeGrammarClass(const AttributeGrammarClass&);
23 void operator = (const AttributeGrammarClass&);
25 AttributeGrammarClass(Id, Inherits, TyQual, Decls);
26 ~AttributeGrammarClass();
27 virtual void gen_class_interface(CodeGen&);
28 virtual void gen_class_implementation(CodeGen&, Tys, DefKind);
31 ///////////////////////////////////////////////////////////////////////////////
33 // Definition of the attribute grammar compiler
35 ///////////////////////////////////////////////////////////////////////////////
36 class AttributeGrammarCompiler : virtual public ParserCompiler {
38 // no copy constructor
39 AttributeGrammarCompiler(const AttributeGrammarCompiler&);
40 void operator = (const AttributeGrammarCompiler&); // no assignment
44 AttributeGrammarCompiler();
45 ~AttributeGrammarCompiler();
47 void gen_attribute_grammar(Id, GramExp);