/[suikacvs]/messaging/manakai/lib/Message/Util/ManakaiNode.pm
Suika

Contents of /messaging/manakai/lib/Message/Util/ManakaiNode.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.8 - (hide annotations) (download)
Tue Sep 27 05:30:45 2005 UTC (19 years, 9 months ago) by wakaba
Branch: MAIN
Changes since 1.7: +252 -224 lines
++ manakai/lib/Message/Util/ChangeLog	27 Sep 2005 05:29:27 -0000
2005-09-27  Wakaba  <wakaba@suika.fam.cx>

	* ManakaiNode.dis (ManakaiNodeStem): Use per-class
	variable for searching noderel properties instead
	of per-node properties.

++ manakai/lib/Message/DOM/ChangeLog	27 Sep 2005 05:27:35 -0000
2005-09-27  Wakaba  <wakaba@suika.fam.cx>

	* DOMCore.dis (DOMCore:nodeProp): New property.

++ manakai/lib/manakai/ChangeLog	27 Sep 2005 05:30:27 -0000
2005-09-27  Wakaba  <wakaba@suika.fam.cx>

	* XML.dis (dxm:nodeTypeName): New property.

1 wakaba 1.1 #!/usr/bin/perl
2     ## This file is automatically generated
3 wakaba 1.8 ## at 2005-09-27T05:19:37+00:00,
4 wakaba 1.1 ## from file "lib/Message/Util/ManakaiNode.dis",
5     ## module <http://suika.fam.cx/~wakaba/archive/2005/manakai/Util/ManakaiNode>,
6     ## for <http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom#Perl>.
7     ## Don't edit by hand!
8     use strict;
9     package Message::Util::ManakaiNode;
10 wakaba 1.8 our $VERSION = 20050927.0519;
11 wakaba 1.1 package Message::Util::ManakaiNode::ManakaiDOMNodeObject;
12 wakaba 1.8 our $VERSION = 20050927.0519;
13 wakaba 1.1 push our @ISA, 'Message::Util::IF::NodeStem';
14     sub _import_tree ($$) {
15     my ($self, $node) = @_;
16    
17     {
18 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #39)"
19 wakaba 1.1
20 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #37)"
21 wakaba 1.1 unless
22 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #1)"
23 wakaba 1.1 ($node->{
24     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #2)"
25 wakaba 1.4 'tid'
26     #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #3)"
27 wakaba 1.1 } eq
28     $self->{
29     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #4)"
30 wakaba 1.4 'tid'
31     #line 2 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #5)"
32 wakaba 1.1 }) {
33     my @node = ($node);
34 wakaba 1.2 NODES: while (defined (my $node = shift @node)) {
35 wakaba 1.1 next unless UNIVERSAL::isa ($node,
36    
37     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #6)"
38     'Message::Util::ManakaiNode::ManakaiDOMNodeObject'
39 wakaba 1.4 #line 6 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #7)"
40 wakaba 1.1 );
41     my @n;
42     for my $p (@{$node->{
43     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #8)"
44     'subnode2'
45 wakaba 1.4 #line 8 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #9)"
46 wakaba 1.1 }}) {
47     if (ref $node->{$p} eq 'ARRAY') {
48     push @n, @{$node->{$p}};
49     } elsif (ref $node->{$p} eq 'HASH') {
50     push @n, values %{$node->{$p}};
51     }
52     }
53     for my $p (@n,
54     map {$node->{$_}} @{$node->{
55     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #10)"
56     'subnode'
57 wakaba 1.4 #line 16 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #11)"
58 wakaba 1.1 }}) {
59     if (ref $p eq 'ARRAY') {
60     push @node, grep {UNIVERSAL::isa ($_,
61    
62     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #12)"
63     'Message::Util::ManakaiNode::ManakaiDOMNodeObject'
64 wakaba 1.4 #line 19 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #13)"
65 wakaba 1.1 )
66     and $_->{
67     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #14)"
68 wakaba 1.4 'tid'
69     #line 20 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #15)"
70 wakaba 1.1 } ne
71     $self->{
72     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #16)"
73 wakaba 1.4 'tid'
74     #line 21 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #17)"
75 wakaba 1.1 }} @$p;
76     } elsif (ref $p eq 'HASH') {
77     push @node, grep {UNIVERSAL::isa ($_,
78    
79     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #18)"
80     'Message::Util::ManakaiNode::ManakaiDOMNodeObject'
81 wakaba 1.4 #line 24 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #19)"
82 wakaba 1.1 )
83     and $_->{
84     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #20)"
85 wakaba 1.4 'tid'
86     #line 25 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #21)"
87 wakaba 1.1 } ne
88     $self->{
89     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #22)"
90 wakaba 1.4 'tid'
91     #line 26 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #23)"
92 wakaba 1.1 }}
93     values %$p;
94     }
95     }
96     for my $p (@{$node->{
97     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #24)"
98     'origin'
99 wakaba 1.4 #line 30 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #25)"
100 wakaba 1.1 }},
101     @{$node->{
102     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #26)"
103     'subnode0'
104 wakaba 1.4 #line 31 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #27)"
105 wakaba 1.1 }}) {
106     push @node, $node->{$p}
107     if defined $node->{$p} and
108     $node->{$p}->{
109     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #28)"
110 wakaba 1.4 'tid'
111     #line 34 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #29)"
112 wakaba 1.1 } ne
113     $self->{
114     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #30)"
115 wakaba 1.4 'tid'
116     #line 35 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #31)"
117 wakaba 1.1 };
118     }
119     $node->{
120     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #32)"
121 wakaba 1.4 'tid'
122     #line 37 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #33)"
123 wakaba 1.1 } = $self->{
124     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #34)"
125 wakaba 1.4 'tid'
126     #line 37 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #35)"
127 wakaba 1.1 };
128     }
129     }
130     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #36)"
131    
132     #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #38)"
133    
134     #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #40)"
135     }
136     }
137     sub _orphanate ($) {
138     my ($self) = @_;
139    
140     {
141 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #53)"
142 wakaba 1.1
143 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #51)"
144 wakaba 1.1 if
145 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #41)"
146 wakaba 1.1 ($self->
147     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #42)"
148     _is_externally_referred
149 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #43)"
150 wakaba 1.1 ) {
151     $self->
152     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #44)"
153     _change_tree_id
154 wakaba 1.4 #line 2 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #45)"
155 wakaba 1.1
156     (
157     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #46)"
158     (
159     sprintf 'mid:%d.%d.%s.dom.manakai@suika.fam.cx#',
160     time, $$,
161     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
162     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
163     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
164     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
165     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62]
166     )
167 wakaba 1.4 #line 3 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #47)"
168 wakaba 1.1 );
169     } else {
170     $self->
171     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #48)"
172     _destroy
173 wakaba 1.4 #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #49)"
174 wakaba 1.1 ;
175     }
176     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #50)"
177    
178     #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #52)"
179    
180     #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #54)"
181     }
182     }
183     sub _is_externally_referred ($) {
184     my ($self) = @_;
185     my $r;
186    
187     {
188 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #83)"
189 wakaba 1.1
190 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #81)"
191 wakaba 1.1 if
192 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #55)"
193 wakaba 1.1 ($self->{
194     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #56)"
195     'rc'
196 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #57)"
197 wakaba 1.1 }) {
198     $r =
199     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #58)"
200     1
201 wakaba 1.4 #line 2 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #59)"
202 wakaba 1.1 ;
203     } else {
204     my @node = ($self);
205     my %checked;
206 wakaba 1.2 NODES: while (defined (my $node = shift @node)) {
207 wakaba 1.1 next unless UNIVERSAL::isa ($node,
208    
209     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #60)"
210     'Message::Util::ManakaiNode::ManakaiDOMNodeObject'
211 wakaba 1.4 #line 8 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #61)"
212 wakaba 1.1 );
213     if ($node->{
214     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #62)"
215     'rc'
216 wakaba 1.4 #line 9 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #63)"
217 wakaba 1.1 }) {
218     $r =
219     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #64)"
220     1
221 wakaba 1.4 #line 10 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #65)"
222 wakaba 1.1 ;
223     last NODES;
224     } elsif ($checked{$node->{
225     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #66)"
226 wakaba 1.4 'nid'
227     #line 12 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #67)"
228 wakaba 1.1 }}) {
229     next NODES;
230     }
231     my @n;
232     for my $p (@{$node->{
233     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #68)"
234     'subnode2'
235 wakaba 1.4 #line 16 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #69)"
236 wakaba 1.1 }}) {
237     if (ref $node->{$p} eq 'ARRAY') {
238     push @n, @{$node->{$p}};
239     } elsif (ref $node->{$p} eq 'HASH') {
240     push @n, values %{$node->{$p}};
241     }
242     }
243     for my $p (@n,
244     map {$node->{$_}} @{$node->{
245     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #70)"
246     'subnode'
247 wakaba 1.4 #line 24 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #71)"
248 wakaba 1.1 }}) {
249     if (ref $p eq 'ARRAY') {
250     push @node, @$p;
251     } elsif (ref $p eq 'HASH') {
252     push @node, values %$p;
253     }
254     }
255     for my $p (@{$node->{
256     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #72)"
257     'origin'
258 wakaba 1.4 #line 31 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #73)"
259 wakaba 1.1 }}) {
260     unshift @node, $node->{$p} if $node->{$p};
261     ## NOTE: Puts the top of the list,
262     ## since upper-level nodes are expected to be referred
263     ## more than lower-levels.
264     }
265     for my $p (@{$node->{
266     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #74)"
267     'subnode0'
268 wakaba 1.4 #line 37 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #75)"
269 wakaba 1.1 }}) {
270     push @node, $node->{$p} if $node->{$p};
271     }
272     $checked{$node->{
273     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #76)"
274 wakaba 1.4 'nid'
275     #line 40 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #77)"
276     }} =
277     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #78)"
278     1
279     #line 40 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #79)"
280     ;
281 wakaba 1.1 }
282     }
283 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #80)"
284 wakaba 1.1
285 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #82)"
286 wakaba 1.1
287 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #84)"
288 wakaba 1.1 }
289     $r}
290     sub _destroy ($) {
291     my ($self) = @_;
292    
293     {
294 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #107)"
295 wakaba 1.1
296 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #105)"
297 wakaba 1.1 my
298 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #85)"
299 wakaba 1.1 @node = ($self);
300 wakaba 1.2 NODES: while (defined (my $node = shift @node)) {
301 wakaba 1.1 my @n;
302     for my $p (@{$node->{
303 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #86)"
304 wakaba 1.1 'subnode2'
305 wakaba 1.4 #line 4 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #87)"
306 wakaba 1.1 }}) {
307     if (ref $node->{$p} eq 'ARRAY') {
308     push @n, @{$node->{$p}};
309     } elsif (ref $node->{$p} eq 'HASH') {
310     push @n, values %{$node->{$p}};
311     }
312     }
313     for my $p (@n,
314     map {$node->{$_}} @{$node->{
315 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #88)"
316 wakaba 1.1 'subnode'
317 wakaba 1.4 #line 12 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #89)"
318 wakaba 1.1 }}) {
319     if (ref $p eq 'ARRAY') {
320     push @node, grep {UNIVERSAL::isa ($_,
321    
322 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #90)"
323 wakaba 1.1 'Message::Util::ManakaiNode::ManakaiDOMNodeObject'
324 wakaba 1.4 #line 15 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #91)"
325 wakaba 1.1 )
326     and defined $_->{
327 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #92)"
328     'nid'
329     #line 16 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #93)"
330 wakaba 1.1 }} @$p;
331     } elsif (ref $p eq 'HASH') {
332     push @node, grep {UNIVERSAL::isa ($_,
333    
334 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #94)"
335 wakaba 1.1 'Message::Util::ManakaiNode::ManakaiDOMNodeObject'
336 wakaba 1.4 #line 19 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #95)"
337 wakaba 1.1 )
338     and defined $_->{
339 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #96)"
340     'nid'
341     #line 20 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #97)"
342 wakaba 1.1 }}
343     values %$p;
344     }
345     }
346     for my $p (@{$node->{
347 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #98)"
348 wakaba 1.1 'origin'
349 wakaba 1.4 #line 24 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #99)"
350 wakaba 1.1 }},
351     @{$node->{
352 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #100)"
353 wakaba 1.1 'subnode0'
354 wakaba 1.4 #line 25 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #101)"
355 wakaba 1.1 }}) {
356     push @node, $node->{$p}
357     if defined $node->{$p} and
358     defined $node->{$p}->{
359 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #102)"
360     'nid'
361     #line 28 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #103)"
362 wakaba 1.1 };
363     }
364     %$node = ();
365     }
366 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #104)"
367 wakaba 1.1
368 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #106)"
369 wakaba 1.1
370 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #108)"
371 wakaba 1.1 }
372     }
373     sub _change_tree_id ($$) {
374     my ($self, $treeID) = @_;
375    
376     {
377 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #137)"
378 wakaba 1.1
379 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #135)"
380 wakaba 1.1 unless
381 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #109)"
382 wakaba 1.1 ($self->{
383 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #110)"
384     'tid'
385     #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #111)"
386 wakaba 1.1 } eq $treeID) {
387     my @node = ($self);
388 wakaba 1.2 NODES: while (defined (my $node = shift @node)) {
389 wakaba 1.1 next unless UNIVERSAL::isa ($node,
390    
391 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #112)"
392 wakaba 1.1 'Message::Util::ManakaiNode::ManakaiDOMNodeObject'
393 wakaba 1.4 #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #113)"
394 wakaba 1.1 );
395     my @n;
396     for my $p (@{$node->{
397 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #114)"
398 wakaba 1.1 'subnode2'
399 wakaba 1.4 #line 7 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #115)"
400 wakaba 1.1 }}) {
401     if (ref $node->{$p} eq 'ARRAY') {
402     push @n, @{$node->{$p}};
403     } elsif (ref $node->{$p} eq 'HASH') {
404     push @n, values %{$node->{$p}};
405     }
406     }
407     for my $p (@n,
408     map {$node->{$_}} @{$node->{
409 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #116)"
410 wakaba 1.1 'subnode'
411 wakaba 1.4 #line 15 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #117)"
412 wakaba 1.1 }}) {
413     if (ref $p eq 'ARRAY') {
414     push @node, grep {UNIVERSAL::isa ($_,
415    
416 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #118)"
417 wakaba 1.1 'Message::Util::ManakaiNode::ManakaiDOMNodeObject'
418 wakaba 1.4 #line 18 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #119)"
419 wakaba 1.1 )
420     and
421     $_->{
422 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #120)"
423     'tid'
424     #line 20 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #121)"
425 wakaba 1.1 } ne $treeID} @$p;
426     } elsif (ref $p eq 'HASH') {
427     push @node, grep {UNIVERSAL::isa ($_,
428    
429 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #122)"
430 wakaba 1.1 'Message::Util::ManakaiNode::ManakaiDOMNodeObject'
431 wakaba 1.4 #line 23 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #123)"
432 wakaba 1.1 )
433     and $_->{
434 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #124)"
435     'tid'
436     #line 24 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #125)"
437 wakaba 1.1 } ne $treeID}
438     values %$p;
439     }
440     }
441     for my $p (@{$node->{
442 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #126)"
443 wakaba 1.1 'origin'
444 wakaba 1.4 #line 28 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #127)"
445 wakaba 1.1 }},
446     @{$node->{
447 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #128)"
448 wakaba 1.1 'subnode0'
449 wakaba 1.4 #line 29 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #129)"
450 wakaba 1.1 }}) {
451     push @node, $node->{$p}
452     if defined $node->{$p} and
453     $node->{$p}->{
454 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #130)"
455     'tid'
456     #line 32 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #131)"
457 wakaba 1.1 } ne $treeID;
458     }
459     $node->{
460 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #132)"
461     'tid'
462     #line 34 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #133)"
463 wakaba 1.1 } = $treeID;
464     }
465     }
466 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #134)"
467 wakaba 1.1
468 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #136)"
469 wakaba 1.1
470 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #138)"
471 wakaba 1.1 }
472     }
473     sub _new ($) {
474     my ($self) = @_;
475     my $r;
476    
477     {
478 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #167)"
479 wakaba 1.1
480 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #165)"
481 wakaba 1.1
482 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #139)"
483 wakaba 1.1 $r = bless {
484    
485 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #140)"
486 wakaba 1.1 'origin'
487 wakaba 1.4 #line 2 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #141)"
488 wakaba 1.1 => [],
489    
490 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #142)"
491 wakaba 1.1 'subnode0'
492 wakaba 1.4 #line 3 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #143)"
493 wakaba 1.1 => [],
494    
495 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #144)"
496 wakaba 1.1 'subnode'
497 wakaba 1.4 #line 4 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #145)"
498 wakaba 1.1 => [],
499    
500 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #146)"
501 wakaba 1.1 'subnode2'
502 wakaba 1.4 #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #147)"
503 wakaba 1.1 => [],
504    
505 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #148)"
506 wakaba 1.1 'irefnode'
507 wakaba 1.4 #line 6 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #149)"
508 wakaba 1.1 => [],
509    
510 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #150)"
511 wakaba 1.1 'anydata'
512 wakaba 1.4 #line 7 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #151)"
513 wakaba 1.1 => [],
514    
515 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #152)"
516 wakaba 1.1 'anydata2'
517 wakaba 1.4 #line 8 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #153)"
518 wakaba 1.1 => [],
519    
520 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #154)"
521 wakaba 1.1 'rc'
522 wakaba 1.4 #line 9 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #155)"
523 wakaba 1.1 => 0,
524    
525 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #156)"
526     'tid'
527     #line 10 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #157)"
528 wakaba 1.1 =>
529 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #158)"
530 wakaba 1.1 (
531     sprintf 'mid:%d.%d.%s.dom.manakai@suika.fam.cx#',
532     time, $$,
533     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
534     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
535     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
536     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
537     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62]
538     )
539 wakaba 1.4 #line 10 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #159)"
540 wakaba 1.1 ,
541    
542 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #160)"
543     'nid'
544     #line 11 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #161)"
545 wakaba 1.1 =>
546 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #162)"
547 wakaba 1.1 (
548     sprintf 'mid:%d.%d.%s.dom.manakai@suika.fam.cx#',
549     time, $$,
550     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
551     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
552     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
553     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
554     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62]
555     )
556 wakaba 1.4 #line 11 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #163)"
557 wakaba 1.1 ,
558     }, ref $self || $self;
559 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #164)"
560 wakaba 1.1
561 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #166)"
562 wakaba 1.1
563 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #168)"
564 wakaba 1.1 }
565     $r}
566     sub _is_same_node ($$) {
567     my ($self, $node) = @_;
568     my $r;
569    
570     {
571 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #181)"
572 wakaba 1.1
573 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #179)"
574 wakaba 1.1 if
575 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #169)"
576 wakaba 1.1 (ref $node and
577     UNIVERSAL::isa ($node,
578    
579 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #170)"
580 wakaba 1.1 'Message::Util::ManakaiNode::ManakaiDOMNodeObject'
581 wakaba 1.4 #line 3 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #171)"
582 wakaba 1.1 ) and
583     $node->{
584 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #172)"
585     'nid'
586     #line 4 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #173)"
587 wakaba 1.1 } eq $self->{
588 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #174)"
589     'nid'
590     #line 4 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #175)"
591 wakaba 1.1 }) {
592     $r =
593 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #176)"
594 wakaba 1.1 1
595 wakaba 1.4 #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #177)"
596 wakaba 1.1 ;
597     }
598 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #178)"
599 wakaba 1.1
600 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #180)"
601 wakaba 1.1
602 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #182)"
603 wakaba 1.1 }
604     $r}
605     sub _new_reference ($$) {
606     my ($self, $class) = @_;
607     my $r;
608    
609     {
610 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=newReference][@type=DISLang:Method]/Return[@Type=ManakaiDOM:ManakaiDOMNodeReference][@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #193)"
611 wakaba 1.1
612 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=newReference][@type=DISLang:Method]/Return[@Type=ManakaiDOM:ManakaiDOMNodeReference][@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #191)"
613 wakaba 1.1
614 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=newReference][@type=DISLang:Method]/Return[@Type=ManakaiDOM:ManakaiDOMNodeReference][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #183)"
615 wakaba 1.1 $r = bless {
616    
617 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #184)"
618 wakaba 1.1 'node'
619 wakaba 1.4 #line 2 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=newReference][@type=DISLang:Method]/Return[@Type=ManakaiDOM:ManakaiDOMNodeReference][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #185)"
620 wakaba 1.1 => $self,
621     }, ref $class ? ref $class : defined $class ? $class :
622    
623 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #186)"
624 wakaba 1.1 'Message::Util::ManakaiNode::ManakaiDOMNodeReference'
625 wakaba 1.4 #line 4 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=newReference][@type=DISLang:Method]/Return[@Type=ManakaiDOM:ManakaiDOMNodeReference][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #187)"
626 wakaba 1.1 ;
627     $self->{
628 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #188)"
629 wakaba 1.1 'rc'
630 wakaba 1.4 #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=newReference][@type=DISLang:Method]/Return[@Type=ManakaiDOM:ManakaiDOMNodeReference][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #189)"
631 wakaba 1.1 }++;
632 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #190)"
633 wakaba 1.1
634 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #192)"
635 wakaba 1.1
636 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #194)"
637 wakaba 1.1 }
638     $r}
639     use overload bool => sub () {1}, 'eq', '_is_same_node', fallback => 1;
640     $Message::DOM::ClassFeature{q<Message::Util::ManakaiNode::ManakaiDOMNodeObject>} = {};
641     $Message::DOM::ClassPoint{q<Message::Util::ManakaiNode::ManakaiDOMNodeObject>} = 0;
642     package Message::Util::ManakaiNode::ManakaiNodeStem;
643 wakaba 1.8 our $VERSION = 20050927.0519;
644 wakaba 1.1 push our @ISA, 'Message::Util::IF::NodeStem';
645     sub _import_tree ($$) {
646     my ($self, $node) = @_;
647    
648     {
649 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #217)"
650 wakaba 1.1
651 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #215)"
652 wakaba 1.1 my
653 wakaba 1.4 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #195)"
654 wakaba 1.1 @node = ($node);
655 wakaba 1.2 NODES: while (defined (my $node = shift @node)) {
656 wakaba 1.1 next unless ref $node;
657 wakaba 1.5 next if ${$node->{
658 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #196)"
659     'tid'
660     #line 4 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #197)"
661 wakaba 1.5 }} eq
662     ${$self->{
663 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #198)"
664     'tid'
665     #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #199)"
666 wakaba 1.5 }};
667 wakaba 1.1 my @n;
668 wakaba 1.8 my $nt = $Message::Util::ManakaiNode::ManakaiNodeRef::Prop{
669     $node->{
670 wakaba 1.4 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #200)"
671 wakaba 1.8 't'
672     #line 8 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #201)"
673     }
674     };
675     for my $p (@{$nt->{
676     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #202)"
677     's2'
678     #line 10 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #203)"
679 wakaba 1.1 }}) {
680     if (ref $node->{$p} eq 'ARRAY') {
681     push @n, @{$node->{$p}};
682     } elsif (ref $node->{$p} eq 'HASH') {
683     push @n, values %{$node->{$p}};
684     }
685     }
686     for my $p (@n,
687 wakaba 1.8 map {$node->{$_}} @{$nt->{
688     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #204)"
689     's'
690     #line 18 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #205)"
691 wakaba 1.1 }}) {
692     if (ref $p eq 'ARRAY') {
693     push @node, @$p;
694     } elsif (ref $p eq 'HASH') {
695     push @node, values %$p;
696     }
697     }
698 wakaba 1.8 for my $p (@{$nt->{
699     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #206)"
700     'o'
701     #line 25 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #207)"
702 wakaba 1.1 }},
703 wakaba 1.8 @{$nt->{
704     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #208)"
705     's0'
706     #line 26 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #209)"
707 wakaba 1.1 }}) {
708     push @node, $node->{$p};
709     }
710     $node->{
711 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #210)"
712 wakaba 1.4 'tid'
713 wakaba 1.8 #line 29 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #211)"
714 wakaba 1.1 } = $self->{
715 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #212)"
716 wakaba 1.4 'tid'
717 wakaba 1.8 #line 29 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=importTree][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #213)"
718 wakaba 1.1 };
719     }
720 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #214)"
721 wakaba 1.1
722 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #216)"
723 wakaba 1.1
724 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #218)"
725 wakaba 1.1 }
726     }
727 wakaba 1.7 sub _new ($$) {
728     my ($self, $className) = @_;
729 wakaba 1.1 my $r;
730    
731     {
732 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #249)"
733 wakaba 1.1
734 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #247)"
735 wakaba 1.1
736 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #219)"
737 wakaba 1.1 $r = bless {
738    
739 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #220)"
740 wakaba 1.1 'origin'
741 wakaba 1.8 #line 2 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #221)"
742 wakaba 1.1 => [],
743    
744 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #222)"
745 wakaba 1.1 'subnode0'
746 wakaba 1.8 #line 3 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #223)"
747 wakaba 1.1 => [],
748    
749 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #224)"
750 wakaba 1.1 'subnode'
751 wakaba 1.8 #line 4 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #225)"
752 wakaba 1.1 => [],
753    
754 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #226)"
755 wakaba 1.1 'subnode2'
756 wakaba 1.8 #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #227)"
757 wakaba 1.1 => [],
758    
759 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #228)"
760 wakaba 1.1 'irefnode'
761 wakaba 1.8 #line 6 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #229)"
762 wakaba 1.1 => [],
763    
764 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #230)"
765 wakaba 1.1 'anydata'
766 wakaba 1.8 #line 7 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #231)"
767 wakaba 1.1 => [],
768    
769 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #232)"
770 wakaba 1.1 'anydata2'
771 wakaba 1.8 #line 8 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #233)"
772 wakaba 1.1 => [],
773    
774 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #234)"
775 wakaba 1.7 't'
776 wakaba 1.8 #line 9 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #235)"
777 wakaba 1.7 => $className,
778    
779 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #236)"
780 wakaba 1.1 'rc'
781 wakaba 1.8 #line 10 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #237)"
782 wakaba 1.1 => 0,
783    
784 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #238)"
785 wakaba 1.4 'tid'
786 wakaba 1.8 #line 11 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #239)"
787 wakaba 1.5 => \ (
788 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #240)"
789 wakaba 1.1 (
790     sprintf 'mid:%d.%d.%s.dom.manakai@suika.fam.cx#',
791     time, $$,
792     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
793     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
794     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
795     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
796     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62]
797     )
798 wakaba 1.8 #line 11 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #241)"
799 wakaba 1.5 ),
800 wakaba 1.1
801 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #242)"
802 wakaba 1.4 'nid'
803 wakaba 1.8 #line 12 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #243)"
804 wakaba 1.1 =>
805 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #244)"
806 wakaba 1.1 (
807     sprintf 'mid:%d.%d.%s.dom.manakai@suika.fam.cx#',
808     time, $$,
809     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
810     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
811     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
812     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
813     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62]
814     )
815 wakaba 1.8 #line 12 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=new][@type=DISLang:Method]/Return[@Type=NodeStem][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #245)"
816 wakaba 1.1 ,
817     }, ref $self || $self;
818 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #246)"
819 wakaba 1.1
820 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #248)"
821 wakaba 1.1
822 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #250)"
823 wakaba 1.1 }
824     $r}
825     sub _orphanate ($) {
826     my ($self) = @_;
827    
828     {
829 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #263)"
830 wakaba 1.1
831 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #261)"
832 wakaba 1.1 if
833 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #251)"
834 wakaba 1.1 ($self->
835 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #252)"
836 wakaba 1.1 _is_externally_referred
837 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #253)"
838 wakaba 1.1 ) {
839     $self->
840 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #254)"
841 wakaba 1.1 _change_tree_id
842 wakaba 1.8 #line 2 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #255)"
843 wakaba 1.1
844 wakaba 1.5 (\(
845 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #256)"
846 wakaba 1.1 (
847     sprintf 'mid:%d.%d.%s.dom.manakai@suika.fam.cx#',
848     time, $$,
849     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
850     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
851     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
852     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62] .
853     ['A'..'Z', 'a'..'z', '0'..'9']->[rand 62]
854     )
855 wakaba 1.8 #line 3 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #257)"
856 wakaba 1.5 ));
857 wakaba 1.1 } else {
858     $self->
859 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #258)"
860 wakaba 1.1 _destroy
861 wakaba 1.8 #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=orphanate][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #259)"
862 wakaba 1.1 ;
863     }
864 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #260)"
865 wakaba 1.1
866 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #262)"
867 wakaba 1.1
868 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #264)"
869 wakaba 1.1 }
870     }
871     sub _is_externally_referred ($) {
872     my ($self) = @_;
873     my $r;
874    
875     {
876 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #291)"
877 wakaba 1.1
878 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #289)"
879 wakaba 1.1 if
880 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #265)"
881 wakaba 1.1 ($self->{
882 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #266)"
883 wakaba 1.1 'rc'
884 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #267)"
885 wakaba 1.1 }) {
886     $r =
887 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #268)"
888 wakaba 1.1 1
889 wakaba 1.8 #line 2 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #269)"
890 wakaba 1.1 ;
891     } else {
892     my @node = ($self);
893     my %checked;
894 wakaba 1.2 NODES: while (defined (my $node = shift @node)) {
895 wakaba 1.1 next unless ref $node;
896     if ($node->{
897 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #270)"
898 wakaba 1.1 'rc'
899 wakaba 1.8 #line 8 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #271)"
900 wakaba 1.1 }) {
901     $r =
902 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #272)"
903 wakaba 1.1 1
904 wakaba 1.8 #line 9 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #273)"
905 wakaba 1.1 ;
906     last NODES;
907     } elsif ($checked{$node->{
908 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #274)"
909 wakaba 1.4 'nid'
910 wakaba 1.8 #line 11 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #275)"
911 wakaba 1.1 }}) {
912     next NODES;
913     }
914     my @n;
915 wakaba 1.8 my $nt = $Message::Util::ManakaiNode::ManakaiNodeRef::Prop{
916     $node->{
917     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #276)"
918     't'
919     #line 16 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #277)"
920     }
921     };
922     for my $p (@{$nt->{
923     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #278)"
924     's2'
925     #line 18 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #279)"
926     }||[]}) {
927 wakaba 1.1 if (ref $node->{$p} eq 'ARRAY') {
928     push @n, @{$node->{$p}};
929     } elsif (ref $node->{$p} eq 'HASH') {
930     push @n, values %{$node->{$p}};
931     }
932     }
933     for my $p (@n,
934 wakaba 1.8 map {$node->{$_}} @{$nt->{
935     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #280)"
936     's'
937     #line 26 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #281)"
938     }||[]}) {
939 wakaba 1.1 if (ref $p eq 'ARRAY') {
940     push @node, @$p;
941     } elsif (ref $p eq 'HASH') {
942     push @node, values %$p;
943     }
944     }
945 wakaba 1.8 for my $p (@{$nt->{
946     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #282)"
947     'o'
948     #line 33 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #283)"
949     }||[]}) {
950 wakaba 1.1 unshift @node, $node->{$p} if $node->{$p};
951     ## NOTE: Puts the top of the list,
952     ## since upper-level nodes are expected to be referred
953     ## more than lower-levels.
954     }
955 wakaba 1.8 for my $p (@{$nt->{
956     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #284)"
957     's0'
958     #line 39 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #285)"
959 wakaba 1.1 }}) {
960     push @node, $node->{$p} if $node->{$p};
961     }
962     $checked{$node->{
963 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #286)"
964 wakaba 1.4 'nid'
965 wakaba 1.8 #line 42 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isExternallyReferred][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #287)"
966 wakaba 1.1 }} = 1;
967     }
968     }
969 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #288)"
970 wakaba 1.1
971 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #290)"
972 wakaba 1.1
973 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #292)"
974 wakaba 1.1 }
975     $r}
976     sub _is_same_node ($$) {
977     my ($self, $node) = @_;
978     my $r;
979    
980     {
981 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #305)"
982 wakaba 1.1
983 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #303)"
984 wakaba 1.1 if
985 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #293)"
986 wakaba 1.1 (ref $node and
987     UNIVERSAL::isa ($node,
988 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #294)"
989     'Message::Util::ManakaiNode::ManakaiNodeStem'
990     #line 2 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #295)"
991 wakaba 1.1 ) and
992     $node->{
993 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #296)"
994 wakaba 1.4 'nid'
995 wakaba 1.8 #line 3 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #297)"
996 wakaba 1.1 } eq $self->{
997 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #298)"
998 wakaba 1.4 'nid'
999 wakaba 1.8 #line 3 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #299)"
1000 wakaba 1.1 }) {
1001     $r =
1002 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #300)"
1003 wakaba 1.1 1
1004 wakaba 1.8 #line 4 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=isSameNode][@type=DISLang:Method]/Return[@Type=DISPerl:Boolean::ManakaiDOM:all][@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #301)"
1005 wakaba 1.1 ;
1006     }
1007 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #302)"
1008 wakaba 1.1
1009 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #304)"
1010 wakaba 1.1
1011 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #306)"
1012 wakaba 1.1 }
1013     $r}
1014     sub _destroy ($) {
1015     my ($self) = @_;
1016    
1017     {
1018 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #323)"
1019 wakaba 1.1
1020 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #321)"
1021 wakaba 1.1 my
1022 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #307)"
1023 wakaba 1.1 @node = ($self);
1024 wakaba 1.2 NODES: while (defined (my $node = shift @node)) {
1025 wakaba 1.1 next unless ref $node and defined $node->{
1026 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #308)"
1027 wakaba 1.4 'nid'
1028 wakaba 1.8 #line 3 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #309)"
1029 wakaba 1.1 };
1030     my @n;
1031 wakaba 1.8 my $nt = $Message::Util::ManakaiNode::ManakaiNodeRef::Prop{
1032     $node->{
1033     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #310)"
1034     't'
1035     #line 6 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #311)"
1036     }
1037     };
1038     for my $p (@{$nt->{
1039     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #312)"
1040     's2'
1041     #line 8 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #313)"
1042 wakaba 1.1 }}) {
1043     if (ref $node->{$p} eq 'ARRAY') {
1044     push @n, @{$node->{$p}};
1045     } elsif (ref $node->{$p} eq 'HASH') {
1046     push @n, values %{$node->{$p}};
1047     }
1048     }
1049     for my $p (@n,
1050 wakaba 1.8 map {$node->{$_}} @{$nt->{
1051     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #314)"
1052     's'
1053     #line 16 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #315)"
1054 wakaba 1.1 }}) {
1055     if (ref $p eq 'ARRAY') {
1056     push @node, @$p;
1057     } elsif (ref $p eq 'HASH') {
1058     push @node, values %$p;
1059     }
1060     }
1061 wakaba 1.8 for my $p (@{$nt->{
1062     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #316)"
1063     'o'
1064     #line 23 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #317)"
1065 wakaba 1.1 }},
1066 wakaba 1.8 @{$nt->{
1067     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #318)"
1068     's0'
1069     #line 24 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #319)"
1070 wakaba 1.1 }}) {
1071     push @node, $node->{$p};
1072     }
1073     %$node = ();
1074     }
1075 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #320)"
1076 wakaba 1.1
1077 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #322)"
1078 wakaba 1.1
1079 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #324)"
1080 wakaba 1.1 }
1081     }
1082     sub _change_tree_id ($$) {
1083     my ($self, $treeID) = @_;
1084    
1085     {
1086 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #343)"
1087 wakaba 1.1
1088 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #341)"
1089 wakaba 1.1 my
1090 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #325)"
1091 wakaba 1.5 $tid = ref $treeID ? $treeID : \$treeID;
1092     my @node = ($self);
1093 wakaba 1.2 NODES: while (defined (my $node = shift @node)) {
1094 wakaba 1.1 next unless ref $node;
1095 wakaba 1.5 next if ${$node->{
1096 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #326)"
1097 wakaba 1.4 'tid'
1098 wakaba 1.8 #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #327)"
1099 wakaba 1.5 }} eq $$tid;
1100 wakaba 1.1 my @n;
1101 wakaba 1.8 my $nt = $Message::Util::ManakaiNode::ManakaiNodeRef::Prop{
1102     $node->{
1103     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #328)"
1104     't'
1105     #line 8 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #329)"
1106     }
1107     };
1108     for my $p (@{$nt->{
1109     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #330)"
1110     's2'
1111     #line 10 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #331)"
1112 wakaba 1.1 }}) {
1113     if (ref $node->{$p} eq 'ARRAY') {
1114     push @n, @{$node->{$p}};
1115     } elsif (ref $node->{$p} eq 'HASH') {
1116     push @n, values %{$node->{$p}};
1117     }
1118     }
1119     for my $p (@n,
1120 wakaba 1.8 map {$node->{$_}} @{$nt->{
1121     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #332)"
1122     's'
1123     #line 18 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #333)"
1124 wakaba 1.1 }}) {
1125     if (ref $p eq 'ARRAY') {
1126     push @node, @$p;
1127     } elsif (ref $p eq 'HASH') {
1128     push @node, values %$p;
1129     }
1130     }
1131 wakaba 1.8 for my $p (@{$nt->{
1132     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #334)"
1133     'o'
1134     #line 25 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #335)"
1135 wakaba 1.1 }},
1136 wakaba 1.8 @{$nt->{
1137     #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #336)"
1138     's0'
1139     #line 26 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #337)"
1140 wakaba 1.1 }}) {
1141     push @node, $node->{$p};
1142     }
1143     $node->{
1144 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #338)"
1145 wakaba 1.4 'tid'
1146 wakaba 1.8 #line 29 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeStem][@QName=ManakaiDOM:ManakaiDOMNodeObject][@QName=ManakaiNodeStem][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=changeTreeID][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #339)"
1147 wakaba 1.5 } = $tid;
1148 wakaba 1.1 }
1149 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #340)"
1150 wakaba 1.1
1151 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #342)"
1152 wakaba 1.1
1153 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #344)"
1154 wakaba 1.1 }
1155     }
1156     use overload bool => sub () {1}, 'eq', '_is_same_node', fallback => 1;
1157     $Message::DOM::ClassFeature{q<Message::Util::ManakaiNode::ManakaiNodeStem>} = {};
1158     $Message::DOM::ClassPoint{q<Message::Util::ManakaiNode::ManakaiNodeStem>} = 0;
1159     package Message::Util::ManakaiNode::ManakaiDOMNodeReference;
1160 wakaba 1.8 our $VERSION = 20050927.0519;
1161 wakaba 1.1 push our @ISA, 'Message::Util::IF::NodeRef';
1162     *DESTROY = \&_destroy;
1163     sub _destroy ($) {
1164     my ($self) = @_;
1165    
1166     {
1167 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #361)"
1168 wakaba 1.1
1169 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #359)"
1170 wakaba 1.1 my
1171 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #345)"
1172 wakaba 1.1 $node = $self->{
1173 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #346)"
1174 wakaba 1.1 'node'
1175 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #347)"
1176 wakaba 1.1 };
1177     if ($node) {
1178     CORE::delete $self->{
1179 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #348)"
1180 wakaba 1.1 'node'
1181 wakaba 1.8 #line 3 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #349)"
1182 wakaba 1.1 };
1183     unless ($self->{
1184 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #350)"
1185 wakaba 1.4 'w'
1186 wakaba 1.8 #line 4 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #351)"
1187 wakaba 1.1 }) {
1188     $node->{
1189 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #352)"
1190 wakaba 1.1 'rc'
1191 wakaba 1.8 #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #353)"
1192 wakaba 1.1 }--;
1193     unless ($node->
1194 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #354)"
1195 wakaba 1.1 _is_externally_referred
1196 wakaba 1.8 #line 6 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #355)"
1197 wakaba 1.1 ) {
1198     $node->
1199 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #356)"
1200 wakaba 1.1 _destroy
1201 wakaba 1.8 #line 7 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #357)"
1202 wakaba 1.1 ;
1203     }
1204     }
1205     } else {
1206     warn ref ($self) . q{->DESTROY: there is no associated }.
1207     q{node object - you have a global variable or }.
1208     qq{potential memory-leak detected\n};
1209     }
1210 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #358)"
1211 wakaba 1.1
1212 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #360)"
1213 wakaba 1.1
1214 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #362)"
1215 wakaba 1.1 }
1216     }
1217     $Message::DOM::ClassFeature{q<Message::Util::ManakaiNode::ManakaiDOMNodeReference>} = {};
1218     $Message::DOM::ClassPoint{q<Message::Util::ManakaiNode::ManakaiDOMNodeReference>} = 0;
1219     package Message::Util::ManakaiNode::ManakaiNodeRef;
1220 wakaba 1.8 our $VERSION = 20050927.0519;
1221 wakaba 1.1 push our @ISA, 'Message::Util::IF::NodeRef';
1222 wakaba 1.2 sub free ($) {
1223     my ($self) = @_;
1224    
1225     {
1226 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/ResourceDef[@Name=free][@type=DISLang|Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #371)"
1227 wakaba 1.2
1228 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/ResourceDef[@Name=free][@type=DISLang|Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #369)"
1229 wakaba 1.2
1230 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/ResourceDef[@Name=free][@type=DISLang|Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #363)"
1231 wakaba 1.2 $self->{
1232 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #364)"
1233 wakaba 1.2 'node'
1234 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/ResourceDef[@Name=free][@type=DISLang|Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #365)"
1235 wakaba 1.2 }->
1236 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #366)"
1237 wakaba 1.2 _destroy
1238 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/ResourceDef[@Name=free][@type=DISLang|Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #367)"
1239 wakaba 1.2 ;
1240 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #368)"
1241 wakaba 1.2
1242 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #370)"
1243 wakaba 1.2
1244 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #372)"
1245 wakaba 1.2 }
1246     }
1247 wakaba 1.1 *DESTROY = \&_destroy;
1248     sub _destroy ($) {
1249     my ($self) = @_;
1250    
1251     {
1252 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [b] (Chunk #389)"
1253 wakaba 1.1
1254 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [bc] (Chunk #387)"
1255 wakaba 1.1 my
1256 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #373)"
1257 wakaba 1.1 $node = $self->{
1258 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #374)"
1259 wakaba 1.1 'node'
1260 wakaba 1.8 #line 1 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #375)"
1261 wakaba 1.1 };
1262     if ($node) {
1263     CORE::delete $self->{
1264 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #376)"
1265 wakaba 1.1 'node'
1266 wakaba 1.8 #line 3 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #377)"
1267 wakaba 1.1 };
1268     unless ($self->{
1269 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #378)"
1270 wakaba 1.4 'w'
1271 wakaba 1.8 #line 4 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #379)"
1272 wakaba 1.1 }) {
1273     $node->{
1274 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #380)"
1275 wakaba 1.1 'rc'
1276 wakaba 1.8 #line 5 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #381)"
1277 wakaba 1.1 }--;
1278     unless ($node->
1279 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #382)"
1280 wakaba 1.1 _is_externally_referred
1281 wakaba 1.8 #line 6 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #383)"
1282 wakaba 1.1 ) {
1283     $node->
1284 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #384)"
1285 wakaba 1.1 _destroy
1286 wakaba 1.8 #line 7 "/document (lib/Message/Util/ManakaiNode.dis)/ClassDef[@QName=NodeRef][@QName=ManakaiDOM:ManakaiDOMNodeReference][@QName=ManakaiNodeRef][@type=dis:MultipleResource][@type=ManakaiDOM:IF][@type=ManakaiDOM:Class][@type=ManakaiDOM:Class]/IntMethod[@Name=destroy][@type=DISLang:Method]/Return[@type=DISLang:MethodReturn]/PerlDef [u] (Chunk #385)"
1287 wakaba 1.1 ;
1288     }
1289     }
1290     } else {
1291     warn ref ($self) . q{->DESTROY: there is no associated }.
1292     q{node object - you have a global variable or }.
1293     qq{potential memory-leak detected\n};
1294     }
1295 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/u] (Chunk #386)"
1296 wakaba 1.1
1297 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/bc] (Chunk #388)"
1298 wakaba 1.1
1299 wakaba 1.8 #line 1 "lib/Message/Util/ManakaiNode.dis [/b] (Chunk #390)"
1300 wakaba 1.1 }
1301     }
1302     $Message::DOM::ClassFeature{q<Message::Util::ManakaiNode::ManakaiNodeRef>} = {};
1303     $Message::DOM::ClassPoint{q<Message::Util::ManakaiNode::ManakaiNodeRef>} = 0;
1304 wakaba 1.7 $Message::Util::ManakaiNode::ManakaiNodeRef::Prop{q<Message::Util::ManakaiNode::ManakaiNodeRef>} = {};
1305 wakaba 1.1 for ($Message::Util::IF::NodeRef::, $Message::Util::IF::NodeStem::){}
1306     ## License: <http://suika.fam.cx/~wakaba/archive/2004/8/18/license#Perl+MPL>
1307     1;

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24