public class org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr extends org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilder implements org.finos.legend.engine.protocol.pure.v.model.valueSpecification.ValueSpecificationVisitor
{
private final org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context;
private final org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext processingContext;
public void <init>(org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext, org.eclipse.collections.api.list.MutableList, org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext v;
org.eclipse.collections.api.list.MutableList v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v := @parameter: org.eclipse.collections.api.list.MutableList;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext;
specialinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilder: void <init>(org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,org.eclipse.collections.api.list.MutableList,org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)>(v, v, v);
v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context> = v;
v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext processingContext> = v;
return;
}
public org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.ValueSpecification visit(org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.PackageableElementPtr)
{
org.finos.legend.engine.protocol.pure.v.model.context.EngineErrorType v;
org.eclipse.collections.api.block.predicate.Predicate v;
org.finos.legend.pure.generated.Root_meta_pure_metamodel_valuespecification_InstanceValue_Impl v, v;
boolean v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement[] v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v, v, v, v, v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Class v, v, v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v, v, v, v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.multiplicity.Multiplicity v, v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v, v, v, v, v, v, v, v, v;
org.finos.legend.engine.shared.core.operational.errorManagement.EngineException v;
org.eclipse.collections.api.block.function.Function v;
org.eclipse.collections.impl.list.mutable.FastList v, v;
org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.PackageableElementPtr v;
int v, v;
java.lang.String v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.CompilerExtensions v;
org.finos.legend.pure.generated.Root_meta_pure_metamodel_type_generics_GenericType_Impl v;
org.finos.legend.pure.m.coreinstance.SourceInformation v, v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Type v;
org.finos.legend.pure.generated.Root_meta_core_runtime_Runtime[] v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue v, v, v, v, v, v;
org.eclipse.collections.api.list.ImmutableList v, v, v;
java.lang.Object v;
org.finos.legend.pure.generated.Root_meta_core_runtime_Runtime v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.PackageableElementPtr;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.PackageableElementPtr: java.lang.String fullPath>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.PackageableElementPtr: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement resolvePackageableElement(java.lang.String,org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v, v);
v = v instanceof org.finos.legend.pure.generated.Root_meta_pure_runtime_PackageableRuntime;
if v == 0 goto label;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.PackageableElementPtr: java.lang.String fullPath>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.pure.generated.Root_meta_core_runtime_Runtime resolveRuntime(java.lang.String)>(v);
v = new org.finos.legend.pure.generated.Root_meta_pure_metamodel_type_generics_GenericType_Impl;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context>;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel pureModel>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Class getClass(java.lang.String)>("meta::pure::metamodel::type::generics::GenericType");
specialinvoke v.<org.finos.legend.pure.generated.Root_meta_pure_metamodel_type_generics_GenericType_Impl: void <init>(java.lang.String,org.finos.legend.pure.m.coreinstance.SourceInformation,org.finos.legend.pure.m.coreinstance.CoreInstance)>("", null, v);
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context>;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel pureModel>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Type getType(java.lang.String)>("meta::core::runtime::Runtime");
v = virtualinvoke v.<org.finos.legend.pure.generated.Root_meta_pure_metamodel_type_generics_GenericType_Impl: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType _rawType(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Type)>(v);
v = new org.finos.legend.pure.generated.Root_meta_pure_metamodel_valuespecification_InstanceValue_Impl;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.PackageableElementPtr: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.SourceInformationHelper: org.finos.legend.pure.m.coreinstance.SourceInformation toM3SourceInformation(org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v);
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context>;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel pureModel>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Class getClass(java.lang.String)>("meta::pure::metamodel::valuespecification::InstanceValue");
specialinvoke v.<org.finos.legend.pure.generated.Root_meta_pure_metamodel_valuespecification_InstanceValue_Impl: void <init>(java.lang.String,org.finos.legend.pure.m.coreinstance.SourceInformation,org.finos.legend.pure.m.coreinstance.CoreInstance)>("", v, v);
v = virtualinvoke v.<org.finos.legend.pure.generated.Root_meta_pure_metamodel_valuespecification_InstanceValue_Impl: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue _genericType(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType)>(v);
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context>;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel pureModel>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.multiplicity.Multiplicity getMultiplicity(java.lang.String)>("one");
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue _multiplicity(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.multiplicity.Multiplicity)>(v);
v = newarray (org.finos.legend.pure.generated.Root_meta_core_runtime_Runtime)[1];
v[0] = v;
v = staticinvoke <org.eclipse.collections.impl.list.mutable.FastList: org.eclipse.collections.impl.list.mutable.FastList newListWith(java.lang.Object[])>(v);
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue _values(org.eclipse.collections.api.RichIterable)>(v);
return v;
label:
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.CompilerExtensions getCompilerExtensions()>();
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.CompilerExtensions: org.eclipse.collections.api.list.ImmutableList getExtraValueSpecificationBuilderForFuncExpr()>();
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr$lambda_visit_8cbe998f_1__171: org.eclipse.collections.api.block.function.Function bootstrap$(org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr,org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement)>(v, v);
v = interfaceinvoke v.<org.eclipse.collections.api.list.ImmutableList: org.eclipse.collections.api.list.ImmutableList collect(org.eclipse.collections.api.block.function.Function)>(v);
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr$nonNull__172: org.eclipse.collections.api.block.predicate.Predicate bootstrap$()>();
v = interfaceinvoke v.<org.eclipse.collections.api.list.ImmutableList: org.eclipse.collections.api.list.ImmutableList select(org.eclipse.collections.api.block.predicate.Predicate)>(v);
v = interfaceinvoke v.<org.eclipse.collections.api.list.ImmutableList: int size()>();
if v != 0 goto label;
v = new org.finos.legend.pure.generated.Root_meta_pure_metamodel_valuespecification_InstanceValue_Impl;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.PackageableElementPtr: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.SourceInformationHelper: org.finos.legend.pure.m.coreinstance.SourceInformation toM3SourceInformation(org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v);
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context>;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel pureModel>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Class getClass(java.lang.String)>("meta::pure::metamodel::valuespecification::InstanceValue");
specialinvoke v.<org.finos.legend.pure.generated.Root_meta_pure_metamodel_valuespecification_InstanceValue_Impl: void <init>(java.lang.String,org.finos.legend.pure.m.coreinstance.SourceInformation,org.finos.legend.pure.m.coreinstance.CoreInstance)>("", v, v);
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType _classifierGenericType()>();
v = virtualinvoke v.<org.finos.legend.pure.generated.Root_meta_pure_metamodel_valuespecification_InstanceValue_Impl: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue _genericType(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType)>(v);
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilderForFuncExpr: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext context>;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel pureModel>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.multiplicity.Multiplicity getMultiplicity(java.lang.String)>("one");
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue _multiplicity(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.multiplicity.Multiplicity)>(v);
v = newarray (org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement)[1];
v[0] = v;
v = staticinvoke <org.eclipse.collections.impl.list.mutable.FastList: org.eclipse.collections.impl.list.mutable.FastList newListWith(java.lang.Object[])>(v);
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.valuespecification.InstanceValue _values(org.eclipse.collections.api.RichIterable)>(v);
return v;
label:
v = interfaceinvoke v.<org.eclipse.collections.api.list.ImmutableList: int size()>();
if v == 1 goto label;
v = new org.finos.legend.engine.shared.core.operational.errorManagement.EngineException;
v = v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.raw.PackageableElementPtr: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
v = <org.finos.legend.engine.protocol.pure.v.model.context.EngineErrorType: org.finos.legend.engine.protocol.pure.v.model.context.EngineErrorType COMPILATION>;
specialinvoke v.<org.finos.legend.engine.shared.core.operational.errorManagement.EngineException: void <init>(java.lang.String,org.finos.legend.engine.protocol.pure.v.model.SourceInformation,org.finos.legend.engine.protocol.pure.v.model.context.EngineErrorType)>("More than one handler found for the Packageable Element \'\'", v, v);
throw v;
label:
v = interfaceinvoke v.<org.eclipse.collections.api.list.ImmutableList: java.lang.Object get(int)>(0);
return v;
}
}