-int register_struct_type(GQuark struct_name, struct type_struct *struct_type,
- struct type_scope *scope);
-struct type_struct *lookup_struct_type(GQuark struct_name,
- struct type_scope *scope);
-int register_variant_type(GQuark variant_name,
- struct type_variant *variant_type,
- struct type_scope *scope);
-struct type_variant *lookup_variant_type(GQuark variant_name,
- struct type_scope *scope);
-int register_enum_type(GQuark enum_name, struct type_enum *enum_type,
- struct type_scope *scope);
-struct type_enum *lookup_enum_type(GQuark enum_name,
- struct type_scope *scope);
-
-struct type_scope *new_type_scope(struct type_scope *parent_scope);
-void free_type_scope(struct type_scope *scope);
+int register_struct_declaration(GQuark struct_name,
+ struct declaration_struct *struct_declaration,
+ struct declaration_scope *scope);
+struct declaration_struct *
+ lookup_struct_declaration(GQuark struct_name,
+ struct declaration_scope *scope);
+int register_variant_declaration(GQuark variant_name,
+ struct declaration_untagged_variant *untagged_variant_declaration,
+ struct declaration_scope *scope);
+struct declaration_untagged_variant *lookup_variant_declaration(GQuark variant_name,
+ struct declaration_scope *scope);
+int register_enum_declaration(GQuark enum_name,
+ struct declaration_enum *enum_declaration,
+ struct declaration_scope *scope);
+struct declaration_enum *
+ lookup_enum_declaration(GQuark enum_name,
+ struct declaration_scope *scope);