[apparmor] [PATCH 07/20] Add cnode class as a base class of all expr nodes that contain character info
John Johansen
john.johansen at canonical.com
Fri Nov 5 05:51:03 GMT 2010
Signed-off-by: John Johansen <john.johansen at canonical.com>
---
parser/libapparmor_re/regexp.y | 17 +++++++++++++----
1 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/parser/libapparmor_re/regexp.y b/parser/libapparmor_re/regexp.y
index ac52903..bfd74c6 100644
--- a/parser/libapparmor_re/regexp.y
+++ b/parser/libapparmor_re/regexp.y
@@ -188,8 +188,17 @@
virtual void follow(NodeCases& cases) = 0;
};
+ /* common base class for all the different classes that contain
+ * character information.
+ */
+ class CNode : public ImportantNode {
+ public:
+ CNode() : ImportantNode() { }
+
+ };
+
/* Match one specific character (/c/). */
- class CharNode : public ImportantNode {
+ class CharNode : public CNode {
public:
CharNode(uchar c) : c(c) { }
void follow(NodeCases& cases)
@@ -219,7 +228,7 @@
};
/* Match a set of characters (/[abc]/). */
- class CharSetNode : public ImportantNode {
+ class CharSetNode : public CNode {
public:
CharSetNode(Chars& chars) : chars(chars) { }
void follow(NodeCases& cases)
@@ -260,7 +269,7 @@
};
/* Match all except one character (/[^abc]/). */
- class NotCharSetNode : public ImportantNode {
+ class NotCharSetNode : public CNode {
public:
NotCharSetNode(Chars& chars) : chars(chars) { }
void follow(NodeCases& cases)
@@ -307,7 +316,7 @@
};
/* Match any character (/./). */
- class AnyCharNode : public ImportantNode {
+ class AnyCharNode : public CNode {
public:
AnyCharNode() { }
void follow(NodeCases& cases)
--
1.7.1
More information about the AppArmor
mailing list