public class org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperFunctionBuilder extends java.lang.Object
{
public void <init>()
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperFunctionBuilder v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperFunctionBuilder;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static void processFunctionSuites(org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.Function, org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext, org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)
{
org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.Function v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition v;
org.eclipse.collections.api.block.function.Function v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v;
org.eclipse.collections.api.list.MutableList v;
java.util.List v, v, v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
boolean v;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.Function;
v := @parameter: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.Function: java.util.List tests>;
if v == null goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.Function: java.util.List tests>;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.Function: java.util.List tests>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.Function: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.test.TestBuilderHelper: void validateTestSuiteIdsList(java.util.List,org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v, v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.Function: java.util.List tests>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperFunctionBuilder$lambda_processFunctionSuites_310c8884_1__2574: org.eclipse.collections.api.block.function.Function bootstrap$(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)>(v, v, v);
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList collect(java.util.List,org.eclipse.collections.api.block.function.Function)>(v, v);
interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition _tests(org.eclipse.collections.api.RichIterable)>(v);
label:
return;
}
static org.finos.legend.pure.m.coreinstance.meta.pure.test.Test buildFunctionTestSuites(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition, org.finos.legend.engine.protocol.pure.v.model.test.Test, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext, org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)
{
org.eclipse.collections.api.RichIterable v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Class v, v;
java.lang.Exception v;
org.finos.legend.pure.runtime.java.compiled.execution.CompiledExecutionSupport v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
org.finos.legend.engine.shared.core.operational.errorManagement.EngineException v, v, v, v;
org.eclipse.collections.api.block.function.Function v, v, v, v, v;
org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite v, v;
java.lang.String v, v, v, v, v, v, v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition v;
org.finos.legend.pure.m.coreinstance.SourceInformation v, v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTest v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite v;
org.finos.legend.engine.protocol.pure.v.model.context.EngineErrorType v, v, v, v;
org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest v, v;
org.eclipse.collections.api.list.MutableList v, v, v, v, v;
org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite_Impl v;
boolean v, v, v, v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v, v, v;
org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest_Impl v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v, v, v, v, v, v, v, v;
java.util.List v, v, v, v, v, v, v, v, v, v, v;
org.finos.legend.engine.protocol.pure.v.model.test.Test v;
int v, v, v;
java.lang.Object v;
v := @parameter: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.test.Test;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext;
v = v instanceof org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite;
if v == 0 goto label;
staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.test.TestBuilderHelper: void validateNonEmptySuite(org.finos.legend.engine.protocol.pure.v.model.test.TestSuite)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: java.util.List tests>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.test.TestBuilderHelper: void validateTestIds(java.util.List,org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v, v);
v = new org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite_Impl;
v = v.<org.finos.legend.engine.protocol.pure.v.model.test.Test: 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.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::legend::function::metamodel::FunctionTestSuite");
specialinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite_Impl: void <init>(java.lang.String,org.finos.legend.pure.m.coreinstance.SourceInformation,org.finos.legend.pure.m.coreinstance.CoreInstance)>("", v, v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: java.util.List testData>;
if v == null goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: java.util.List testData>;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: java.util.List testData>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperFunctionBuilder$lambda_buildFunctionTestSuites_759b5ce7_1__2578: org.eclipse.collections.api.block.function.Function bootstrap$()>();
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList collect(java.util.List,org.eclipse.collections.api.block.function.Function)>(v, v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.test.TestBuilderHelper: void validateIds(java.util.List,org.finos.legend.engine.protocol.pure.v.model.SourceInformation,java.lang.String)>(v, v, "Multiple test data found for stores");
label:
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.runtime.java.compiled.execution.CompiledExecutionSupport getExecutionSupport()>();
v = staticinvoke <org.finos.legend.pure.generated.core_pure_corefunctions_metaExtension: org.eclipse.collections.api.RichIterable Root_meta_pure_functions_meta_extractRuntimesFromFunctionDefinition_FunctionDefinition_1__Runtime_MANY_(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.FunctionDefinition,org.finos.legend.pure.m.execution.ExecutionSupport)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = new org.finos.legend.engine.shared.core.operational.errorManagement.EngineException;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: 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,java.lang.Throwable)>("Unable to extract runtime from function which test data is provided for. Test Data is only supported to be provided for runtimes", v, v, v);
throw v;
label:
v = interfaceinvoke v.<org.eclipse.collections.api.RichIterable: boolean isEmpty()>();
if v == 0 goto label;
v = new org.finos.legend.engine.shared.core.operational.errorManagement.EngineException;
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition: 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[])>("Function test data requires a function to have one runtime: No runtimes found in function.\u0001");
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: 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)>(v, v, v);
throw v;
label:
v = interfaceinvoke v.<org.eclipse.collections.api.RichIterable: int size()>();
if v <= 1 goto label;
v = new org.finos.legend.engine.shared.core.operational.errorManagement.EngineException;
v = interfaceinvoke v.<org.eclipse.collections.api.RichIterable: int size()>();
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,java.lang.String)>(v, 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[])>("Function test data requires a function to have one runtime. Found \u runtimes in function \u0001");
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: 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)>(v, v, v);
throw v;
label:
v = interfaceinvoke v.<org.eclipse.collections.api.RichIterable: java.lang.Object getOnly()>();
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: java.util.List testData>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperFunctionBuilder$lambda_buildFunctionTestSuites_e42fbae_1__2579: org.eclipse.collections.api.block.function.Function bootstrap$(org.finos.legend.pure.generated.Root_meta_core_runtime_Runtime,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)>(v, v, v);
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList collect(java.util.List,org.eclipse.collections.api.block.function.Function)>(v, v);
interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite _testData(org.eclipse.collections.api.RichIterable)>(v);
label:
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: java.lang.String id>;
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite _id(java.lang.String)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTestSuite: java.util.List tests>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperFunctionBuilder$lambda_buildFunctionTestSuites_49d5930f_1__2577: org.eclipse.collections.api.block.function.Function bootstrap$(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.function.ConcreteFunctionDefinition,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)>(v, v, v);
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList collect(java.util.List,org.eclipse.collections.api.block.function.Function)>(v, v);
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite _tests(org.eclipse.collections.api.RichIterable)>(v);
interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTestSuite _testable(org.finos.legend.pure.m.coreinstance.meta.pure.test.Testable)>(v);
return v;
label:
v = v instanceof org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTest;
if v == 0 goto label;
v = new org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest_Impl;
v = v.<org.finos.legend.engine.protocol.pure.v.model.test.Test: 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.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::legend::function::metamodel::FunctionTest");
specialinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest_Impl: void <init>(java.lang.String,org.finos.legend.pure.m.coreinstance.SourceInformation,org.finos.legend.pure.m.coreinstance.CoreInstance)>("", v, v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTest: java.lang.String id>;
v = virtualinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest_Impl: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest _id(java.lang.String)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTest: java.lang.String doc>;
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest _doc(java.lang.String)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTest: java.util.List parameters>;
if v == null goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTest: java.util.List parameters>;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTest: java.util.List parameters>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperFunctionBuilder$lambda_buildFunctionTestSuites_dc5b7346_1__2576: org.eclipse.collections.api.block.function.Function bootstrap$(org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)>(v);
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList collect(java.util.List,org.eclipse.collections.api.block.function.Function)>(v, v);
interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest _parameters(org.eclipse.collections.api.RichIterable)>(v);
label:
staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.test.TestBuilderHelper: void validateNonEmptyTest(org.finos.legend.engine.protocol.pure.v.model.test.AtomicTest)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTest: java.util.List assertions>;
v = interfaceinvoke v.<java.util.List: 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.test.Test: 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)>("Function test only support one assertion", v, v);
throw v;
label:
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.FunctionTest: java.util.List assertions>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperFunctionBuilder$lambda_buildFunctionTestSuites_8b760fe9_1__2575: org.eclipse.collections.api.block.function.Function bootstrap$(org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)>(v, v);
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList collect(java.util.List,org.eclipse.collections.api.block.function.Function)>(v, v);
interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_FunctionTest _assertions(org.eclipse.collections.api.RichIterable)>(v);
return v;
label:
return null;
catch java.lang.Exception from label to label with label;
}
private static org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_StoreTestData buildFunctionTestData(org.finos.legend.pure.generated.Root_meta_core_runtime_Runtime, org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.StoreTestData, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext, org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)
{
org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_StoreTestData_Impl v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.StoreTestData v;
org.eclipse.collections.api.block.function.Function v;
org.finos.legend.pure.m.coreinstance.meta.pure.store.Store v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.data.EmbeddedDataFirstPassBuilder v;
org.finos.legend.pure.generated.Root_meta_core_runtime_Connection v;
java.lang.String v;
boolean v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v, v;
org.finos.legend.pure.m.coreinstance.SourceInformation v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Class v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.StoreProviderPointer v;
java.lang.Exception v;
org.finos.legend.pure.runtime.java.compiled.execution.CompiledExecutionSupport v;
org.finos.legend.engine.protocol.pure.v.model.data.EmbeddedData v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
java.lang.Object v;
org.finos.legend.pure.generated.Root_meta_core_runtime_Runtime v;
v := @parameter: org.finos.legend.pure.generated.Root_meta_core_runtime_Runtime;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.StoreTestData;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext;
v = new org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_StoreTestData_Impl;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.StoreTestData: 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.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::legend::function::metamodel::StoreTestData");
specialinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_StoreTestData_Impl: void <init>(java.lang.String,org.finos.legend.pure.m.coreinstance.SourceInformation,org.finos.legend.pure.m.coreinstance.CoreInstance)>("", v, v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.StoreTestData: org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.StoreProviderPointer store>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.handlers.StoreProviderCompilerHelper: org.finos.legend.pure.m.coreinstance.meta.pure.store.Store getStoreFromStoreProviderPointers(org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.StoreProviderPointer,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)>(v, v);
label:
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.runtime.java.compiled.execution.CompiledExecutionSupport getExecutionSupport()>();
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_core_runtime_Runtime: org.finos.legend.pure.generated.Root_meta_core_runtime_Connection connectionByElement(java.lang.Object,org.finos.legend.pure.m.execution.ExecutionSupport)>(v, v);
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperFunctionBuilder$lambda_buildFunctionTestData_7466f86e_1__2580: org.eclipse.collections.api.block.function.Function bootstrap$()>();
staticinvoke <org.finos.legend.engine.shared.core.operational.Assert: void assertTrue(boolean,org.eclipse.collections.api.block.function.Function)>(v, v);
label:
goto label;
label:
v := @caughtexception;
label:
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.StoreTestData: org.finos.legend.engine.protocol.pure.v.model.data.EmbeddedData data>;
v = new org.finos.legend.engine.language.pure.compiler.toPureGraph.data.EmbeddedDataFirstPassBuilder;
specialinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.data.EmbeddedDataFirstPassBuilder: void <init>(org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext)>(v, v);
v = virtualinvoke v.<org.finos.legend.engine.protocol.pure.v.model.data.EmbeddedData: java.lang.Object accept(org.finos.legend.engine.protocol.pure.v.model.data.EmbeddedDataVisitor)>(v);
virtualinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_StoreTestData_Impl: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_StoreTestData _data(org.finos.legend.pure.generated.Root_meta_pure_data_EmbeddedData)>(v);
virtualinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_StoreTestData_Impl: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_StoreTestData _store(org.finos.legend.pure.m.coreinstance.meta.pure.store.Store)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.function.StoreTestData: java.lang.String doc>;
virtualinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_StoreTestData_Impl: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_StoreTestData _doc(java.lang.String)>(v);
return v;
catch java.lang.Exception from label to label with label;
}
private static org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_ParameterValue processFunctionTestParameterValue(org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ParameterValue, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
org.finos.legend.engine.protocol.pure.v.model.context.EngineErrorType v;
org.eclipse.collections.api.factory.list.MutableListFactory v;
org.eclipse.collections.api.list.MutableList v;
java.lang.String v, v, v;
boolean v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v;
org.finos.legend.pure.m.coreinstance.SourceInformation v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext v;
org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_ParameterValue_Impl v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilder v;
org.finos.legend.engine.protocol.pure.v.model.valueSpecification.ValueSpecification v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Class v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v, v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ParameterValue v;
org.eclipse.collections.api.list.ImmutableList v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
org.finos.legend.engine.shared.core.operational.errorManagement.EngineException v;
java.lang.Object v;
org.eclipse.collections.api.factory.list.ImmutableListFactory v;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ParameterValue;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = new org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_ParameterValue_Impl;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ParameterValue: 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.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::legend::function::metamodel::ParameterValue");
specialinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_ParameterValue_Impl: void <init>(java.lang.String,org.finos.legend.pure.m.coreinstance.SourceInformation,org.finos.legend.pure.m.coreinstance.CoreInstance)>("", v, v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ParameterValue: java.lang.String name>;
if v == null goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ParameterValue: java.lang.String name>;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
v = new org.finos.legend.engine.shared.core.operational.errorManagement.EngineException;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ParameterValue: 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)>("No associated parameter found for value.", v, v);
throw v;
label:
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ParameterValue: java.lang.String name>;
interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_ParameterValue: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_ParameterValue _name(java.lang.String)>(v);
v = <org.eclipse.collections.impl.factory.Lists: org.eclipse.collections.api.factory.list.ImmutableListFactory immutable>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ParameterValue: org.finos.legend.engine.protocol.pure.v.model.valueSpecification.ValueSpecification value>;
v = new org.finos.legend.engine.language.pure.compiler.toPureGraph.ValueSpecificationBuilder;
v = <org.eclipse.collections.impl.factory.Lists: org.eclipse.collections.api.factory.list.MutableListFactory mutable>;
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.MutableListFactory: org.eclipse.collections.api.list.MutableList empty()>();
v = new org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext;
specialinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.ProcessingContext: void <init>(java.lang.String)>("");
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 = virtualinvoke v.<org.finos.legend.engine.protocol.pure.v.model.valueSpecification.ValueSpecification: java.lang.Object accept(org.finos.legend.engine.protocol.pure.v.model.valueSpecification.ValueSpecificationVisitor)>(v);
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.ImmutableListFactory: org.eclipse.collections.api.list.ImmutableList 'with'(java.lang.Object)>(v);
interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_ParameterValue: org.finos.legend.pure.generated.Root_meta_legend_function_metamodel_ParameterValue _value(org.eclipse.collections.api.RichIterable)>(v);
return v;
}
}