1 ///////////////////////////////////////////////////////////////////////////////
2 // This file is generated automatically using Prop (version 2.3.6),
3 // last updated on Nov 2, 1999.
4 // The original source file is "aggen.ph".
5 ///////////////////////////////////////////////////////////////////////////////
8 ///////////////////////////////////////////////////////////////////////////////
10 // This file contains the definitions used in the attribute
13 ///////////////////////////////////////////////////////////////////////////////
14 #ifndef attribute_grammar_h
15 #define attribute_grammar_h
23 ///////////////////////////////////////////////////////////////////////////////
25 // Class to represent an attribute grammar class
27 ///////////////////////////////////////////////////////////////////////////////
28 class AttributeGrammarClass
: public SyntaxClass
29 { AttributeGrammarClass(const AttributeGrammarClass
&);
30 void operator = (const AttributeGrammarClass
&);
32 AttributeGrammarClass(Id
, Inherits
, TyQual
, Decls
);
33 ~AttributeGrammarClass();
34 virtual void gen_class_interface(CodeGen
&);
35 virtual void gen_class_implementation(CodeGen
&, Tys
, DefKind
);
38 ///////////////////////////////////////////////////////////////////////////////
40 // Definition of the attribute grammar compiler
42 ///////////////////////////////////////////////////////////////////////////////
43 class AttributeGrammarCompiler
: virtual public ParserCompiler
{
45 // no copy constructor
46 AttributeGrammarCompiler(const AttributeGrammarCompiler
&);
47 void operator = (const AttributeGrammarCompiler
&); // no assignment
51 AttributeGrammarCompiler();
52 ~AttributeGrammarCompiler();
54 void gen_attribute_grammar(Id
, GramExp
);
60 ------------------------------- Statistics -------------------------------
61 Merge matching rules = yes
62 Number of DFA nodes merged = 0
63 Number of ifs generated = 0
64 Number of switches generated = 0
67 Adaptive matching = enabled
68 Fast string matching = disabled
69 Inline downcasts = enabled
70 --------------------------------------------------------------------------