public class org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler extends java.lang.Object
{
private final java.util.Map externalFormatExtensions;
private final org.eclipse.collections.impl.map.mutable.ConcurrentHashMap bindingIndex;
private final org.eclipse.collections.impl.map.mutable.ConcurrentHashMap srcSchemaIndex;
public void <init>(java.util.Map)
{
org.eclipse.collections.impl.map.mutable.ConcurrentHashMap v, v;
java.util.Map v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler;
v := @parameter: java.util.Map;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new org.eclipse.collections.impl.map.mutable.ConcurrentHashMap;
specialinvoke v.<org.eclipse.collections.impl.map.mutable.ConcurrentHashMap: void <init>()>();
v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: org.eclipse.collections.impl.map.mutable.ConcurrentHashMap bindingIndex> = v;
v = new org.eclipse.collections.impl.map.mutable.ConcurrentHashMap;
specialinvoke v.<org.eclipse.collections.impl.map.mutable.ConcurrentHashMap: void <init>()>();
v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: org.eclipse.collections.impl.map.mutable.ConcurrentHashMap srcSchemaIndex> = v;
v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: java.util.Map externalFormatExtensions> = v;
return;
}
public org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.Processor getProcessor()
{
java.util.List v;
java.util.function.BiFunction v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.Processor v;
java.util.function.BiConsumer v, v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler;
v = staticinvoke <java.util.Collections: java.util.List singletonList(java.lang.Object)>(class "Lorg/finos/legend/engine/protocol/pure/v1/model/packageableElement/externalFormat/ExternalFormatSchemaSet;");
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler$firstPass__9: java.util.function.BiFunction bootstrap$(org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler)>(v);
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler$secondPass__10: java.util.function.BiConsumer bootstrap$(org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler)>(v);
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler$thirdPass__11: java.util.function.BiConsumer bootstrap$(org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler)>(v);
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler$fourthPass__12: java.util.function.BiConsumer bootstrap$(org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler)>(v);
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.Processor: org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.Processor newProcessor(java.lang.Class,java.util.Collection,java.util.function.BiFunction,java.util.function.BiConsumer,java.util.function.BiConsumer,java.util.function.BiConsumer)>(class "Lorg/finos/legend/engine/protocol/pure/v1/model/packageableElement/externalFormat/Binding;", v, v, v, v, v);
return v;
}
public org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding getCompiledBinding(java.lang.String)
{
org.eclipse.collections.impl.map.mutable.ConcurrentHashMap v;
java.lang.Object v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler v;
java.lang.String v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler;
v := @parameter: java.lang.String;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: org.eclipse.collections.impl.map.mutable.ConcurrentHashMap bindingIndex>;
v = virtualinvoke v.<org.eclipse.collections.impl.map.mutable.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement firstPass(org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
org.eclipse.collections.impl.map.mutable.ConcurrentHashMap v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler v;
org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding v, v;
java.lang.String v, v, v, v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v, v, v;
org.finos.legend.pure.generated.Root_meta_pure_metamodel_type_generics_GenericType_Impl v;
org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding_Impl v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Class v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Type v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = new org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding_Impl;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String name>;
specialinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding_Impl: void <init>(java.lang.String)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String name>;
v = virtualinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding_Impl: org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding _name(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.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.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::external::format::shared::binding::Binding");
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 = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding: org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding _classifierGenericType(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType)>(v);
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel pureModel>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String _package>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String name>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: java.lang.String buildPackageString(java.lang.String,java.lang.String)>(v, v);
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: org.eclipse.collections.impl.map.mutable.ConcurrentHashMap bindingIndex>;
virtualinvoke v.<org.eclipse.collections.impl.map.mutable.ConcurrentHashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return v;
}
public void secondPass(org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
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_model_unit_ModelUnit v, v, v;
org.eclipse.collections.api.list.MutableList v, v;
org.eclipse.collections.api.RichIterable v;
org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding v;
boolean v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v, v, v, v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Class v, v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v, v;
java.util.List v, v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
org.finos.legend.engine.shared.core.operational.errorManagement.EngineException v;
org.finos.legend.pure.generated.Root_meta_external_format_shared_metamodel_SchemaSet v;
org.eclipse.collections.impl.map.mutable.ConcurrentHashMap v;
org.eclipse.collections.api.block.function.Function v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ModelUnit v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v;
org.finos.legend.pure.generated.Root_meta_pure_metamodel_type_generics_GenericType_Impl v;
org.finos.legend.pure.generated.Root_meta_pure_model_unit_ModelUnit_Impl v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.Type v;
java.lang.Object v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel pureModel>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String _package>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String name>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: java.lang.String buildPackageString(java.lang.String,java.lang.String)>(v, v);
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: org.eclipse.collections.impl.map.mutable.ConcurrentHashMap bindingIndex>;
v = virtualinvoke v.<org.eclipse.collections.impl.map.mutable.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String contentType>;
interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding: org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding _contentType(java.lang.String)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String schemaSet>;
if v == null goto label;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String schemaSet>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.HelperExternalFormat: org.finos.legend.pure.generated.Root_meta_external_format_shared_metamodel_SchemaSet getSchemaSet(java.lang.String,org.finos.legend.engine.protocol.pure.v.model.SourceInformation,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)>(v, v, v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String schemaId>;
if v == null goto label;
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_metamodel_SchemaSet: org.eclipse.collections.api.RichIterable _schemas()>();
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler$lambda_secondPass_3393f4f2_1__15: org.eclipse.collections.api.block.predicate.Predicate bootstrap$(org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding)>(v);
v = interfaceinvoke v.<org.eclipse.collections.api.RichIterable: boolean noneSatisfy(org.eclipse.collections.api.block.predicate.Predicate)>(v);
if v == 0 goto label;
v = new org.finos.legend.engine.shared.core.operational.errorManagement.EngineException;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String schemaId>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String schemaSet>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,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[])>("ID \'\u0001\' does not exist in SchemaSet \'\u0001\'");
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: 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.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding: org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding _schemaSet(org.finos.legend.pure.generated.Root_meta_external_format_shared_metamodel_SchemaSet)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String schemaId>;
interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding: org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding _schemaId(java.lang.String)>(v);
label:
v = new org.finos.legend.pure.generated.Root_meta_pure_model_unit_ModelUnit_Impl;
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::model::unit::ModelUnit");
specialinvoke v.<org.finos.legend.pure.generated.Root_meta_pure_model_unit_ModelUnit_Impl: void <init>(java.lang.String,org.finos.legend.pure.m.coreinstance.SourceInformation,org.finos.legend.pure.m.coreinstance.CoreInstance)>("", null, 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.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.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::pure::model::unit::ModelUnit");
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 = virtualinvoke v.<org.finos.legend.pure.generated.Root_meta_pure_model_unit_ModelUnit_Impl: org.finos.legend.pure.generated.Root_meta_pure_model_unit_ModelUnit _classifierGenericType(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.type.generics.GenericType)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ModelUnit modelUnit>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ModelUnit: java.util.List packageableElementIncludes>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler$lambda_secondPass_d06625b4_1__13: org.eclipse.collections.api.block.function.Function bootstrap$(org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding)>(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_pure_model_unit_ModelUnit: org.finos.legend.pure.generated.Root_meta_pure_model_unit_ModelUnit _packageableElementIncludes(org.eclipse.collections.api.RichIterable)>(v);
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ModelUnit modelUnit>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.domain.ModelUnit: java.util.List packageableElementExcludes>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler$lambda_secondPass_d06625b4_2__14: org.eclipse.collections.api.block.function.Function bootstrap$(org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding)>(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_pure_model_unit_ModelUnit: org.finos.legend.pure.generated.Root_meta_pure_model_unit_ModelUnit _packageableElementExcludes(org.eclipse.collections.api.RichIterable)>(v);
interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding: org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding _modelUnit(org.finos.legend.pure.generated.Root_meta_pure_model_unit_ModelUnit)>(v);
return;
}
public void thirdPass(org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
org.finos.legend.pure.generated.Root_meta_external_format_shared_metamodel_SchemaSet v, v, v;
org.eclipse.collections.impl.map.mutable.ConcurrentHashMap v;
org.finos.legend.engine.protocol.pure.v.model.context.EngineErrorType v, v;
org.eclipse.collections.api.block.predicate.Predicate v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler v;
org.eclipse.collections.api.RichIterable v;
java.lang.String v, v, v, v, v, v, v, v, v;
boolean v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v;
org.finos.legend.engine.external.shared.format.model.ExternalFormatExtension v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v, v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
org.finos.legend.engine.shared.core.operational.errorManagement.EngineException v, v;
java.lang.Object v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel pureModel>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String _package>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String name>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: java.lang.String buildPackageString(java.lang.String,java.lang.String)>(v, v);
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: org.eclipse.collections.impl.map.mutable.ConcurrentHashMap bindingIndex>;
v = virtualinvoke v.<org.eclipse.collections.impl.map.mutable.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding: java.lang.String _schemaId()>();
if v == null goto label;
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding: org.finos.legend.pure.generated.Root_meta_external_format_shared_metamodel_SchemaSet _schemaSet()>();
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_metamodel_SchemaSet: org.eclipse.collections.api.RichIterable _schemas()>();
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler$lambda_thirdPass_aaeafc47_1__16: org.eclipse.collections.api.block.predicate.Predicate bootstrap$(org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding)>(v);
v = interfaceinvoke v.<org.eclipse.collections.api.RichIterable: boolean noneSatisfy(org.eclipse.collections.api.block.predicate.Predicate)>(v);
if v == 0 goto label;
v = new org.finos.legend.engine.shared.core.operational.errorManagement.EngineException;
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding: java.lang.String _schemaId()>();
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String schemaSet>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,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[])>("ID \'\u0001\' does not exist in SchemaSet \'\u0001\'");
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: 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 = specialinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: org.finos.legend.engine.external.shared.format.model.ExternalFormatExtension getExtension(org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding,org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding)>(v, v);
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding: org.finos.legend.pure.generated.Root_meta_external_format_shared_metamodel_SchemaSet _schemaSet()>();
if v == null goto label;
v = interfaceinvoke v.<org.finos.legend.engine.external.shared.format.model.ExternalFormatExtension: java.lang.String getFormat()>();
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding: org.finos.legend.pure.generated.Root_meta_external_format_shared_metamodel_SchemaSet _schemaSet()>();
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_metamodel_SchemaSet: java.lang.String _format()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = new org.finos.legend.engine.shared.core.operational.errorManagement.EngineException;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: 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)>("Content type and SchemaSet format do not match", v, v);
throw v;
label:
return;
}
public void fourthPass(org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_validation_BindingDetail v;
org.eclipse.collections.impl.map.mutable.ConcurrentHashMap v;
org.finos.legend.engine.protocol.pure.v.model.context.EngineErrorType v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler v;
org.eclipse.collections.api.RichIterable v;
java.lang.String v, v, v, v, v;
boolean v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v;
org.finos.legend.engine.external.shared.format.model.ExternalFormatExtension v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation 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.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel pureModel>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String _package>;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: java.lang.String name>;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel: java.lang.String buildPackageString(java.lang.String,java.lang.String)>(v, v);
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: org.eclipse.collections.impl.map.mutable.ConcurrentHashMap bindingIndex>;
v = virtualinvoke v.<org.eclipse.collections.impl.map.mutable.ConcurrentHashMap: java.lang.Object get(java.lang.Object)>(v);
v = specialinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: org.finos.legend.engine.external.shared.format.model.ExternalFormatExtension getExtension(org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding,org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding)>(v, v);
v = interfaceinvoke v.<org.finos.legend.engine.external.shared.format.model.ExternalFormatExtension: org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_validation_BindingDetail bindDetails(org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)>(v, v);
v = v instanceof org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_validation_FailedBindingDetail;
if v == 0 goto label;
v = new org.finos.legend.engine.shared.core.operational.errorManagement.EngineException;
v = interfaceinvoke v.<org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_validation_FailedBindingDetail: org.eclipse.collections.api.RichIterable _errorMessages()>();
v = interfaceinvoke v.<org.eclipse.collections.api.RichIterable: java.lang.String makeString(java.lang.String)>("\n");
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[])>("Model and schema are mismatched:\n\u0001");
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding: 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:
return;
}
private org.finos.legend.engine.external.shared.format.model.ExternalFormatExtension getExtension(org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding, org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding)
{
java.util.function.Predicate v;
java.util.Collection v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler v;
java.util.function.Supplier v;
java.util.stream.Stream v, v;
org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding v;
java.util.Map v;
java.util.Optional v;
java.lang.Object v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler;
v := @parameter: org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding;
v = v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler: java.util.Map externalFormatExtensions>;
v = interfaceinvoke v.<java.util.Map: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: java.util.stream.Stream stream()>();
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler$lambda_getExtension_0__17: java.util.function.Predicate bootstrap$(org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding)>(v);
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = interfaceinvoke v.<java.util.stream.Stream: java.util.Optional findFirst()>();
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.BindingCompiler$lambda_getExtension_1__18: java.util.function.Supplier bootstrap$(org.finos.legend.pure.generated.Root_meta_external_format_shared_binding_Binding,org.finos.legend.engine.protocol.pure.v.model.packageableElement.externalFormat.Binding)>(v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElseThrow(java.util.function.Supplier)>(v);
return v;
}
}