aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/qregisters.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/qregisters.h')
-rw-r--r--src/qregisters.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/qregisters.h b/src/qregisters.h
index 1a44d8f..d050a84 100644
--- a/src/qregisters.h
+++ b/src/qregisters.h
@@ -259,6 +259,25 @@ public:
* Command states
*/
+/*
+ * Super class for states accepting Q-Register specifications
+ */
+class StateExpectQReg : public State {
+ bool got_local;
+
+public:
+ StateExpectQReg();
+
+private:
+ State *custom(gchar chr) throw (Error);
+
+protected:
+ /*
+ * FIXME: would be nice to pass reg as reference
+ */
+ virtual State *got_register(QRegister *reg) throw (Error) = 0;
+};
+
class StatePushQReg : public StateExpectQReg {
private:
State *got_register(QRegister *reg) throw (Error);