class org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree extends java.lang.Object
{
private final java.util.Map nodes;
private java.lang.reflect.Type elementType;
private java.lang.Class containerClass;
private final java.util.Set constraints;
private boolean cascading;
private java.util.Set groupConversionDescriptors;
private void <init>()
{
java.util.HashSet v, v;
org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree v;
java.util.HashMap v;
v := @this: org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.util.Map nodes> = v;
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.lang.reflect.Type elementType> = null;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.util.Set constraints> = v;
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: boolean cascading> = 0;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.util.Set groupConversionDescriptors> = v;
return;
}
private static org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree of(org.hibernate.validator.internal.metadata.aggregated.CascadingMetaData, java.util.Set)
{
org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree v;
org.hibernate.validator.internal.metadata.aggregated.CascadingMetaData v, v;
org.hibernate.validator.internal.metadata.location.ConstraintLocation v;
java.util.Iterator v;
java.lang.reflect.TypeVariable v;
java.util.Set v;
java.util.ArrayList v, v;
java.lang.Object v;
boolean v, v, v, v;
v := @parameter: org.hibernate.validator.internal.metadata.aggregated.CascadingMetaData;
v := @parameter: java.util.Set;
v = new org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree;
specialinvoke v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: void <init>()>();
v = interfaceinvoke v.<java.util.Set: 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 = virtualinvoke v.<org.hibernate.validator.internal.metadata.core.MetaConstraint: org.hibernate.validator.internal.metadata.location.ConstraintLocation getLocation()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
label:
v = v instanceof org.hibernate.validator.internal.metadata.location.TypeArgumentConstraintLocation;
if v == 0 goto label;
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.location.TypeArgumentConstraintLocation: java.lang.reflect.TypeVariable getTypeParameter()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.location.TypeArgumentConstraintLocation: org.hibernate.validator.internal.metadata.location.ConstraintLocation getDelegate()>();
goto label;
label:
staticinvoke <java.util.Collections: void reverse(java.util.List)>(v);
specialinvoke v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: void addConstraint(java.util.List,org.hibernate.validator.internal.metadata.core.MetaConstraint)>(v, v);
goto label;
label:
if v == null goto label;
v = interfaceinvoke v.<org.hibernate.validator.internal.metadata.aggregated.CascadingMetaData: boolean isContainer()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.hibernate.validator.internal.metadata.aggregated.CascadingMetaData: boolean isMarkedForCascadingOnAnnotatedObjectOrContainerElements()>();
if v == 0 goto label;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = interfaceinvoke v.<org.hibernate.validator.internal.metadata.aggregated.CascadingMetaData: org.hibernate.validator.internal.metadata.aggregated.CascadingMetaData as(java.lang.Class)>(class "Lorg/hibernate/validator/internal/metadata/aggregated/ContainerCascadingMetaData;");
specialinvoke v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: void addCascadingMetaData(java.util.List,org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData)>(v, v);
label:
return v;
}
private void addConstraint(java.util.List, org.hibernate.validator.internal.metadata.core.MetaConstraint)
{
org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree v;
org.hibernate.validator.internal.metadata.location.ConstraintLocation v, v;
java.util.Iterator v;
org.hibernate.validator.internal.metadata.core.MetaConstraint v;
java.util.Set v;
java.util.function.Function v;
java.util.List v;
java.lang.reflect.Type v;
java.util.Map v;
java.lang.Class v;
java.lang.Object v, v;
boolean v;
v := @this: org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree;
v := @parameter: java.util.List;
v := @parameter: org.hibernate.validator.internal.metadata.core.MetaConstraint;
v = interfaceinvoke v.<java.util.List: 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 = v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.util.Map nodes>;
v = staticinvoke <org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree$lambda_addConstraint_0__15: java.util.function.Function bootstrap$()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.core.MetaConstraint: org.hibernate.validator.internal.metadata.location.ConstraintLocation getLocation()>();
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.location.TypeArgumentConstraintLocation: java.lang.reflect.Type getTypeForValidatorResolution()>();
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.lang.reflect.Type elementType> = v;
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.core.MetaConstraint: org.hibernate.validator.internal.metadata.location.ConstraintLocation getLocation()>();
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.location.TypeArgumentConstraintLocation: java.lang.Class getContainerClass()>();
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.lang.Class containerClass> = v;
v = v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.util.Set constraints>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
return;
}
private void addCascadingMetaData(java.util.List, org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData)
{
org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData v;
java.util.function.Function v;
java.util.ArrayList v;
java.util.Map v;
boolean v, v, v, v;
org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree v;
java.util.Iterator v, v;
java.lang.reflect.TypeVariable v, v;
java.util.Set v;
java.util.List v, v;
java.lang.reflect.Type v, v;
java.lang.Class v;
java.lang.Object v, v, v;
v := @this: org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree;
v := @parameter: java.util.List;
v := @parameter: org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData;
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData: java.util.List getContainerElementTypesCascadingMetaData()>();
v = interfaceinvoke v.<java.util.List: 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 = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>(java.util.Collection)>(v);
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData: java.lang.reflect.TypeVariable getTypeParameter()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.List: 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 = v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.util.Map nodes>;
v = staticinvoke <org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree$lambda_addCascadingMetaData_1__16: java.util.function.Function bootstrap$()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData: java.lang.reflect.Type getEnclosingType()>();
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData: java.lang.reflect.TypeVariable getTypeParameter()>();
v = staticinvoke <org.hibernate.validator.internal.util.TypeVariables: java.lang.reflect.Type getContainerElementType(java.lang.reflect.Type,java.lang.reflect.TypeVariable)>(v, v);
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.lang.reflect.Type elementType> = v;
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData: java.lang.Class getDeclaredContainerClass()>();
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.lang.Class containerClass> = v;
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData: boolean isCascading()>();
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: boolean cascading> = v;
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData: java.util.Set getGroupConversionDescriptors()>();
v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: java.util.Set groupConversionDescriptors> = v;
v = virtualinvoke v.<org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData: boolean isMarkedForCascadingOnAnnotatedObjectOrContainerElements()>();
if v == 0 goto label;
specialinvoke v.<org.hibernate.validator.internal.metadata.aggregated.AbstractConstraintMetaData$ContainerElementMetaDataTree: void addCascadingMetaData(java.util.List,org.hibernate.validator.internal.metadata.aggregated.ContainerCascadingMetaData)>(v, v);
goto label;
label:
return;
}
}