blob: a7bbacc96d9574e34419baebad989d3ea9297589 [file] [log] [blame]
#ifndef __SCOPE_H__
#define __SCOPE_H__
#include "string_cache.h"
#include <vector>
struct sc_scope{
STRING_CACHE *defparam_sc;
STRING_CACHE *param_sc;
};
sc_scope *new_sc_scope();
void move_sc_scope_items(sc_scope **source, sc_scope *destination);
void free_sc_scope(sc_scope **to_free_ref, STRING_CACHE **param, STRING_CACHE **defparam);
extern sc_scope *current_scope;
extern std::vector<sc_scope *> scope_stack;
sc_scope *pop_scope();
void merge_top_scopes();
void push_scope();
#endif