Om
skip_operation.hpp
Go to the documentation of this file.
1 
26 #ifndef Om_Language_Operation_SkipOperation_
27 
28  #define Om_Language_Operation_SkipOperation_ \
29  Om::Language::Operation::SkipOperation
30 
33  #include "om/language/system.hpp"
34 
35  #define Om_Language_Operation_SkipOperation_GetName_() \
36  "skip"
37 
38 namespace Om {
39 
40  namespace Language {
41 
42  namespace Operation {
43 
44  // MARK: - Om::Language::Operation::SkipOperation
45 
51  public DefaultIncompleteOperation<SkipOperation> {
52 
53  public: // MARK: public (static)
54 
55  static char const * GetName();
56 
57  template <typename TheSkipOperation>
58  static void GiveElements(
59  TheSkipOperation &,
60  Consumer &
61  );
62 
63  public: // MARK: public (non-static)
64 
66 
67  template <typename TheOperand>
69  Evaluation &,
70  TheOperand &
71  );
72 
73  template <typename TheProducer>
75  Evaluation &,
76  TheProducer &
77  );
78 
79  private: // MARK: private (non-static)
80 
85 
86  };
87 
88  namespace {
89 
90  static System::Definition<SkipOperation> const theSkipDefinition;
91 
92  }
93 
94  }
95 
96  }
97 
98 }
99 
101 
102 #endif
An Element taker; takes at the back.
Definition: consumer.hpp:42
The current evaluation.
Definition: evaluation.hpp:42
The Expression Program implementation.
Definition: expression.hpp:56
A partial implementation of IncompleteOperation.
The skip operation implementation.
bool TakeQuotedProducer(Evaluation &, TheProducer &)
bool TakeOperand(Evaluation &, TheOperand &)
static void GiveElements(TheSkipOperation &, Consumer &)
An inserter of an Operation into the static System instance.
Definition: system.hpp:129
Om header file.
The Om library.
Definition: code_point.hpp:26
Om source file.
Om header file.