add support for template_extmode, ie, the emitonlychildren feature
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6804 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
77a6f33d98
commit
b644501be6
3 changed files with 30 additions and 22 deletions
|
|
@ -1439,7 +1439,7 @@ public:
|
|||
}
|
||||
|
||||
Swig_warning(WARN_RUBY_WRONG_NAME, input_file, line_number,
|
||||
"Wrong %s name\n", reason);
|
||||
"Wrong %s name %s\n", reason, name);
|
||||
|
||||
return name;
|
||||
}
|
||||
|
|
@ -1505,22 +1505,24 @@ public:
|
|||
* ----------------------------------------------------------------------------- */
|
||||
|
||||
virtual int classDeclaration(Node *n) {
|
||||
String *name = Getattr(n,"name");
|
||||
String *symname = Getattr(n,"sym:name");
|
||||
String *tdname = Getattr(n,"tdname");
|
||||
|
||||
name = tdname ? tdname : name;
|
||||
String *namestr = SwigType_namestr(name);
|
||||
klass = RCLASS(classes, Char(namestr));
|
||||
if (!klass) {
|
||||
klass = new RClass();
|
||||
String *valid_name = NewString(symname ? symname : namestr);
|
||||
validate_const_name(Char(valid_name), "class");
|
||||
klass->set_name(namestr, symname, valid_name);
|
||||
SET_RCLASS(classes, Char(namestr), klass);
|
||||
Delete(valid_name);
|
||||
}
|
||||
Delete(namestr);
|
||||
if (!Getattr(n,"feature:onlychildren")) {
|
||||
String *name = Getattr(n,"name");
|
||||
String *symname = Getattr(n,"sym:name");
|
||||
String *tdname = Getattr(n,"tdname");
|
||||
|
||||
name = tdname ? tdname : name;
|
||||
String *namestr = SwigType_namestr(name);
|
||||
klass = RCLASS(classes, Char(namestr));
|
||||
if (!klass) {
|
||||
klass = new RClass();
|
||||
String *valid_name = NewString(symname ? symname : namestr);
|
||||
validate_const_name(Char(valid_name), "class");
|
||||
klass->set_name(namestr, symname, valid_name);
|
||||
SET_RCLASS(classes, Char(namestr), klass);
|
||||
Delete(valid_name);
|
||||
}
|
||||
Delete(namestr);
|
||||
}
|
||||
return Language::classDeclaration(n);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue