#ifndef __SCC_PPROC_EXPAND_H__ #define __SCC_PPROC_EXPAND_H__ #include #include #include #include typedef struct { scc_pproc_macro_table_t *macro_table; scc_pproc_macro_table_t *expanded_set; scc_lexer_tok_ring_t *input; scc_lexer_tok_vec_t output; int need_rescan; } scc_pproc_expand_t; static inline scc_lexer_tok_ring_t scc_lexer_array_to_ring(scc_lexer_tok_vec_t *array) { scc_lexer_tok_ring_t ret; scc_ring_by_buffer(ret, array->data, array->size); return ret; } void scc_pproc_expand_macro(scc_pproc_expand_t *expand_ctx); #endif /* __SCC_PPROC_EXPAND_H__ */