def renderSpecialOperations(out, members): stringifier = None getter_operations = [] for member in members: if isinstance(member, pywidl.Attribute) and member.stringifier: assert (not stringifier) stringifier = member if isinstance(member, pywidl.Operation): assert (not member.setter) assert (not member.creator) assert (not member.deleter) assert (not member.legacycaller) assert (not member.stringifier) if member.getter: getter_operations.append(member) if stringifier: print >> out print >> out, " operator const char *();" if getter_operations: print >> out for operation in getter_operations: assert (len(operation.arguments) == 1) print >>out, " %s %s;" % ( \ emitType(operation.return_type), getterOperationSignature(operation)) if stringifier \ and isStringType(operation.return_type) \ and isNumeralArgument(operation.arguments[0]): print >>out, " const char * operator[](int %s) const;" % \ operation.arguments[0].name
def renderSpecialOperations(out, members): stringifier = None getter_operations = [] for member in members: if isinstance(member, pywidl.Attribute) and member.stringifier: assert(not stringifier) stringifier = member if isinstance(member, pywidl.Operation): assert(not member.setter) assert(not member.creator) assert(not member.deleter) assert(not member.legacycaller) assert(not member.stringifier) if member.getter: getter_operations.append(member) if stringifier: print >>out print >>out, " operator const char *();" if getter_operations: print >>out for operation in getter_operations: assert(len(operation.arguments) == 1) print >>out, " %s %s;" % ( \ emitType(operation.return_type), getterOperationSignature(operation)) if stringifier \ and isStringType(operation.return_type) \ and isNumeralArgument(operation.arguments[0]): print >>out, " const char * operator[](int %s) const;" % \ operation.arguments[0].name
def renderOperation(out, operation): assert (not operation.extended_attributes) assert (not operation.stringifier) assert (not operation.static) assert (not operation.setter) assert (not operation.creator) assert (not operation.deleter) assert (not operation.legacycaller) print >>out, " %s %s;" % ( \ emitType(operation.return_type), operationSignature(operation))
def renderOperation(out, operation): assert(not operation.extended_attributes) assert(not operation.stringifier) assert(not operation.static) assert(not operation.setter) assert(not operation.creator) assert(not operation.deleter) assert(not operation.legacycaller) print >>out, " %s %s;" % ( \ emitType(operation.return_type), operationSignature(operation))
def renderAttribute(out, interface, attribute, definitions): assert(not attribute.inherit) print >>out, " %s %s;" % ( \ emitType(attribute.type), attributeGetterSignature(attribute)) if not attribute.readonly: print >>out, " void %s;" % attributeSetterSignature(attribute) forwarded_attribute = attributeExtendedAttributes(attribute, definitions) if forwarded_attribute: print >>out print >>out, " void %s;" % attributeSetterSignature(forwarded_attribute)
def renderAttribute(out, interface, attribute, definitions): assert (not attribute.inherit) print >>out, " %s %s;" % ( \ emitType(attribute.type), attributeGetterSignature(attribute)) if not attribute.readonly: print >> out, " void %s;" % attributeSetterSignature(attribute) forwarded_attribute = attributeExtendedAttributes(attribute, definitions) if forwarded_attribute: print >> out print >> out, " void %s;" % attributeSetterSignature( forwarded_attribute)
def renderConst(out, const): assert (not const.extended_attributes) print >>out, " static %s %s;" % ( \ emitType(const.type), const.name)
def renderTypedef(out, typedef): assert (not typedef.extended_attributes) assert (not typedef.type_extended_attributes) print >> out, "typedef %s %s;" % (emitType(typedef.type), typedef.name)
def renderConst(out, const): assert(not const.extended_attributes) print >>out, " static %s %s;" % ( \ emitType(const.type), const.name)
def renderTypedef(out, typedef): assert(not typedef.extended_attributes) assert(not typedef.type_extended_attributes) print >>out, "typedef %s %s;" % (emitType(typedef.type), typedef.name)