diff options
Diffstat (limited to 'Tools/bgen')
-rw-r--r-- | Tools/bgen/bgen/bgenType.py | 12 | ||||
-rw-r--r-- | Tools/bgen/bgen/bgenVariable.py | 5 |
2 files changed, 14 insertions, 3 deletions
diff --git a/Tools/bgen/bgen/bgenType.py b/Tools/bgen/bgen/bgenType.py index 9d5b4f8..2f0bc57 100644 --- a/Tools/bgen/bgen/bgenType.py +++ b/Tools/bgen/bgen/bgenType.py @@ -24,11 +24,16 @@ class Type: Example: int.declare('spam') prints "int spam;" """ + Output("%s;", self.getDeclaration(name, reference)) + + def getDeclaration(self, name, reference=False): + """Return a string declaring a variable or argument, without + any syntactic adornment""" if reference: - Output("%s& %s;", self.typeName, name) + return "%s& %s" % (self.typeName, name) else: - Output("%s %s;", self.typeName, name) - + return "%s %s" % (self.typeName, name) + def getargs(self): return self.getargsFormat(), self.getargsArgs() @@ -72,6 +77,7 @@ class Type: Default is to call passInput(). """ return self.passInput(name) + def errorCheck(self, name): """Check for an error returned in the variable. diff --git a/Tools/bgen/bgen/bgenVariable.py b/Tools/bgen/bgen/bgenVariable.py index 36c287d..a71d0f5 100644 --- a/Tools/bgen/bgen/bgenVariable.py +++ b/Tools/bgen/bgen/bgenVariable.py @@ -43,6 +43,11 @@ class Variable: self.type.declare(self.name, reference=True) elif self.flags != SelfMode: self.type.declare(self.name) + + def getDeclaration(self): + """Return the unadorned declaration of the variable, + suitable for use in a formal parameter list.""" + return self.type.getDeclaration(self.name) def getargsFormat(self): """Call the type's getargsFormatmethod.""" |