public class org.finos.legend.pure.runtime.java.extension.external.json.shared.JsonUnitDeserialization extends org.finos.legend.pure.runtime.java.extension.external.shared.conversion.UnitConversion
{
public void <init>(org.finos.legend.pure.m.coreinstance.CoreInstance)
{
org.finos.legend.pure.runtime.java.extension.external.json.shared.JsonUnitDeserialization v;
org.finos.legend.pure.m.coreinstance.CoreInstance v;
v := @this: org.finos.legend.pure.runtime.java.extension.external.json.shared.JsonUnitDeserialization;
v := @parameter: org.finos.legend.pure.m.coreinstance.CoreInstance;
specialinvoke v.<org.finos.legend.pure.runtime.java.extension.external.shared.conversion.UnitConversion: void <init>(org.finos.legend.pure.m.coreinstance.CoreInstance)>(v);
return;
}
public org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Any apply(java.lang.Object, org.finos.legend.pure.runtime.java.extension.external.shared.conversion.ConversionContext)
{
org.finos.legend.pure.m.exception.PureExecutionException v, v, v, v, v;
org.finos.legend.pure.runtime.java.extension.external.shared.conversion.ObjectFactory v;
java.lang.ClassCastException v;
int v, v;
org.finos.legend.pure.runtime.java.extension.external.json.shared.JsonUnitDeserialization v;
java.lang.String v, v, v, v, v, v;
org.finos.legend.pure.m.coreinstance.SourceInformation v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Any v;
org.finos.legend.pure.m.coreinstance.CoreInstance v;
java.lang.Exception v, v;
java.lang.Class v;
java.lang.Object v, v, v, v, v, v, v, v;
org.finos.legend.pure.runtime.java.extension.external.shared.conversion.ConversionContext v;
v := @this: org.finos.legend.pure.runtime.java.extension.external.json.shared.JsonUnitDeserialization;
v := @parameter: java.lang.Object;
v := @parameter: org.finos.legend.pure.runtime.java.extension.external.shared.conversion.ConversionContext;
label:
v = virtualinvoke v.<org.json.simple.JSONObject: java.lang.Object get(java.lang.Object)>("unit");
v = virtualinvoke v.<org.json.simple.JSONArray: java.lang.Object get(int)>(0);
v = virtualinvoke v.<org.json.simple.JSONObject: java.lang.Object get(java.lang.Object)>("unitId");
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
v = virtualinvoke v.<org.json.simple.JSONArray: java.lang.Object get(int)>(0);
v = virtualinvoke v.<org.json.simple.JSONObject: java.lang.Object get(java.lang.Object)>("exponentValue");
label:
goto label;
label:
v := @caughtexception;
v = new org.finos.legend.pure.m.exception.PureExecutionException;
specialinvoke v.<org.finos.legend.pure.m.exception.PureExecutionException: void <init>(java.lang.String,java.lang.Throwable)>("Mal-formatted Json for unit.", v);
throw v;
label:
v = virtualinvoke v.<org.json.simple.JSONArray: int size()>();
if v == 1 goto label;
v = new org.finos.legend.pure.m.exception.PureExecutionException;
specialinvoke v.<org.finos.legend.pure.m.exception.PureExecutionException: void <init>(java.lang.String)>("Currently composite units are not supported.");
throw v;
label:
v = virtualinvoke v.<java.lang.Number: int intValue()>();
if v == 1 goto label;
v = new org.finos.legend.pure.m.exception.PureExecutionException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Number)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Currently non-one exponent for unit is not supported. Got: \u.");
specialinvoke v.<org.finos.legend.pure.m.exception.PureExecutionException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.json.simple.JSONObject: java.lang.Object get(java.lang.Object)>("value");
label:
goto label;
label:
v := @caughtexception;
v = new org.finos.legend.pure.m.exception.PureExecutionException;
v = virtualinvoke v.<org.json.simple.JSONObject: java.lang.Object get(java.lang.Object)>("value");
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Value from unitValue field must be of Number type, getting \u type instead.");
specialinvoke v.<org.finos.legend.pure.m.exception.PureExecutionException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
v = virtualinvoke v.<org.finos.legend.pure.runtime.java.extension.external.json.shared.JsonDeserializationContext: org.finos.legend.pure.runtime.java.extension.external.shared.conversion.ObjectFactory getObjectFactory()>();
v = v.<org.finos.legend.pure.runtime.java.extension.external.json.shared.JsonUnitDeserialization: org.finos.legend.pure.m.coreinstance.CoreInstance type>;
v = interfaceinvoke v.<org.finos.legend.pure.runtime.java.extension.external.shared.conversion.ObjectFactory: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Any newUnitInstance(org.finos.legend.pure.m.coreinstance.CoreInstance,java.lang.String,java.lang.Number)>(v, v, v);
label:
return v;
label:
v := @caughtexception;
v = new org.finos.legend.pure.m.exception.PureExecutionException;
v = virtualinvoke v.<org.finos.legend.pure.runtime.java.extension.external.json.shared.JsonDeserializationContext: org.finos.legend.pure.m.coreinstance.SourceInformation getSourceInformation()>();
v = virtualinvoke v.<org.finos.legend.pure.runtime.java.extension.external.json.shared.JsonUnitDeserialization: java.lang.String pureTypeAsString()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Could not create new instance of \u0001");
specialinvoke v.<org.finos.legend.pure.m.exception.PureExecutionException: void <init>(org.finos.legend.pure.m.coreinstance.SourceInformation,java.lang.String,java.lang.Throwable)>(v, v, v);
throw v;
catch java.lang.Exception from label to label with label;
catch java.lang.ClassCastException from label to label with label;
catch java.lang.Exception from label to label with label;
}
}