Om
drop_operation.hpp
Go to the documentation of this file.
1 
26 #ifndef Om_Language_Operation_DropOperation_
27 
28  #define Om_Language_Operation_DropOperation_ \
29  Om::Language::Operation::DropOperation
30 
32  #include "om/language/system.hpp"
33 
34  #define Om_Language_Operation_DropOperation_GetName_() \
35  "drop"
36 
37 namespace Om {
38 
39  namespace Language {
40 
41  namespace Operation {
42 
43  // MARK: - Om::Language::Operation::DropOperation
44 
50  public DefaultIncompleteOperation<DropOperation> {
51 
52  public: // MARK: public (static)
53 
54  static char const * GetName();
55 
56  template <typename TheDropOperation>
57  static void GiveElements(
58  TheDropOperation &,
59  Consumer &
60  );
61 
62  public: // MARK: public (non-static)
63 
64  virtual bool ParseQuotedElements(
65  Evaluation &,
66  Reader &
67  );
68 
69  template <typename TheOperand>
70  bool TakeOperand(
71  Evaluation &,
72  TheOperand &
73  );
74 
75  template <typename TheProducer>
76  bool TakeQuotedProducer(
77  Evaluation &,
78  TheProducer &
79  );
80 
81  };
82 
83  namespace {
84 
85  static System::Definition<DropOperation> const theDropDefinition;
86 
87  }
88 
89  }
90 
91  }
92 
93 }
94 
96 
97 #endif
The drop operation implementation.
The Om library.
Definition: code_point.hpp:26
Om header file.
static void GiveElements(TheDropOperation &, Consumer &)
bool TakeOperand(Evaluation &, TheOperand &)
An Element taker; takes at the back.
Definition: consumer.hpp:42
Produces each CodePoint until the end of the Source.
Definition: reader.hpp:33
The current evaluation.
Definition: evaluation.hpp:42
A partial implementation of IncompleteOperation.
virtual bool ParseQuotedElements(Evaluation &, Reader &)
bool TakeQuotedProducer(Evaluation &, TheProducer &)
An inserter of an Operation into the static System instance.
Definition: system.hpp:54
Om source file.