CONSTANT_NAMESPACE_PRIVATE=0x05,
} contant_type_t;
+#define NS_TYPE(x) ((x) == 0x08 || (x) == 0x16 || (x) == 0x17 || (x) == 0x18 || (x) == 0x19 || (x) == 0x1a || (x) == 0x05)
+
struct _constant {
+ int type;
union {
+ string_t* s;
+ namespace_t*ns;
double f;
int i;
unsigned int u;
- string_t* s;
- namespace_t*ns;
};
- int type;
};
+constant_t* constant_clone();
constant_t* constant_new_int(int x);
constant_t* constant_new_uint(unsigned int x);
constant_t* constant_new_float(double x);
RTQNAMEA=0x10,
RTQNAMELA=0x12,
MULTINAMEA=0x0E,
- MULTINAMELA=0x1C
+ MULTINAMELA=0x1C,
+ POSTFIXTYPE=0x1D
} multiname_type_t;
char* access2str(int type);
struct _namespace {
U8 access;
- char*name;
+ const char*name;
};
struct _namespace_set {
namespace_list_t*namespaces;
/* creation */
namespace_t* namespace_new(U8 access, const char*name);
+namespace_t* namespace_new_namespace(const char*name);
namespace_t* namespace_new_package(const char*name);
namespace_t* namespace_new_packageinternal(const char*name);
namespace_t* namespace_new_protected(const char*name);