projects
/
zilutils.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Added ability to define multiple functions (without parameters) and
[zilutils.git]
/
zilasm
/
directives.h
diff --git
a/zilasm/directives.h
b/zilasm/directives.h
index 5b5982ebf96ba7a30253e57a68c2b36e32da5997..9f66060c1e16e4d550697dd7c1ad105a1e7f1940 100644
(file)
--- a/
zilasm/directives.h
+++ b/
zilasm/directives.h
@@
-1,7
+1,7
@@
/*
* directives.h -- part of ZilUtils/ZilAsm
*
/*
* directives.h -- part of ZilUtils/ZilAsm
*
- * Copyright (C) 2016 Jason Self <j@jxself.org>
+ * Copyright (C) 2016
, 2020
Jason Self <j@jxself.org>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
@@
-22,13
+22,30
@@
#ifndef ZILASM_DIRECTIVES
#define ZILASM_DIRECTIVES 1
#ifndef ZILASM_DIRECTIVES
#define ZILASM_DIRECTIVES 1
-
typedef int (*Directive_handler)(const char *directive_args)
;
+
class CParser
;
-typedef struct {
- const char name[16];
- Directive_handler handler;
+typedef int (*Directive_handler) (const char *directive_args, CParser* parser);
+
+typedef struct
+{
+ const char name[16];
+ Directive_handler handler;
} Directive;
} Directive;
-Directive_handler directive_lookup(const char *name, unsigned namelen);
+extern int g_stopParsing;
+extern stack<FILE*> g_fileHandlers;
+
+
+class CDirectives
+{
+public:
+ CDirectives(CParser *parser);
+ Directive_handler directive_lookup(const char *name, unsigned namelen);
+private:
+ CParser *m_parser;
+
+ CDirectives();
+ //int insert_handler(const char *args);
+};
#endif /* ifndef ZILASM_DIRECTIVES */
#endif /* ifndef ZILASM_DIRECTIVES */