aboutsummaryrefslogtreecommitdiffhomepage
path: root/parser.h
diff options
context:
space:
mode:
authorGravatar ridiculousfish <corydoras@ridiculousfish.com>2012-01-16 12:10:08 -0800
committerGravatar ridiculousfish <corydoras@ridiculousfish.com>2012-01-16 12:10:08 -0800
commitfa796d668fb5b254ed9efe937fbb61b49836a1c1 (patch)
tree35ead684dda36cbc202beae846472cf5bb290552 /parser.h
parente4ee4ec3d1c464beaae1b92165d4fc5e979c1a4e (diff)
Get some basic function signatures right for new instanced parser
Diffstat (limited to 'parser.h')
-rw-r--r--parser.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/parser.h b/parser.h
index a9ab9c0f..615f6708 100644
--- a/parser.h
+++ b/parser.h
@@ -180,17 +180,31 @@ enum parser_error
CMDSUBST_ERROR,
};
+enum parser_type_t {
+ PARSER_TYPE_NONE,
+ PARSER_TYPE_GENERAL,
+ PARSER_TYPE_FUNCTIONS_ONLY,
+ PARSER_TYPE_COMPLETIONS_ONLY
+};
+
class parser_t {
private:
std::vector<block_t> blocks;
+ /* No copying allowed */
+ parser_t(const parser_t&);
+ parser_t& operator=(const parser_t&);
+
public:
+ /** Create a parser of the given type */
+ parser_t(enum parser_type_t type);
+
/** The current innermost block */
- const block_t &current_block(void) const;
+ block_t *current_block;
/** Global event blocks */
- const block_t &global_event_block(void) const;
+ event_block_t *global_event_block;
/** Current block level io redirections */
io_data_t &block_io(void) const;