New default arg wrapping support method added

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6306 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
William S Fulton 2004-10-04 20:22:35 +00:00
commit 10c00a9e45
2 changed files with 27 additions and 2 deletions

View file

@ -169,7 +169,32 @@ String *ParmList_str(ParmList *p) {
}
/* ---------------------------------------------------------------------
* ParmList_str()
* ParmList_str_defaultargs()
*
* Generates a string of parameters including default arguments
* ---------------------------------------------------------------------- */
String *ParmList_str_defaultargs(ParmList *p) {
String *out;
String *value;
SwigType *t;
out = NewString("");
while(p) {
t = Getattr(p,"type");
Printf(out,"%s", SwigType_str(t,Getattr(p,"name")));
value = Getattr(p,"value");
if (value)
Printf(out,"=%s", value);
p = nextSibling(p);
if (p)
Printf(out,",");
}
return out;
}
/* ---------------------------------------------------------------------
* ParmList_protostr()
*
* Generate a prototype string.
* ---------------------------------------------------------------------- */

View file

@ -324,6 +324,7 @@ extern int ParmList_len(ParmList *);
extern int ParmList_numarg(ParmList *);
extern int ParmList_numrequired(ParmList *);
extern String *ParmList_str(ParmList *);
extern String *ParmList_str_defaultargs(ParmList *);
extern String *ParmList_protostr(ParmList *);
/* --- Parse tree support --- */
@ -437,7 +438,6 @@ extern void Swig_error_msg_format(ErrorMessageFormat format);
/* --- C Wrappers --- */
extern String *Swig_cparm_name(Parm *p, int i);
extern String *Swig_clocal(SwigType *t, String_or_char *name, String_or_char *value);
extern String *Swig_wrapped_var_type(SwigType *t);
extern int Swig_cargs(Wrapper *w, ParmList *l);
extern String *Swig_cresult(SwigType *t, const String_or_char *name, const String_or_char *decl);