~ubuntu-branches/ubuntu/maverick/aspectc++/maverick

« back to all changes in this revision

Viewing changes to AspectC++/CodeWeaver.h

  • Committer: Bazaar Package Importer
  • Author(s): Reinhard Tartler
  • Date: 2008-04-10 17:40:52 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20080410174052-xdnsm7oi8hauyyf1
Tags: 1.0pre4~svn.20080409+dfsg-3
Fix another missing include, this time in Ag++/StdSystem.cc

Show diffs side-by-side

added added

removed removed

Lines of Context:
46
46
 
47
47
class AspectInfo;
48
48
class AdviceInfo;
49
 
class IntroductionInfo;
50
49
class JoinPointLoc;
51
50
class JPL_Class;
 
51
class JPL_Class;
52
52
class JPP_Class;
53
53
class JPP_Code;
54
54
class JPL_Method;
65
65
      void make_check_function (bool in_checked,
66
66
                                CRecord *in, CRecord *check_for);
67
67
      void provide_typename (CTree *node);
 
68
      void make_tjp_typename (ostream &out, JPL_Code *loc, int depth);
68
69
      void make_proceed_code (ostream &out, JoinPointLoc *loc, bool action,
69
70
                               int max_depth);
70
71
      void make_advice_call(ostream &out, JoinPointLoc *loc, AdviceInfo *ad,
74
75
      void make_action_wrapper(ostream &impl, JoinPointLoc *jpl,
75
76
                               JPAdvice *jpa);
76
77
      void make_proceed_func(ostream &impl, JoinPointLoc *loc, JPAdvice *jpa);
 
78
      string wrapper_function_signature (JPL_Code *loc, CFunctionInfo *func,
 
79
        bool def);
77
80
      bool check_special_member_function (CFunctionInfo *func);
78
81
      void gen_special_member_function (JoinPointLoc *loc, JPP_Code &plan);
79
82
      void wrap_function (JPL_Code *loc, JPP_Code &plan);
90
93
 
91
94
      void insert_namespace_ac_before (Token *inspos);
92
95
      void to_class (ACAspectInfo *ai);
93
 
      void invocation_functions (ACAspectInfo *ai, Token *first,
 
96
      void invocation_functions (ACAspectInfo *ai,
94
97
                                 const string &decls, const string &defs);
95
98
      void declare_friends (CClassInfo *cls, list<CClassInfo*> &friends);
96
99
      void open_namespace (ostream &out, CClassInfo *obj);
99
102
      void declare_function (CFunctionInfo *advice_func, CTree *advice_decl);
100
103
      void make_tjp_struct(ostream &out, JoinPointLoc *loc, JPAdvice *jpa);
101
104
      void make_tjp_common_init(ostream &code, JoinPointLoc *loc, JPAdvice *jpa);
102
 
      void introduce (JPL_Class *loc, CTree *decl, CProtection::Type prot,
103
 
                      Token *primary_end);
104
 
      void baseclass (JPL_Class &loc, JPP_Class &plan);
105
 
/*       void inherited (JPL_Class *loc, IntroductionInfo *intro); */
106
105
      void singleton (ACAspectInfo *ai);
107
 
      void make_result_type (ostream &out, CTypeInfo *type, bool reference);
108
 
      void make_result_declaration(ostream &out, CTypeInfo *type);
109
 
      void make_result_assignment(ostream &out, CTypeInfo *type);
110
 
      void make_action_result_assignment(ostream &out, CTypeInfo *type);
111
 
      void make_result_return(ostream &out, CTypeInfo *type);
112
106
      void exec_join_point (JPL_Method *loc, JPP_Code &plan);
113
107
      void call_join_point (JPL_MethodCall *loc, JPP_Code &plan);
114
108
      void cons_join_point (JPL_Construction *loc, JPP_Code &plan);
115
109
      void dest_join_point (JPL_Destruction *loc, JPP_Code &plan);
116
 
      void add_intro_include (JPL_Class *jpl, IntroductionInfo *ii);
117
 
      void add_aspect_include (JoinPointLoc *jpl, AspectInfo *ai,
118
 
                               ACAspectInfo *acai, AspectRef::Kind kind);
119
 
      void aspect_includes (CProject &project, Token *first);
 
110
      void add_aspect_include (JoinPointLoc *jpl, AspectInfo &aspect_info,
 
111
                               AspectRef::Kind kind);
 
112
      void aspect_includes (CProject &project);
 
113
      AspectIncludes &aspect_includes () { return _aspect_includes; }
120
114
      void slice_includes (CProject &project, Token *first);
121
115
      void type_check (CRecord *in, const string &name, bool result);
122
116
 };