blob: 1c5268295533ed57831919eb1e17ff6089e37651 [file] [log] [blame]
H. Peter Anvind7ed89e2002-04-30 20:52:08 +00001/* preproc.h header file for preproc.c
2 *
3 * The Netwide Assembler is copyright (C) 1996 Simon Tatham and
4 * Julian Hall. All rights reserved. The software is
Beroset095e6a22007-12-29 09:44:23 -05005 * redistributable under the license given in the file "LICENSE"
H. Peter Anvind7ed89e2002-04-30 20:52:08 +00006 * distributed in the NASM archive.
7 */
8
9#ifndef NASM_PREPROC_H
10#define NASM_PREPROC_H
11
H. Peter Anvin4169a472007-09-12 01:29:43 +000012#include "pptok.h"
13
14extern const char * const pp_directives[];
H. Peter Anvin72edbb82008-06-19 16:00:04 -070015extern const int pp_directives_len[];
H. Peter Anvin4169a472007-09-12 01:29:43 +000016
H. Peter Anvincfb71762008-06-20 15:20:16 -070017/* Pointer to a macro chain */
H. Peter Anvincda81632008-06-21 15:15:40 -070018typedef const char macros_t;
H. Peter Anvincfb71762008-06-20 15:20:16 -070019
H. Peter Anvin4169a472007-09-12 01:29:43 +000020enum preproc_token pp_token_hash(const char *token);
Keith Kaniosa6dfa782007-04-13 16:47:53 +000021void pp_include_path(char *);
Keith Kaniosa6dfa782007-04-13 16:47:53 +000022void pp_pre_include(char *);
23void pp_pre_define(char *);
24void pp_pre_undefine(char *);
25void pp_runtime(char *);
H. Peter Anvincfb71762008-06-20 15:20:16 -070026void pp_extra_stdmac(const macros_t *);
H. Peter Anvin6768eb72002-04-30 20:52:26 +000027
H. Peter Anvind7ed89e2002-04-30 20:52:08 +000028#endif