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 fc889d17ed3b1770aadf7f9ceacf4e3ed2eb38f8..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
@@
-15,18
+15,37
@@
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ * SPDX-License-Identifier: AGPL-3.0-or-later
*/
#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 int (*Directive_handler) (const char *directive_args, CParser* parser);
-typedef struct {
- const char name[16];
- Directive_handler handler;
+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 */