Om
front_pull_term_operation.hpp
Go to the documentation of this file.
1 
47 #ifndef Om_Language_Operation_FrontPullTermOperation_
48 
49  #define Om_Language_Operation_FrontPullTermOperation_ \
50  Om::Language::Operation::FrontPullTermOperation
51 
52  #include "om/language/system.hpp"
53 
54  #define Om_Language_Operation_FrontPullTermOperation_GetName_() \
55  "<-[terms]"
56 
57 namespace Om {
58 
59  namespace Language {
60 
62  class Expression;
64 
65  namespace Operation {
66 
67  // MARK: - Om::Language::Operation::FrontPullTermOperation
68 
74 
75  public: // MARK: public (static)
76 
77  static char const * GetName();
78 
79  static void Give(Evaluation &);
80 
85  template <typename TheConsumer>
86  static void Pull(
87  Expression &,
88  TheConsumer &
89  );
90 
91  };
92 
93  namespace {
94 
95  static System::Definition<FrontPullTermOperation> const theFrontPullTermDefinition;
96 
97  }
98 
99  }
100 
101  }
102 
103 }
104 
106 
107 #endif
The current evaluation.
Definition: evaluation.hpp:42
The Expression Program implementation.
Definition: expression.hpp:56
static void Pull(Expression &, TheConsumer &)
The callback for PullOperation.
An inserter of an Operation into the static System instance.
Definition: system.hpp:129
The Om library.
Definition: code_point.hpp:26
Om header file.