regexpOpNode.h
1 //regexpOpNode.h
2 //-------------------------------------------------------------------------------------------
3 /*
4  * Fco. Javier Bohórquez Ogalla
5  * 75766599-E
6  * Puerto Real (Cádiz)
7  * powersgame@gmail.com
8  */
9 //-------------------------------------------------------------------------------------------
10 
11 //-------------------------------------------------------------------------------------------
12 /*
13  * This program is free software; you can redistribute it and/or modify
14  * it under the terms of the GNU General Public License as published by
15  * the Free Software Foundation; either version 2 of the License, or
16  * (at your option) any later version.
17  *
18  * This program is distributed in the hope that it will be useful,
19  * but WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21  * GNU General Public License for more details.
22  *
23  * You should have received a copy of the GNU General Public License
24  * along with this program; if not, write to the Free Software
25  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
26  * MA 02110-1301, USA.
27  */
28 //-------------------------------------------------------------------------------------------
29 
30 //-------------------------------------------------------------------------------------------
39 //-------------------------------------------------------------------------------------------
40 
41 //-------------------------------------------------------------------------------------------
42 #ifndef _RUN_OPERATORS_REGEXOPNODE_
43 #define _RUN_OPERATORS_REGEXOPNODE_
44 
45 #include "../tree/typeNode.h"
46 //-------------------------------------------------------------------------------------------
47 
48 //-------------------------------------------------------------------------------------------
62 class matchNode : public logicNode {
63  public:
70  matchNode (runNode* str, runNode* regexp);
75  void run ();
81  static runNode* asMethod ();
82  private:
83  runNode *regexp_, *str_;
84 };
85 //----------------------------------------------------------------------
86 
87 //----------------------------------------------------------------------
97 class newregexpNode : public nexpNode {
98  public:
104  newregexpNode (runNode* str);
112  void run ();
113  private:
114  runNode *str_;
115 };
116 //----------------------------------------------------------------------
117 
118 //----------------------------------------------------------------------
143 class searchNode : public nexpNode {
144  public:
152  searchNode (runNode* str, runNode* regexp);
163  searchNode (runNode* str, runNode* regexp, runNode* keys);
168  void run ();
174  static runNode* asMethod ();
175  private:
176  runNode *regexp_, *str_, *key_;
177 };
178 //-------------------------------------------------------------------------------------------
179 
180 //-------------------------------------------------------------------------------------------
181 #endif
182 //-------------------------------------------------------------------------------------------
183 //Fco. Javier Bohórquez Ogalla
void run()
Definition: regexpOpNode.cpp:50
Nodos lógicos.
Definition: expNode.h:279
searchNode(runNode *str, runNode *regexp)
Definition: regexpOpNode.cpp:105
static runNode * asMethod()
Definition: regexpOpNode.cpp:42
newregexpNode(runNode *str)
Definition: regexpOpNode.cpp:82
Nodo función comprobación cadena sobre expresión regular.
Definition: regexpOpNode.h:62
Nodo función búsqueda estructurada.
Definition: regexpOpNode.h:143
Nodo ejecutable.
Definition: runTree.h:123
Operador de definición de expresión regular.
Definition: regexpOpNode.h:97
void run()
Definition: regexpOpNode.cpp:117
void run()
Definition: regexpOpNode.cpp:84
matchNode(runNode *str, runNode *regexp)
Definition: regexpOpNode.cpp:40
static runNode * asMethod()
Definition: regexpOpNode.cpp:109
Nodo expresión de tipo no definido.
Definition: expNode.h:164