public final class org.graalvm.polyglot.PolyglotAccess extends java.lang.Object
{
private static final org.graalvm.collections.UnmodifiableEconomicSet EMPTY;
private static final org.graalvm.collections.UnmodifiableEconomicMap EMPTY_EVAL_ACCESS;
private final org.graalvm.collections.EconomicMap evalAccess;
private final org.graalvm.collections.EconomicSet bindingsAccess;
private final boolean allAccess;
public static final org.graalvm.polyglot.PolyglotAccess NONE;
public static final org.graalvm.polyglot.PolyglotAccess ALL;
void <init>(boolean, org.graalvm.collections.EconomicMap, org.graalvm.collections.EconomicSet)
{
org.graalvm.polyglot.PolyglotAccess v;
org.graalvm.collections.EconomicMap v, v;
org.graalvm.collections.EconomicSet v;
boolean v;
v := @this: org.graalvm.polyglot.PolyglotAccess;
v := @parameter: boolean;
v := @parameter: org.graalvm.collections.EconomicMap;
v := @parameter: org.graalvm.collections.EconomicSet;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.graalvm.polyglot.PolyglotAccess: boolean allAccess> = v;
v = staticinvoke <org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicMap copyMap(org.graalvm.collections.EconomicMap)>(v);
v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicMap evalAccess> = v;
v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicSet bindingsAccess> = v;
return;
}
private static org.graalvm.collections.EconomicMap copyMap(org.graalvm.collections.EconomicMap)
{
org.graalvm.collections.MapCursor v;
org.graalvm.collections.EconomicSet v;
org.graalvm.collections.EconomicMap v, v;
int v;
java.lang.Object v, v;
org.graalvm.collections.Equivalence v;
boolean v;
v := @parameter: org.graalvm.collections.EconomicMap;
if v != null goto label;
return null;
label:
v = interfaceinvoke v.<org.graalvm.collections.EconomicMap: int size()>();
v = staticinvoke <org.graalvm.collections.EconomicMap: org.graalvm.collections.EconomicMap create(int)>(v);
v = interfaceinvoke v.<org.graalvm.collections.EconomicMap: org.graalvm.collections.MapCursor getEntries()>();
label:
v = interfaceinvoke v.<org.graalvm.collections.MapCursor: boolean advance()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.graalvm.collections.MapCursor: java.lang.Object getKey()>();
v = <org.graalvm.collections.Equivalence: org.graalvm.collections.Equivalence DEFAULT>;
v = interfaceinvoke v.<org.graalvm.collections.MapCursor: java.lang.Object getValue()>();
v = staticinvoke <org.graalvm.collections.EconomicSet: org.graalvm.collections.EconomicSet create(org.graalvm.collections.Equivalence,org.graalvm.collections.UnmodifiableEconomicSet)>(v, v);
interfaceinvoke v.<org.graalvm.collections.EconomicMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
return v;
}
java.lang.String validate(java.util.Set)
{
java.lang.Object[] v, v;
org.graalvm.collections.EconomicSet v, v;
org.graalvm.collections.EconomicMap v, v;
java.lang.String v, v, v;
boolean v, v, v, v, v, v;
java.util.Iterator v, v;
org.graalvm.collections.MapCursor v;
java.util.Set v;
org.graalvm.polyglot.PolyglotAccess v;
java.lang.Object v, v, v, v, v, v, v;
v := @this: org.graalvm.polyglot.PolyglotAccess;
v := @parameter: java.util.Set;
v = v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicMap evalAccess>;
if v == null goto label;
v = v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicMap evalAccess>;
v = interfaceinvoke v.<org.graalvm.collections.EconomicMap: org.graalvm.collections.MapCursor getEntries()>();
label:
v = interfaceinvoke v.<org.graalvm.collections.MapCursor: boolean advance()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.graalvm.collections.MapCursor: java.lang.Object getKey()>();
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
v = interfaceinvoke v.<org.graalvm.collections.MapCursor: java.lang.Object getKey()>();
label:
if v != null goto label;
v = interfaceinvoke v.<org.graalvm.collections.MapCursor: java.lang.Object getValue()>();
v = interfaceinvoke v.<org.graalvm.collections.UnmodifiableEconomicSet: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
v = v;
label:
if v == null goto label;
v = newarray (java.lang.Object)[3];
v[0] = v;
v = interfaceinvoke v.<org.graalvm.collections.MapCursor: java.lang.Object getKey()>();
v[1] = v;
v = interfaceinvoke v.<org.graalvm.collections.MapCursor: java.lang.Object getValue()>();
v = staticinvoke <org.graalvm.polyglot.PolyglotAccess: java.lang.String toStringSet(org.graalvm.collections.UnmodifiableEconomicSet)>(v);
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Language \'%s\' configured in polyglot evaluation rule %s -> %s is not installed or available.", v);
return v;
label:
v = v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicSet bindingsAccess>;
if v == null goto label;
v = v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicSet bindingsAccess>;
v = interfaceinvoke v.<org.graalvm.collections.EconomicSet: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
v = newarray (java.lang.Object)[1];
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Language \'%s\' configured in polyglot bindings access rule is not installed or available.", v);
return v;
label:
return null;
}
static java.lang.String toStringSet(org.graalvm.collections.UnmodifiableEconomicSet)
{
java.util.Iterator v;
java.lang.Object v;
java.lang.StringBuilder v;
java.lang.String v, v;
boolean v;
org.graalvm.collections.UnmodifiableEconomicSet v;
v := @parameter: org.graalvm.collections.UnmodifiableEconomicSet;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = "";
v = interfaceinvoke v.<org.graalvm.collections.UnmodifiableEconomicSet: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = ", ";
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
org.graalvm.collections.UnmodifiableEconomicSet getEvalAccess(java.lang.String)
{
org.graalvm.polyglot.PolyglotAccess v;
org.graalvm.collections.EconomicMap v, v;
java.lang.Object v;
java.lang.String v;
boolean v;
org.graalvm.collections.UnmodifiableEconomicSet v, v;
v := @this: org.graalvm.polyglot.PolyglotAccess;
v := @parameter: java.lang.String;
v = v.<org.graalvm.polyglot.PolyglotAccess: boolean allAccess>;
if v == 0 goto label;
return null;
label:
v = v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicMap evalAccess>;
if v != null goto label;
v = <org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.UnmodifiableEconomicSet EMPTY>;
return v;
label:
v = v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicMap evalAccess>;
v = interfaceinvoke v.<org.graalvm.collections.EconomicMap: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = <org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.UnmodifiableEconomicSet EMPTY>;
return v;
label:
return v;
}
org.graalvm.collections.UnmodifiableEconomicMap getEvalAccess()
{
org.graalvm.polyglot.PolyglotAccess v;
org.graalvm.collections.EconomicMap v, v;
org.graalvm.collections.UnmodifiableEconomicMap v;
boolean v;
v := @this: org.graalvm.polyglot.PolyglotAccess;
v = v.<org.graalvm.polyglot.PolyglotAccess: boolean allAccess>;
if v == 0 goto label;
return null;
label:
v = v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicMap evalAccess>;
if v != null goto label;
v = <org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.UnmodifiableEconomicMap EMPTY_EVAL_ACCESS>;
return v;
label:
v = v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicMap evalAccess>;
return v;
}
org.graalvm.collections.UnmodifiableEconomicSet getBindingsAccess()
{
org.graalvm.polyglot.PolyglotAccess v;
org.graalvm.collections.EconomicSet v, v;
boolean v;
org.graalvm.collections.UnmodifiableEconomicSet v;
v := @this: org.graalvm.polyglot.PolyglotAccess;
v = v.<org.graalvm.polyglot.PolyglotAccess: boolean allAccess>;
if v == 0 goto label;
return null;
label:
v = v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicSet bindingsAccess>;
if v != null goto label;
v = <org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.UnmodifiableEconomicSet EMPTY>;
return v;
label:
v = v.<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.EconomicSet bindingsAccess>;
return v;
}
public static org.graalvm.polyglot.PolyglotAccess$Builder newBuilder()
{
org.graalvm.polyglot.PolyglotAccess$Builder v;
org.graalvm.polyglot.PolyglotAccess v;
v = new org.graalvm.polyglot.PolyglotAccess$Builder;
v = <org.graalvm.polyglot.PolyglotAccess: org.graalvm.polyglot.PolyglotAccess NONE>;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
specialinvoke v.<org.graalvm.polyglot.PolyglotAccess$Builder: void <init>(org.graalvm.polyglot.PolyglotAccess)>(v);
return v;
}
static void <clinit>()
{
org.graalvm.polyglot.PolyglotAccess v, v;
org.graalvm.collections.EconomicMap v;
org.graalvm.collections.EconomicSet v;
v = staticinvoke <org.graalvm.collections.EconomicSet: org.graalvm.collections.EconomicSet create()>();
<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.UnmodifiableEconomicSet EMPTY> = v;
v = staticinvoke <org.graalvm.collections.EconomicMap: org.graalvm.collections.EconomicMap create()>();
<org.graalvm.polyglot.PolyglotAccess: org.graalvm.collections.UnmodifiableEconomicMap EMPTY_EVAL_ACCESS> = v;
v = new org.graalvm.polyglot.PolyglotAccess;
specialinvoke v.<org.graalvm.polyglot.PolyglotAccess: void <init>(boolean,org.graalvm.collections.EconomicMap,org.graalvm.collections.EconomicSet)>(0, null, null);
<org.graalvm.polyglot.PolyglotAccess: org.graalvm.polyglot.PolyglotAccess NONE> = v;
v = new org.graalvm.polyglot.PolyglotAccess;
specialinvoke v.<org.graalvm.polyglot.PolyglotAccess: void <init>(boolean,org.graalvm.collections.EconomicMap,org.graalvm.collections.EconomicSet)>(1, null, null);
<org.graalvm.polyglot.PolyglotAccess: org.graalvm.polyglot.PolyglotAccess ALL> = v;
return;
}
}