public class com.github.javaparser.printer.XmlPrinter extends java.lang.Object
{
private final boolean outputNodeType;
public void <init>(boolean)
{
com.github.javaparser.printer.XmlPrinter v;
boolean v;
v := @this: com.github.javaparser.printer.XmlPrinter;
v := @parameter: boolean;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<com.github.javaparser.printer.XmlPrinter: boolean outputNodeType> = v;
return;
}
public java.lang.String output(com.github.javaparser.ast.Node)
{
com.github.javaparser.printer.XmlPrinter v;
java.lang.StringBuilder v;
java.lang.String v;
com.github.javaparser.ast.Node v;
v := @this: com.github.javaparser.printer.XmlPrinter;
v := @parameter: com.github.javaparser.ast.Node;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
virtualinvoke v.<com.github.javaparser.printer.XmlPrinter: void output(com.github.javaparser.ast.Node,java.lang.String,int,java.lang.StringBuilder)>(v, "root", 0, v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
public void output(com.github.javaparser.ast.Node, java.lang.String, int, java.lang.StringBuilder)
{
com.github.javaparser.metamodel.NodeMetaModel v;
java.util.stream.Collector v, v, v;
com.github.javaparser.ast.Node v;
boolean v, v, v, v, v, v;
java.util.function.Predicate v, v, v, v, v;
java.util.List v;
java.util.stream.Stream v, v, v, v, v, v, v, v;
java.lang.StringBuilder v, v, v, v;
int v, v, v, v, v;
com.github.javaparser.printer.XmlPrinter v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v, v, v, v;
java.lang.Object v, v, v, v, v, v, v, v, v, v;
v := @this: com.github.javaparser.printer.XmlPrinter;
v := @parameter: com.github.javaparser.ast.Node;
v := @parameter: java.lang.String;
v := @parameter: int;
v := @parameter: java.lang.StringBuilder;
staticinvoke <com.github.javaparser.utils.Utils: java.lang.Object assertNotNull(java.lang.Object)>(v);
v = virtualinvoke v.<com.github.javaparser.ast.Node: com.github.javaparser.metamodel.NodeMetaModel getMetaModel()>();
v = virtualinvoke v.<com.github.javaparser.metamodel.NodeMetaModel: java.util.List getAllPropertyMetaModels()>();
v = interfaceinvoke v.<java.util.List: java.util.stream.Stream stream()>();
v = staticinvoke <com.github.javaparser.printer.XmlPrinter$isAttribute__998: java.util.function.Predicate bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = staticinvoke <com.github.javaparser.printer.XmlPrinter$isSingular__999: java.util.function.Predicate bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = staticinvoke <java.util.stream.Collectors: java.util.stream.Collector toList()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.lang.Object collect(java.util.stream.Collector)>(v);
v = interfaceinvoke v.<java.util.List: java.util.stream.Stream stream()>();
v = staticinvoke <com.github.javaparser.printer.XmlPrinter$isNode__1000: java.util.function.Predicate bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = staticinvoke <com.github.javaparser.printer.XmlPrinter$isSingular__1001: java.util.function.Predicate bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = staticinvoke <java.util.stream.Collectors: java.util.stream.Collector toList()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.lang.Object collect(java.util.stream.Collector)>(v);
v = interfaceinvoke v.<java.util.List: java.util.stream.Stream stream()>();
v = staticinvoke <com.github.javaparser.printer.XmlPrinter$isNodeList__1002: java.util.function.Predicate bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = staticinvoke <java.util.stream.Collectors: java.util.stream.Collector toList()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.lang.Object collect(java.util.stream.Collector)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("<");
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v.<com.github.javaparser.printer.XmlPrinter: boolean outputNodeType>;
if v == 0 goto label;
v = virtualinvoke v.<com.github.javaparser.metamodel.NodeMetaModel: java.lang.String getTypeName()>();
v = staticinvoke <com.github.javaparser.printer.XmlPrinter: java.lang.String attribute(java.lang.String,java.lang.String)>("type", v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
label:
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 = virtualinvoke v.<com.github.javaparser.metamodel.PropertyMetaModel: java.lang.String getName()>();
v = virtualinvoke v.<com.github.javaparser.metamodel.PropertyMetaModel: java.lang.Object getValue(com.github.javaparser.ast.Node)>(v);
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
v = staticinvoke <com.github.javaparser.printer.XmlPrinter: java.lang.String attribute(java.lang.String,java.lang.String)>(v, v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
goto label;
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(">");
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 = virtualinvoke v.<com.github.javaparser.metamodel.PropertyMetaModel: java.lang.Object getValue(com.github.javaparser.ast.Node)>(v);
if v == null goto label;
v = virtualinvoke v.<com.github.javaparser.metamodel.PropertyMetaModel: java.lang.String getName()>();
v = v + 1;
virtualinvoke v.<com.github.javaparser.printer.XmlPrinter: void output(com.github.javaparser.ast.Node,java.lang.String,int,java.lang.StringBuilder)>(v, v, v, v);
goto label;
label:
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 = virtualinvoke v.<com.github.javaparser.metamodel.PropertyMetaModel: java.lang.Object getValue(com.github.javaparser.ast.Node)>(v);
if v == null goto label;
v = virtualinvoke v.<com.github.javaparser.ast.NodeList: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<com.github.javaparser.metamodel.PropertyMetaModel: java.lang.String getName()>();
v = 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);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(">");
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
v = virtualinvoke v.<com.github.javaparser.ast.NodeList: 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 + 1;
virtualinvoke v.<com.github.javaparser.printer.XmlPrinter: void output(com.github.javaparser.ast.Node,java.lang.String,int,java.lang.StringBuilder)>(v, v, v, v);
goto label;
label:
v = staticinvoke <com.github.javaparser.printer.XmlPrinter: java.lang.String close(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
goto label;
label:
v = staticinvoke <com.github.javaparser.printer.XmlPrinter: java.lang.String close(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
return;
}
private static java.lang.String close(java.lang.String)
{
java.lang.String v, v;
v := @parameter: java.lang.String;
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[])>("</\u0001>");
return v;
}
private static java.lang.String attribute(java.lang.String, java.lang.String)
{
java.lang.String v, v, v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
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[])>(" \u0001=\'\u0001\'");
return v;
}
public static void print(com.github.javaparser.ast.Node)
{
java.io.PrintStream v;
com.github.javaparser.printer.XmlPrinter v;
java.lang.String v;
com.github.javaparser.ast.Node v;
v := @parameter: com.github.javaparser.ast.Node;
v = <java.lang.System: java.io.PrintStream out>;
v = new com.github.javaparser.printer.XmlPrinter;
specialinvoke v.<com.github.javaparser.printer.XmlPrinter: void <init>(boolean)>(1);
v = virtualinvoke v.<com.github.javaparser.printer.XmlPrinter: java.lang.String output(com.github.javaparser.ast.Node)>(v);
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
return;
}
}