def emit_typecheck_expression(klass, name): try: cog.out(CONVERSIONS[klass].typecheck_format % {'name': name}) except (TypeError, KeyError): if klass.isPrimitive(): raise Exception("You need a converter for %s" % klass.getName()) cog.out('%s.getProxyType() != null ' '&& %s.getProxyType() == %s.class' % (name, name, Class.getSimpleName(klass)))
def emit_java_expression(klass, name): try: cog.out(CONVERSIONS[klass].to_java_format % name) except KeyError: if klass.isPrimitive(): raise Exception("You need a converter for %s" % klass.getName()) simpleName = Class.getName(klass) if klass.isArray(): simpleName = Class.getSimpleName(klass) if simpleName != 'java.lang.Object': cog.out('(%s)' % simpleName) cog.out('%s.__tojava__(%s.class)' % (name, simpleName))