class freemarker.ext.dom.DocumentModel extends freemarker.ext.dom.NodeModel implements freemarker.template.TemplateHashModel
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: freemarker.ext.dom.DocumentModel
super_class: freemarker.ext.dom.NodeModel
{
private freemarker.ext.dom.ElementModel rootElement;
descriptor: Lfreemarker/ext/dom/ElementModel;
flags: (0x0002) ACC_PRIVATE
void <init>(org.w3c.dom.Document);
descriptor: (Lorg/w3c/dom/Document;)V
flags: (0x0000)
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/DocumentModel;
0 2 1 doc Lorg/w3c/dom/Document;
MethodParameters:
Name Flags
doc
public java.lang.String getNodeName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "@document"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/ext/dom/DocumentModel;
public freemarker.template.TemplateModel get(java.lang.String);
descriptor: (Ljava/lang/String;)Lfreemarker/template/TemplateModel;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ldc "*"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: aload 0
invokevirtual freemarker.ext.dom.DocumentModel.getRootElement:()Lfreemarker/ext/dom/ElementModel;
areturn
2: StackMap locals:
StackMap stack:
aload 1
ldc "**"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
3: aload 0
getfield freemarker.ext.dom.DocumentModel.node:Lorg/w3c/dom/Node;
checkcast org.w3c.dom.Document
ldc "*"
invokeinterface org.w3c.dom.Document.getElementsByTagName:(Ljava/lang/String;)Lorg/w3c/dom/NodeList;
astore 2
start local 2 4: new freemarker.ext.dom.NodeListModel
dup
aload 2
aload 0
invokespecial freemarker.ext.dom.NodeListModel.<init>:(Lorg/w3c/dom/NodeList;Lfreemarker/ext/dom/NodeModel;)V
areturn
end local 2 5: StackMap locals:
StackMap stack:
aload 1
invokestatic freemarker.ext.dom.DomStringUtil.isXMLNameLike:(Ljava/lang/String;)Z
ifeq 10
6: aload 0
getfield freemarker.ext.dom.DocumentModel.node:Lorg/w3c/dom/Node;
checkcast org.w3c.dom.Document
invokeinterface org.w3c.dom.Document.getDocumentElement:()Lorg/w3c/dom/Element;
invokestatic freemarker.ext.dom.NodeModel.wrap:(Lorg/w3c/dom/Node;)Lfreemarker/ext/dom/NodeModel;
checkcast freemarker.ext.dom.ElementModel
astore 2
start local 2 7: aload 2
aload 1
invokestatic freemarker.core.Environment.getCurrentEnvironment:()Lfreemarker/core/Environment;
invokevirtual freemarker.ext.dom.ElementModel.matchesName:(Ljava/lang/String;Lfreemarker/core/Environment;)Z
ifeq 9
8: aload 2
areturn
9: StackMap locals: freemarker.ext.dom.ElementModel
StackMap stack:
new freemarker.ext.dom.NodeListModel
dup
aload 0
invokespecial freemarker.ext.dom.NodeListModel.<init>:(Lfreemarker/ext/dom/NodeModel;)V
areturn
end local 2 10: 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 11 0 this Lfreemarker/ext/dom/DocumentModel;
0 11 1 key Ljava/lang/String;
4 5 2 nl Lorg/w3c/dom/NodeList;
7 10 2 em Lfreemarker/ext/dom/ElementModel;
Exceptions:
throws freemarker.template.TemplateModelException
MethodParameters:
Name Flags
key
freemarker.ext.dom.ElementModel getRootElement();
descriptor: ()Lfreemarker/ext/dom/ElementModel;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield freemarker.ext.dom.DocumentModel.rootElement:Lfreemarker/ext/dom/ElementModel;
ifnonnull 2
1: aload 0
aload 0
getfield freemarker.ext.dom.DocumentModel.node:Lorg/w3c/dom/Node;
checkcast org.w3c.dom.Document
invokeinterface org.w3c.dom.Document.getDocumentElement:()Lorg/w3c/dom/Element;
invokestatic freemarker.ext.dom.DocumentModel.wrap:(Lorg/w3c/dom/Node;)Lfreemarker/ext/dom/NodeModel;
checkcast freemarker.ext.dom.ElementModel
putfield freemarker.ext.dom.DocumentModel.rootElement:Lfreemarker/ext/dom/ElementModel;
2: StackMap locals:
StackMap stack:
aload 0
getfield freemarker.ext.dom.DocumentModel.rootElement:Lfreemarker/ext/dom/ElementModel;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lfreemarker/ext/dom/DocumentModel;
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/DocumentModel;
}
SourceFile: "DocumentModel.java"