class freemarker.ext.dom.ElementModel extends freemarker.ext.dom.NodeModel implements freemarker.template.TemplateScalarModel
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: freemarker.ext.dom.ElementModel
super_class: freemarker.ext.dom.NodeModel
{
public void <init>(org.w3c.dom.Element);
descriptor: (Lorg/w3c/dom/Element;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial freemarker.ext.dom.NodeModel.<init>:(Lorg/w3c/dom/Node;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lfreemarker/ext/dom/ElementModel;
0 2 1 element Lorg/w3c/dom/Element;
MethodParameters:
Name Flags
element
public boolean isEmpty();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/ext/dom/ElementModel;
public freemarker.template.TemplateModel get(java.lang.String);
descriptor: (Ljava/lang/String;)Lfreemarker/template/TemplateModel;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aload 1
ldc "*"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
1: new freemarker.ext.dom.NodeListModel
dup
aload 0
invokespecial freemarker.ext.dom.NodeListModel.<init>:(Lfreemarker/ext/dom/NodeModel;)V
astore 2
start local 2 2: aload 0
invokevirtual freemarker.ext.dom.ElementModel.getChildNodes:()Lfreemarker/template/TemplateSequenceModel;
astore 3
start local 3 3: aload 3
invokeinterface freemarker.template.TemplateSequenceModel.size:()I
istore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 10
6: StackMap locals: freemarker.ext.dom.ElementModel java.lang.String freemarker.ext.dom.NodeListModel freemarker.template.TemplateSequenceModel int int
StackMap stack:
aload 3
iload 5
invokeinterface freemarker.template.TemplateSequenceModel.get:(I)Lfreemarker/template/TemplateModel;
checkcast freemarker.ext.dom.NodeModel
astore 6
start local 6 7: aload 6
getfield freemarker.ext.dom.NodeModel.node:Lorg/w3c/dom/Node;
invokeinterface org.w3c.dom.Node.getNodeType:()S
iconst_1
if_icmpne 9
8: aload 2
aload 6
invokevirtual freemarker.ext.dom.NodeListModel.add:(Ljava/lang/Object;)V
end local 6 9: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
10: iload 5
iload 4
if_icmplt 6
end local 5 11: aload 2
areturn
end local 4 end local 3 end local 2 12: StackMap locals: freemarker.ext.dom.ElementModel java.lang.String
StackMap stack:
aload 1
ldc "**"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 14
13: new freemarker.ext.dom.NodeListModel
dup
aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
checkcast org.w3c.dom.Element
ldc "*"
invokeinterface org.w3c.dom.Element.getElementsByTagName:(Ljava/lang/String;)Lorg/w3c/dom/NodeList;
aload 0
invokespecial freemarker.ext.dom.NodeListModel.<init>:(Lorg/w3c/dom/NodeList;Lfreemarker/ext/dom/NodeModel;)V
areturn
14: StackMap locals:
StackMap stack:
aload 1
ldc "@"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 56
15: aload 1
ldc "@@"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 48
16: aload 1
getstatic freemarker.ext.dom.AtAtKey.ATTRIBUTES:Lfreemarker/ext/dom/AtAtKey;
invokevirtual freemarker.ext.dom.AtAtKey.getKey:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 18
17: new freemarker.ext.dom.NodeListModel
dup
aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokeinterface org.w3c.dom.Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
aload 0
invokespecial freemarker.ext.dom.NodeListModel.<init>:(Lorg/w3c/dom/NamedNodeMap;Lfreemarker/ext/dom/NodeModel;)V
areturn
18: StackMap locals:
StackMap stack:
aload 1
getstatic freemarker.ext.dom.AtAtKey.START_TAG:Lfreemarker/ext/dom/AtAtKey;
invokevirtual freemarker.ext.dom.AtAtKey.getKey:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 21
19: new freemarker.ext.dom.NodeOutputter
dup
aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokespecial freemarker.ext.dom.NodeOutputter.<init>:(Lorg/w3c/dom/Node;)V
astore 2
start local 2 20: new freemarker.template.SimpleScalar
dup
aload 2
aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
checkcast org.w3c.dom.Element
invokevirtual freemarker.ext.dom.NodeOutputter.getOpeningTag:(Lorg/w3c/dom/Element;)Ljava/lang/String;
invokespecial freemarker.template.SimpleScalar.<init>:(Ljava/lang/String;)V
areturn
end local 2 21: StackMap locals:
StackMap stack:
aload 1
getstatic freemarker.ext.dom.AtAtKey.END_TAG:Lfreemarker/ext/dom/AtAtKey;
invokevirtual freemarker.ext.dom.AtAtKey.getKey:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 24
22: new freemarker.ext.dom.NodeOutputter
dup
aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokespecial freemarker.ext.dom.NodeOutputter.<init>:(Lorg/w3c/dom/Node;)V
astore 2
start local 2 23: new freemarker.template.SimpleScalar
dup
aload 2
aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
checkcast org.w3c.dom.Element
invokevirtual freemarker.ext.dom.NodeOutputter.getClosingTag:(Lorg/w3c/dom/Element;)Ljava/lang/String;
invokespecial freemarker.template.SimpleScalar.<init>:(Ljava/lang/String;)V
areturn
end local 2 24: StackMap locals:
StackMap stack:
aload 1
getstatic freemarker.ext.dom.AtAtKey.ATTRIBUTES_MARKUP:Lfreemarker/ext/dom/AtAtKey;
invokevirtual freemarker.ext.dom.AtAtKey.getKey:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 29
25: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 26: new freemarker.ext.dom.NodeOutputter
dup
aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokespecial freemarker.ext.dom.NodeOutputter.<init>:(Lorg/w3c/dom/Node;)V
astore 3
start local 3 27: aload 3
aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokeinterface org.w3c.dom.Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
aload 2
invokevirtual freemarker.ext.dom.NodeOutputter.outputContent:(Lorg/w3c/dom/NamedNodeMap;Ljava/lang/StringBuilder;)V
28: new freemarker.template.SimpleScalar
dup
aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokespecial freemarker.template.SimpleScalar.<init>:(Ljava/lang/String;)V
areturn
end local 3 end local 2 29: StackMap locals:
StackMap stack:
aload 1
getstatic freemarker.ext.dom.AtAtKey.PREVIOUS_SIBLING_ELEMENT:Lfreemarker/ext/dom/AtAtKey;
invokevirtual freemarker.ext.dom.AtAtKey.getKey:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 38
30: aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokeinterface org.w3c.dom.Node.getPreviousSibling:()Lorg/w3c/dom/Node;
astore 2
start local 2 31: goto 33
32: StackMap locals: org.w3c.dom.Node
StackMap stack:
aload 2
invokeinterface org.w3c.dom.Node.getPreviousSibling:()Lorg/w3c/dom/Node;
astore 2
33: StackMap locals:
StackMap stack:
aload 2
ifnull 34
aload 0
aload 2
invokevirtual freemarker.ext.dom.ElementModel.isSignificantNode:(Lorg/w3c/dom/Node;)Z
ifeq 32
34: StackMap locals:
StackMap stack:
aload 2
ifnull 36
aload 2
invokeinterface org.w3c.dom.Node.getNodeType:()S
iconst_1
if_icmpne 36
35: aload 2
invokestatic freemarker.ext.dom.ElementModel.wrap:(Lorg/w3c/dom/Node;)Lfreemarker/ext/dom/NodeModel;
goto 37
StackMap locals:
StackMap stack:
36: new freemarker.ext.dom.NodeListModel
dup
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
aconst_null
invokespecial freemarker.ext.dom.NodeListModel.<init>:(Ljava/util/List;Lfreemarker/ext/dom/NodeModel;)V
37: StackMap locals:
StackMap stack: freemarker.template.TemplateHashModel
areturn
end local 2 38: StackMap locals:
StackMap stack:
aload 1
getstatic freemarker.ext.dom.AtAtKey.NEXT_SIBLING_ELEMENT:Lfreemarker/ext/dom/AtAtKey;
invokevirtual freemarker.ext.dom.AtAtKey.getKey:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 47
39: aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokeinterface org.w3c.dom.Node.getNextSibling:()Lorg/w3c/dom/Node;
astore 2
start local 2 40: goto 42
41: StackMap locals: org.w3c.dom.Node
StackMap stack:
aload 2
invokeinterface org.w3c.dom.Node.getNextSibling:()Lorg/w3c/dom/Node;
astore 2
42: StackMap locals:
StackMap stack:
aload 2
ifnull 43
aload 0
aload 2
invokevirtual freemarker.ext.dom.ElementModel.isSignificantNode:(Lorg/w3c/dom/Node;)Z
ifeq 41
43: StackMap locals:
StackMap stack:
aload 2
ifnull 45
aload 2
invokeinterface org.w3c.dom.Node.getNodeType:()S
iconst_1
if_icmpne 45
44: aload 2
invokestatic freemarker.ext.dom.ElementModel.wrap:(Lorg/w3c/dom/Node;)Lfreemarker/ext/dom/NodeModel;
goto 46
StackMap locals:
StackMap stack:
45: new freemarker.ext.dom.NodeListModel
dup
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
aconst_null
invokespecial freemarker.ext.dom.NodeListModel.<init>:(Ljava/util/List;Lfreemarker/ext/dom/NodeModel;)V
46: StackMap locals:
StackMap stack: freemarker.template.TemplateHashModel
areturn
end local 2 47: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial freemarker.ext.dom.NodeModel.get:(Ljava/lang/String;)Lfreemarker/template/TemplateModel;
areturn
48: StackMap locals:
StackMap stack:
aload 1
iconst_1
invokestatic freemarker.ext.dom.DomStringUtil.isXMLNameLike:(Ljava/lang/String;I)Z
ifeq 53
49: aload 0
aload 1
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual freemarker.ext.dom.ElementModel.getAttribute:(Ljava/lang/String;)Lorg/w3c/dom/Attr;
astore 2
start local 2 50: aload 2
ifnonnull 52
51: new freemarker.ext.dom.NodeListModel
dup
aload 0
invokespecial freemarker.ext.dom.NodeListModel.<init>:(Lfreemarker/ext/dom/NodeModel;)V
areturn
52: StackMap locals: org.w3c.dom.Attr
StackMap stack:
aload 2
invokestatic freemarker.ext.dom.ElementModel.wrap:(Lorg/w3c/dom/Node;)Lfreemarker/ext/dom/NodeModel;
areturn
end local 2 53: StackMap locals:
StackMap stack:
aload 1
ldc "@*"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 55
54: new freemarker.ext.dom.NodeListModel
dup
aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokeinterface org.w3c.dom.Node.getAttributes:()Lorg/w3c/dom/NamedNodeMap;
aload 0
invokespecial freemarker.ext.dom.NodeListModel.<init>:(Lorg/w3c/dom/NamedNodeMap;Lfreemarker/ext/dom/NodeModel;)V
areturn
55: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial freemarker.ext.dom.NodeModel.get:(Ljava/lang/String;)Lfreemarker/template/TemplateModel;
areturn
56: StackMap locals:
StackMap stack:
aload 1
invokestatic freemarker.ext.dom.DomStringUtil.isXMLNameLike:(Ljava/lang/String;)Z
ifeq 61
57: aload 0
invokevirtual freemarker.ext.dom.ElementModel.getChildNodes:()Lfreemarker/template/TemplateSequenceModel;
checkcast freemarker.ext.dom.NodeListModel
aload 1
invokevirtual freemarker.ext.dom.NodeListModel.filterByName:(Ljava/lang/String;)Lfreemarker/ext/dom/NodeListModel;
astore 2
start local 2 58: aload 2
invokevirtual freemarker.ext.dom.NodeListModel.size:()I
iconst_1
if_icmpeq 59
aload 2
goto 60
StackMap locals: freemarker.ext.dom.NodeListModel
StackMap stack:
59: aload 2
iconst_0
invokevirtual freemarker.ext.dom.NodeListModel.get:(I)Lfreemarker/template/TemplateModel;
StackMap locals:
StackMap stack: freemarker.template.TemplateModel
60: areturn
end local 2 61: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial freemarker.ext.dom.NodeModel.get:(Ljava/lang/String;)Lfreemarker/template/TemplateModel;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 62 0 this Lfreemarker/ext/dom/ElementModel;
0 62 1 key Ljava/lang/String;
2 12 2 ns Lfreemarker/ext/dom/NodeListModel;
3 12 3 children Lfreemarker/template/TemplateSequenceModel;
4 12 4 size I
5 11 5 i I
7 9 6 child Lfreemarker/ext/dom/NodeModel;
20 21 2 nodeOutputter Lfreemarker/ext/dom/NodeOutputter;
23 24 2 nodeOutputter Lfreemarker/ext/dom/NodeOutputter;
26 29 2 buf Ljava/lang/StringBuilder;
27 29 3 nu Lfreemarker/ext/dom/NodeOutputter;
31 38 2 previousSibling Lorg/w3c/dom/Node;
40 47 2 nextSibling Lorg/w3c/dom/Node;
50 53 2 att Lorg/w3c/dom/Attr;
58 61 2 result Lfreemarker/ext/dom/NodeListModel;
Exceptions:
throws freemarker.template.TemplateModelException
MethodParameters:
Name Flags
key
public java.lang.String getAsString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=1
start local 0 0: aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokeinterface org.w3c.dom.Node.getChildNodes:()Lorg/w3c/dom/NodeList;
astore 1
start local 1 1: ldc ""
astore 2
start local 2 2: iconst_0
istore 3
start local 3 3: goto 15
4: StackMap locals: org.w3c.dom.NodeList java.lang.String int
StackMap stack:
aload 1
iload 3
invokeinterface org.w3c.dom.NodeList.item:(I)Lorg/w3c/dom/Node;
astore 4
start local 4 5: aload 4
invokeinterface org.w3c.dom.Node.getNodeType:()S
istore 5
start local 5 6: iload 5
iconst_1
if_icmpne 12
7: new java.lang.StringBuilder
dup
ldc "Only elements with no child elements can be processed as text.\nThis element with name \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
8: aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: ldc "\" has a child element named: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
start local 6 11: new freemarker.template.TemplateModelException
dup
aload 6
invokespecial freemarker.template.TemplateModelException.<init>:(Ljava/lang/String;)V
athrow
end local 6 12: StackMap locals: org.w3c.dom.Node int
StackMap stack:
iload 5
iconst_3
if_icmpeq 13
iload 5
iconst_4
if_icmpne 14
13: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokeinterface org.w3c.dom.Node.getNodeValue:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
end local 5 end local 4 14: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
15: iload 3
aload 1
invokeinterface org.w3c.dom.NodeList.getLength:()I
if_icmplt 4
end local 3 16: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lfreemarker/ext/dom/ElementModel;
1 17 1 nl Lorg/w3c/dom/NodeList;
2 17 2 result Ljava/lang/String;
3 16 3 i I
5 14 4 child Lorg/w3c/dom/Node;
6 14 5 nodeType I
11 12 6 msg Ljava/lang/String;
Exceptions:
throws freemarker.template.TemplateModelException
public java.lang.String getNodeName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokeinterface org.w3c.dom.Node.getLocalName:()Ljava/lang/String;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 3
2: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
invokeinterface org.w3c.dom.Node.getNodeName:()Ljava/lang/String;
astore 1
3: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lfreemarker/ext/dom/ElementModel;
1 4 1 result Ljava/lang/String;
java.lang.String getQualifiedName();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=3, locals=6, args_size=1
start local 0 0: aload 0
invokevirtual freemarker.ext.dom.ElementModel.getNodeName:()Ljava/lang/String;
astore 1
start local 1 1: aload 0
invokevirtual freemarker.ext.dom.ElementModel.getNodeNamespace:()Ljava/lang/String;
astore 2
start local 2 2: aload 2
ifnull 3
aload 2
invokevirtual java.lang.String.length:()I
ifne 4
3: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 1
areturn
4: StackMap locals:
StackMap stack:
invokestatic freemarker.core.Environment.getCurrentEnvironment:()Lfreemarker/core/Environment;
astore 3
start local 3 5: aload 3
invokevirtual freemarker.core.Environment.getDefaultNS:()Ljava/lang/String;
astore 4
start local 4 6: aload 4
ifnull 9
aload 4
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
7: ldc ""
astore 5
start local 5 8: goto 10
end local 5 9: StackMap locals: freemarker.core.Environment java.lang.String
StackMap stack:
aload 3
aload 2
invokevirtual freemarker.core.Environment.getPrefixForNamespace:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 10: StackMap locals: java.lang.String
StackMap stack:
aload 5
ifnonnull 12
11: aconst_null
areturn
12: StackMap locals:
StackMap stack:
aload 5
invokevirtual java.lang.String.length:()I
ifle 14
13: new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
14: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lfreemarker/ext/dom/ElementModel;
1 15 1 nodeName Ljava/lang/String;
2 15 2 nsURI Ljava/lang/String;
5 15 3 env Lfreemarker/core/Environment;
6 15 4 defaultNS Ljava/lang/String;
8 9 5 prefix Ljava/lang/String;
10 15 5 prefix Ljava/lang/String;
private org.w3c.dom.Attr getAttribute(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/w3c/dom/Attr;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield freemarker.ext.dom.ElementModel.node:Lorg/w3c/dom/Node;
checkcast org.w3c.dom.Element
astore 2
start local 2 1: aload 2
aload 1
invokeinterface org.w3c.dom.Element.getAttributeNode:(Ljava/lang/String;)Lorg/w3c/dom/Attr;
astore 3
start local 3 2: aload 3
ifnull 4
3: aload 3
areturn
4: StackMap locals: org.w3c.dom.Element org.w3c.dom.Attr
StackMap stack:
aload 1
bipush 58
invokevirtual java.lang.String.indexOf:(I)I
istore 4
start local 4 5: iload 4
ifle 14
6: aload 1
iconst_0
iload 4
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 5
start local 5 7: aload 5
ldc "D"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
8: invokestatic freemarker.core.Environment.getCurrentEnvironment:()Lfreemarker/core/Environment;
invokevirtual freemarker.core.Environment.getDefaultNS:()Ljava/lang/String;
astore 6
start local 6 9: goto 11
end local 6 10: StackMap locals: int java.lang.String
StackMap stack:
invokestatic freemarker.core.Environment.getCurrentEnvironment:()Lfreemarker/core/Environment;
aload 5
invokevirtual freemarker.core.Environment.getNamespaceForPrefix:(Ljava/lang/String;)Ljava/lang/String;
astore 6
start local 6 11: StackMap locals: java.lang.String
StackMap stack:
aload 1
iconst_1
iload 4
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 7
start local 7 12: aload 6
ifnull 14
13: aload 2
aload 6
aload 7
invokeinterface org.w3c.dom.Element.getAttributeNodeNS:(Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Attr;
astore 3
end local 7 end local 6 end local 5 14: StackMap locals:
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lfreemarker/ext/dom/ElementModel;
0 15 1 qname Ljava/lang/String;
1 15 2 element Lorg/w3c/dom/Element;
2 15 3 result Lorg/w3c/dom/Attr;
5 15 4 colonIndex I
7 14 5 prefix Ljava/lang/String;
9 10 6 uri Ljava/lang/String;
11 14 6 uri Ljava/lang/String;
12 14 7 localName Ljava/lang/String;
MethodParameters:
Name Flags
qname
private boolean isSignificantNode(org.w3c.dom.Node);
descriptor: (Lorg/w3c/dom/Node;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.w3c.dom.Node.getNodeType:()S
iconst_3
if_icmpeq 1
aload 1
invokeinterface org.w3c.dom.Node.getNodeType:()S
iconst_4
if_icmpne 3
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface org.w3c.dom.Node.getTextContent:()Ljava/lang/String;
invokevirtual freemarker.ext.dom.ElementModel.isBlankXMLText:(Ljava/lang/String;)Z
ifeq 2
iconst_0
goto 6
StackMap locals:
StackMap stack:
2: iconst_1
goto 6
3: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.w3c.dom.Node.getNodeType:()S
bipush 7
if_icmpeq 5
aload 1
invokeinterface org.w3c.dom.Node.getNodeType:()S
bipush 8
if_icmpeq 5
4: iconst_1
goto 6
StackMap locals:
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lfreemarker/ext/dom/ElementModel;
0 7 1 node Lorg/w3c/dom/Node;
Exceptions:
throws freemarker.template.TemplateModelException
MethodParameters:
Name Flags
node
private boolean isBlankXMLText(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 3: goto 7
4: StackMap locals: int
StackMap stack:
aload 0
aload 1
iload 2
invokevirtual java.lang.String.charAt:(I)C
invokevirtual freemarker.ext.dom.ElementModel.isXMLWhiteSpace:(C)Z
ifne 6
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
7: iload 2
aload 1
invokevirtual java.lang.String.length:()I
if_icmplt 4
end local 2 8: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lfreemarker/ext/dom/ElementModel;
0 9 1 s Ljava/lang/String;
3 8 2 i I
MethodParameters:
Name Flags
s
private boolean isXMLWhiteSpace(char);
descriptor: (C)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
bipush 32
if_icmpeq 5
iload 1
bipush 9
if_icmpeq 5
iload 1
bipush 10
if_icmpne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: iload 1
bipush 13
if_icmpne 3
iconst_1
goto 4
StackMap locals:
StackMap stack: int
3: iconst_0
StackMap locals: freemarker.ext.dom.ElementModel int
StackMap stack: int int
4: ior
ifne 5
iconst_0
ireturn
StackMap locals:
StackMap stack:
5: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lfreemarker/ext/dom/ElementModel;
0 6 1 c C
MethodParameters:
Name Flags
c
boolean matchesName(java.lang.String, freemarker.core.Environment);
descriptor: (Ljava/lang/String;Lfreemarker/core/Environment;)Z
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
invokevirtual freemarker.ext.dom.ElementModel.getNodeName:()Ljava/lang/String;
aload 0
invokevirtual freemarker.ext.dom.ElementModel.getNodeNamespace:()Ljava/lang/String;
aload 2
invokestatic freemarker.ext.dom.DomStringUtil.matchesName:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lfreemarker/core/Environment;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/ext/dom/ElementModel;
0 1 1 name Ljava/lang/String;
0 1 2 env Lfreemarker/core/Environment;
MethodParameters:
Name Flags
name
env
}
SourceFile: "ElementModel.java"