ext/rbs_extension/ruby_objs.c in rbs-3.0.0.dev.1 vs ext/rbs_extension/ruby_objs.c in rbs-3.0.0.dev.2
- old
+ new
@@ -338,21 +338,21 @@
1,
&args
);
}
-VALUE rbs_ast_decl_alias(VALUE name, VALUE type_params, VALUE type, VALUE annotations, VALUE location, VALUE comment) {
+VALUE rbs_ast_decl_type_alias(VALUE name, VALUE type_params, VALUE type, VALUE annotations, VALUE location, VALUE comment) {
VALUE args = rb_hash_new();
rb_hash_aset(args, ID2SYM(rb_intern("name")), name);
rb_hash_aset(args, ID2SYM(rb_intern("type_params")), type_params);
rb_hash_aset(args, ID2SYM(rb_intern("type")), type);
rb_hash_aset(args, ID2SYM(rb_intern("annotations")), annotations);
rb_hash_aset(args, ID2SYM(rb_intern("location")), location);
rb_hash_aset(args, ID2SYM(rb_intern("comment")), comment);
return CLASS_NEW_INSTANCE(
- RBS_AST_Declarations_Alias,
+ RBS_AST_Declarations_TypeAlias,
1,
&args
);
}
@@ -400,10 +400,38 @@
1,
&args
);
}
+VALUE rbs_ast_decl_class_alias(VALUE new_name, VALUE old_name, VALUE location, VALUE comment) {
+ VALUE args = rb_hash_new();
+ rb_hash_aset(args, ID2SYM(rb_intern("new_name")), new_name);
+ rb_hash_aset(args, ID2SYM(rb_intern("old_name")), old_name);
+ rb_hash_aset(args, ID2SYM(rb_intern("location")), location);
+ rb_hash_aset(args, ID2SYM(rb_intern("comment")), comment);
+
+ return CLASS_NEW_INSTANCE(
+ RBS_AST_Declarations_ClassAlias,
+ 1,
+ &args
+ );
+}
+
+VALUE rbs_ast_decl_module_alias(VALUE new_name, VALUE old_name, VALUE location, VALUE comment) {
+ VALUE args = rb_hash_new();
+ rb_hash_aset(args, ID2SYM(rb_intern("new_name")), new_name);
+ rb_hash_aset(args, ID2SYM(rb_intern("old_name")), old_name);
+ rb_hash_aset(args, ID2SYM(rb_intern("location")), location);
+ rb_hash_aset(args, ID2SYM(rb_intern("comment")), comment);
+
+ return CLASS_NEW_INSTANCE(
+ RBS_AST_Declarations_ModuleAlias,
+ 1,
+ &args
+ );
+}
+
VALUE rbs_ast_members_method_definition_overload(VALUE annotations, VALUE method_type) {
VALUE args = rb_hash_new();
rb_hash_aset(args, ID2SYM(rb_intern("annotations")), annotations);
rb_hash_aset(args, ID2SYM(rb_intern("method_type")), method_type);
@@ -533,5 +561,31 @@
RBS_AST_Declarations_Class,
1,
&kwargs
);
}
+
+VALUE rbs_ast_directives_use(VALUE clauses, VALUE location) {
+ VALUE kwargs = rb_hash_new();
+ rb_hash_aset(kwargs, ID2SYM(rb_intern("clauses")), clauses);
+ rb_hash_aset(kwargs, ID2SYM(rb_intern("location")), location);
+
+ return CLASS_NEW_INSTANCE(RBS_AST_Directives_Use, 1, &kwargs);
+}
+
+VALUE rbs_ast_directives_use_single_clause(VALUE type_name, VALUE new_name, VALUE location) {
+ VALUE kwargs = rb_hash_new();
+ rb_hash_aset(kwargs, ID2SYM(rb_intern("type_name")), type_name);
+ rb_hash_aset(kwargs, ID2SYM(rb_intern("new_name")), new_name);
+ rb_hash_aset(kwargs, ID2SYM(rb_intern("location")), location);
+
+ return CLASS_NEW_INSTANCE(RBS_AST_Directives_Use_SingleClause, 1, &kwargs);
+}
+
+VALUE rbs_ast_directives_use_wildcard_clause(VALUE namespace, VALUE location) {
+ VALUE kwargs = rb_hash_new();
+ rb_hash_aset(kwargs, ID2SYM(rb_intern("namespace")), namespace);
+ rb_hash_aset(kwargs, ID2SYM(rb_intern("location")), location);
+
+ return CLASS_NEW_INSTANCE(RBS_AST_Directives_Use_WildcardClause, 1, &kwargs);
+}
+