/[suikacvs]/messaging/manakai/lib/Message/DOM/Document.pm
Suika

Diff of /messaging/manakai/lib/Message/DOM/Document.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.10 by wakaba, Sun Nov 5 09:16:30 2006 UTC revision 1.16 by wakaba, Sat Dec 30 15:43:00 2006 UTC
# Line 1  Line 1 
1  #!/usr/bin/perl  #!/usr/bin/perl
2  ## This file is automatically generated  ## This file is automatically generated
3  ##      at 2006-11-05T08:27:03+00:00,  ##      at 2006-12-30T14:33:19+00:00,
4  ##      from file "Document.dis",  ##      from file "../DOM/Document.dis",
5  ##      module <http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom#ManakaiDOM.Document>,  ##      module <http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom#ManakaiDOM.Document>,
6  ##      for <http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom#ManakaiDOMLatest>.  ##      for <http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom#all>.
7  ## Don't edit by hand!  ## Don't edit by hand!
8  use strict;  use strict;
9  require Message::DOM::DOMCore;  require Message::DOM::DOMCore;
10  require Message::DOM::TreeCore;  require Message::DOM::TreeCore;
11  require Message::Util::Error::DOMException;  require Message::Util::Error::DOMException;
12  package Message::DOM::Document;  package Message::DOM::Document;
13  our $VERSION = 20061105.0827;  our $VERSION = 20061230.1433;
14  package Message::DOM::Document::ManakaiDOMImplementationDocument;  package Message::DOM::Document::ManakaiDOMImplementationDocument;
15  our $VERSION = 20061105.0827;  our $VERSION = 20061230.1433;
16  push @Message::DOM::DOMCore::ManakaiDOMImplementation::ISA, q<Message::DOM::Document::ManakaiDOMImplementationDocument> unless Message::DOM::DOMCore::ManakaiDOMImplementation->isa (q<Message::DOM::Document::ManakaiDOMImplementationDocument>);  push @Message::DOM::DOMCore::ManakaiDOMImplementation::ISA, q<Message::DOM::Document::ManakaiDOMImplementationDocument> unless Message::DOM::DOMCore::ManakaiDOMImplementation->isa (q<Message::DOM::Document::ManakaiDOMImplementationDocument>);
17  sub create_document ($;$$$) {  sub create_document ($;$$$) {
18  my ($self, $namespaceURI, $qualifiedName, $doctype) = @_;  my ($self, $namespaceURI, $qualifiedName, $doctype) = @_;
# Line 23  if Line 23  if
23  (CORE::defined $namespaceURI and CORE::length $namespaceURI == 0) {  (CORE::defined $namespaceURI and CORE::length $namespaceURI == 0) {
24    require Message::DOM::DOMMain;    require Message::DOM::DOMMain;
25        
26  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/main#empty-namespace-uri', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:tag:suika.fam.cx,2005-09:1162711890:16031:uDMne5008+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/main#empty-namespace-uri', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:1167487489:32060:02l5m38360';
27    
28  ;  ;
29    
30        $namespaceURI = undef;
   
 {  
   
   
 $namespaceURI = undef;  
     
   
   
 }  
   
 ;  
31  }  }
32    
33    
# Line 47  my $r; Line 36  my $r;
36    
37  {  {
38    
39  my  require
40  $bag =  Scalar::Util;
41  $self->{'b'}  $r = bless \{
 ;  
 my $stem;  
   
   
 {  
   
   
 $stem = 'Message::DOM::Document::ManakaiDOMDocument'->___create_node_stem ($bag, {  
42        
43  'rc'  'child'
44   => 0,   => [],
45        
46  'id'  'impl'
47   => \   => $self,
 (  
   'tag:suika.fam.cx,2005-09:' . time . ':' . $$ . ':' .  
   (++$Message::Util::ManakaiNode::UniqueIDN)  
 )  
 ,  
 }, {  
     'impl' => $self,  
   });  
   
   
 {  
   
 if  
 (defined 'Message::DOM::Document::ManakaiDOMDocument') {  
   if (ref 'Message::DOM::Document::ManakaiDOMDocument' eq 'SCALAR') {  
     $stem->{'cls'} = 'Message::DOM::Document::ManakaiDOMDocument';  
   } elsif (defined $Message::Util::ManakaiStringRef::Value{'Message::DOM::Document::ManakaiDOMDocument'}) {  
     $stem->{'cls'} = $Message::Util::ManakaiStringRef::Value{'Message::DOM::Document::ManakaiDOMDocument'};  
   } else {  
     require Scalar::Util;  
     $stem->{'cls'} = $Message::Util::ManakaiStringRef::Value{'Message::DOM::Document::ManakaiDOMDocument'} = \('Message::DOM::Document::ManakaiDOMDocument');  
     Scalar::Util::weaken ($Message::Util::ManakaiStringRef::Value{'Message::DOM::Document::ManakaiDOMDocument'});  
   }  
 } else {  
   CORE::delete $stem->{'cls'};  
 }  
   
   
 }  
   
 ;  
 $bag->{${$stem->{  
 'id'  
 }}} = $stem;  
   
   
 }  
   
 ;  
   
   
 {  
   
   
 $r = ${$stem->{  
 'cls'  
 }}->___create_node_ref ({  
48        
49  'id'  'http://www.w3.org/2001/04/infoset#version'
50   => $stem->{   => '1.0',
 'id'  
 },  
51        
52  'b'  'chk'
53   => $bag,   => 1,
54  }, {  },
55    });  'Message::DOM::Document::ManakaiDOMDocument'
 $stem->{  
 'rc'  
 }++;  
   
   
 }  
   
56  ;  ;
57    
58  if (defined $doctype) {  if (defined $doctype) {
# Line 198  report Message::DOM::DOMCore::ManakaiDOM Line 123  report Message::DOM::DOMCore::ManakaiDOM
123  $r}  $r}
124  $Message::DOM::DOMFeature::ClassInfo->{q<Message::DOM::Document::ManakaiDOMImplementationDocument>}->{has_feature} = {};  $Message::DOM::DOMFeature::ClassInfo->{q<Message::DOM::Document::ManakaiDOMImplementationDocument>}->{has_feature} = {};
125  $Message::DOM::ClassPoint{q<Message::DOM::Document::ManakaiDOMImplementationDocument>} = 0;  $Message::DOM::ClassPoint{q<Message::DOM::Document::ManakaiDOMImplementationDocument>} = 0;
126  package Message::DOM::IFLatest::Document;  package Message::DOM::IF::Document;
127  our $VERSION = 20061105.0827;  our $VERSION = 20061230.1433;
128  package Message::DOM::Document::ManakaiDOMDocument;  package Message::DOM::Document::ManakaiDOMDocument;
129  our $VERSION = 20061105.0827;  our $VERSION = 20061230.1433;
130  push our @ISA, 'Message::DOM::TreeCore::ManakaiDOMNode',  push our @ISA, 'Message::DOM::TreeCore::ManakaiDOMNode',
131  'Message::DOM::IF::Document',  'Message::DOM::IF::Document',
132  'Message::DOM::IF::Node',  'Message::DOM::IF::Node';
 'Message::DOM::IFLatest::Document',  
 'Message::DOM::IFLatest::Node',  
 'Message::DOM::IFLevel1::Document',  
 'Message::DOM::IFLevel1::Node',  
 'Message::DOM::IFLevel2::Document',  
 'Message::DOM::IFLevel2::Node',  
 'Message::DOM::IFLevel3::Document',  
 'Message::DOM::IFLevel3::Node';  
 sub ___create_node_stem ($$$$) {  
 my ($self, $bag, $obj, $opt) = @_;  
 my $r = {};  
   
 {  
   
   
 $obj->{  
 'child'  
 } = [];  
 $obj->{  
 'do'  
 } = {};  
 $obj->{  
 'http://www.w3.org/2001/04/infoset#version'  
 } = '1.0';  
   
   
 {  
   
   
 $obj->{'impl'} = $opt->{'impl'}->{  
 'id'  
 };  
 $bag->{${$opt->{'impl'}->{  
 'id'  
 }}}  
     ->{'lpmi'}->{${$obj->{  
 'id'  
 }}}  
   = $obj->{  
 'id'  
 };  
   
   
 }  
   
 ;  
 $r = $obj;  
   
   
 }  
 $r}  
133  sub node_type ($;$) {  sub node_type ($;$) {
134  if (@_ == 1) {my ($self) = @_;  if (@_ == 1) {my ($self) = @_;
135  my $r;  my $r;
# Line 504  local $Error::Depth = $Error::Depth - 1; Line 378  local $Error::Depth = $Error::Depth - 1;
378    
379  {  {
380    
381  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
382    
383    
384  }  }
# Line 525  local $Error::Depth = $Error::Depth - 1; Line 399  local $Error::Depth = $Error::Depth - 1;
399    
400  {  {
401    
402  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
403    
404    
405  }  }
# Line 553  local $Error::Depth = $Error::Depth - 1; Line 427  local $Error::Depth = $Error::Depth - 1;
427    
428  {  {
429    
430  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
431    
432    
433  }  }
# Line 576  local $Error::Depth = $Error::Depth - 1; Line 450  local $Error::Depth = $Error::Depth - 1;
450    
451  {  {
452    
453  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1';
454    
455    
456  }  }
# Line 599  local $Error::Depth = $Error::Depth - 1; Line 473  local $Error::Depth = $Error::Depth - 1;
473    
474  {  {
475    
476  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1';
477    
478    
479  }  }
# Line 623  report Message::DOM::DOMCore::ManakaiDOM Line 497  report Message::DOM::DOMCore::ManakaiDOM
497      if ($child_nt ==      if ($child_nt ==
498  11  11
499  ) {  ) {
500                $$newChild->{
501    'child'
502  {  } = [];
   
   
 $newChild->{  
 'b'  
 }->{${$newChild->{  
 'id'  
 }}}  
     ->{'child'} = [];  
   
   
 }  
   
 ;  
503      } else {      } else {
504        my $v;        my $v = $$nc_parent->{
505          'child'
506    };
 {  
   
   
 $v = $nc_parent->{  
 'b'  
 }->{${$nc_parent->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
507        RP: for my $i (0..$#$v) {        RP: for my $i (0..$#$v) {
508          my $nodeid = $v->[$i];          if ($v->[$i] eq $new_child[0]) {
         if (  
 (${$new_child[0]->{'id'}} eq ${$nodeid})  
 ) {  
509            splice @$v, $i, 1, ();            splice @$v, $i, 1, ();
510            last RP;            last RP;
511          }          }
# Line 671  $v = $nc_parent->{ Line 515  $v = $nc_parent->{
515    
516    ## -- Rewrite the |parentNode| properties    ## -- Rewrite the |parentNode| properties
517    for my $nc (@new_child) {    for my $nc (@new_child) {
518            $$nc->{
519    'parent'
520  {  } = $self;
521        Scalar::Util::weaken ($$nc->{
522    'parent'
523  $nc->{  });
 'b'  
 }->{${$nc->{  
 'id'  
 }}}  
     ->{'parent'} = $self->{  
 'id'  
 };  
   
   
 }  
   
 ;  
524    }    }
525    
526    my $children;    my $children = $$self->{
527      'child'
528    };
 {  
   
   
 $children = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
529    
530        
531    
# Line 715  $children = $self->{ Line 533  $children = $self->{
533    
534    
535  ## -- Adds to children list  ## -- Adds to children list
536      push @$children, map {      push @$children, @new_child;
         
 $_->{'id'}  
   
     } @new_child;  
537      $r = $newChild;      $r = $newChild;
538        
539    
# Line 755  if ($child_nt == Line 569  if ($child_nt ==
569  not defined $newChild->  not defined $newChild->
570  owner_document  owner_document
571  ) {  ) {
572    my $bag =    CORE::delete $$newChild->{
573  $self->{'b'}  'impl'
 ;  
     
   
 {  
   
 CORE::delete  
 $bag->{${$bag->{${$newChild->{  
 'id'  
 }}}  
                           ->{'impl'} or \''}}  
                  ->{'lpmi'};  
 $bag->{  
 'm'  
 }++;  
 CORE::delete $bag->{${$newChild->{  
 'id'  
 }}}  
                  ->{'impl'};  
   
   
 }  
   
 ;  
     
   
 {  
   
   
 $bag->{${$newChild->{  
 'id'  
 }}}->{'od'}  
   = $self->{  
 'id'  
 };  
 $bag->{${$self->{  
 'id'  
 }}}  
     ->{'do'}->{${$newChild->{  
 'id'  
 }}}  
   = $newChild->{  
 'id'  
574  };  };
575      $$newChild->{
576    'od'
577  }  } = $self;
578      Scalar::Util::weaken ($$newChild->{
579  ;  'od'
580    });
581  }  }
582    
583    
# Line 1135  local $Error::Depth = $Error::Depth - 1; Line 908  local $Error::Depth = $Error::Depth - 1;
908    
909  {  {
910    
911  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
912    
913    
914  }  }
# Line 1156  local $Error::Depth = $Error::Depth - 1; Line 929  local $Error::Depth = $Error::Depth - 1;
929    
930  {  {
931    
932  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
933    
934    
935  }  }
# Line 1184  local $Error::Depth = $Error::Depth - 1; Line 957  local $Error::Depth = $Error::Depth - 1;
957    
958  {  {
959    
960  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
961    
962    
963  }  }
# Line 1207  local $Error::Depth = $Error::Depth - 1; Line 980  local $Error::Depth = $Error::Depth - 1;
980    
981  {  {
982    
983  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1';
984    
985    
986  }  }
# Line 1230  local $Error::Depth = $Error::Depth - 1; Line 1003  local $Error::Depth = $Error::Depth - 1;
1003    
1004  {  {
1005    
1006  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1';
1007    
1008    
1009  }  }
# Line 1264  local $Error::Depth = $Error::Depth - 1; Line 1037  local $Error::Depth = $Error::Depth - 1;
1037    
1038  {  {
1039    
1040  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/tree#insert-before-itself', 'rdata' => $refChild, 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/tree#insert-before-itself', 'rdata' => $refChild, 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1';
1041    
1042    
1043  }  }
# Line 1310  local $Error::Depth = $Error::Depth - 1; Line 1083  local $Error::Depth = $Error::Depth - 1;
1083    
1084  {  {
1085    
1086  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'refChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $refChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'refChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $refChild;
1087    
1088    
1089  }  }
# Line 1346  report Message::DOM::DOMCore::ManakaiDOM Line 1119  report Message::DOM::DOMCore::ManakaiDOM
1119      if ($child_nt ==      if ($child_nt ==
1120  11  11
1121  ) {  ) {
1122                $$newChild->{
1123    'child'
1124  {  } = [];
   
   
 $newChild->{  
 'b'  
 }->{${$newChild->{  
 'id'  
 }}}  
     ->{'child'} = [];  
   
   
 }  
   
 ;  
1125      } else {      } else {
1126        my $v;        my $v = $$nc_parent->{
1127          'child'
1128    };
 {  
   
   
 $v = $nc_parent->{  
 'b'  
 }->{${$nc_parent->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
1129        RP: for my $i (0..$#$v) {        RP: for my $i (0..$#$v) {
1130          my $nodeid = $v->[$i];          if ($v->[$i] eq $new_child[0]) {
         if (  
 (${$new_child[0]->{'id'}} eq ${$nodeid})  
 ) {  
1131            splice @$v, $i, 1, ();            splice @$v, $i, 1, ();
1132            last RP;            last RP;
1133          }          }
# Line 1394  $v = $nc_parent->{ Line 1137  $v = $nc_parent->{
1137    
1138    ## -- Rewrite the |parentNode| properties    ## -- Rewrite the |parentNode| properties
1139    for my $nc (@new_child) {    for my $nc (@new_child) {
1140            $$nc->{
1141    'parent'
1142  {  } = $self;
1143        Scalar::Util::weaken ($$nc->{
1144    'parent'
1145  $nc->{  });
 'b'  
 }->{${$nc->{  
 'id'  
 }}}  
     ->{'parent'} = $self->{  
 'id'  
 };  
   
   
 }  
   
 ;  
1146    }    }
1147    
1148    my $children;    my $children = $$self->{
1149      'child'
1150    };
 {  
   
   
 $children = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
1151    
1152        
1153    
# Line 1443  $children = $self->{ Line 1160  $children = $self->{
1160    
1161  ## -- Adds to children list  ## -- Adds to children list
1162      if ($index == -1) {      if ($index == -1) {
1163        push @$children, map {        push @$children, @new_child;
           
 $_->{'id'}  
   
       } @new_child;  
1164      } else {      } else {
1165        splice @$children, $index, 0, map {        splice @$children, $index, 0, @new_child;
           
 $_->{'id'}  
   
       } @new_child;  
1166      }      }
1167      $r = $newChild;      $r = $newChild;
1168        
# Line 1486  if ($child_nt == Line 1195  if ($child_nt ==
1195  not defined $newChild->  not defined $newChild->
1196  owner_document  owner_document
1197  ) {  ) {
1198    my $bag =    CORE::delete $$newChild->{
1199  $self->{'b'}  'impl'
 ;  
     
   
 {  
   
 CORE::delete  
 $bag->{${$bag->{${$newChild->{  
 'id'  
 }}}  
                           ->{'impl'} or \''}}  
                  ->{'lpmi'};  
 $bag->{  
 'm'  
 }++;  
 CORE::delete $bag->{${$newChild->{  
 'id'  
 }}}  
                  ->{'impl'};  
   
   
 }  
   
 ;  
     
   
 {  
   
   
 $bag->{${$newChild->{  
 'id'  
 }}}->{'od'}  
   = $self->{  
 'id'  
 };  
 $bag->{${$self->{  
 'id'  
 }}}  
     ->{'do'}->{${$newChild->{  
 'id'  
 }}}  
   = $newChild->{  
 'id'  
1200  };  };
1201      $$newChild->{
1202    'od'
1203  }  } = $self;
1204      Scalar::Util::weaken ($$newChild->{
1205  ;  'od'
1206    });
1207  }  }
1208    
1209    
# Line 1864  local $Error::Depth = $Error::Depth - 1; Line 1532  local $Error::Depth = $Error::Depth - 1;
1532    
1533  {  {
1534    
1535  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
1536    
1537    
1538  }  }
# Line 1885  local $Error::Depth = $Error::Depth - 1; Line 1553  local $Error::Depth = $Error::Depth - 1;
1553    
1554  {  {
1555    
1556  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
1557    
1558    
1559  }  }
# Line 1913  local $Error::Depth = $Error::Depth - 1; Line 1581  local $Error::Depth = $Error::Depth - 1;
1581    
1582  {  {
1583    
1584  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
1585    
1586    
1587  }  }
# Line 1936  local $Error::Depth = $Error::Depth - 1; Line 1604  local $Error::Depth = $Error::Depth - 1;
1604    
1605  {  {
1606    
1607  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1';
1608    
1609    
1610  }  }
# Line 1959  local $Error::Depth = $Error::Depth - 1; Line 1627  local $Error::Depth = $Error::Depth - 1;
1627    
1628  {  {
1629    
1630  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1';
1631    
1632    
1633  }  }
# Line 1996  local $Error::Depth = $Error::Depth - 1; Line 1664  local $Error::Depth = $Error::Depth - 1;
1664    
1665  {  {
1666    
1667  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/tree#replace-by-itself', 'rdata' => $oldChild, 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/tree#replace-by-itself', 'rdata' => $oldChild, 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1';
1668    
1669    
1670  }  }
# Line 2042  local $Error::Depth = $Error::Depth - 1; Line 1710  local $Error::Depth = $Error::Depth - 1;
1710    
1711  {  {
1712    
1713  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'oldChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $oldChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'oldChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $oldChild;
1714    
1715    
1716  }  }
# Line 2070  local $Error::Depth = $Error::Depth - 1; Line 1738  local $Error::Depth = $Error::Depth - 1;
1738    
1739  {  {
1740    
1741  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'oldChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $oldChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'oldChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $oldChild;
1742    
1743    
1744  }  }
# Line 2098  report Message::DOM::DOMCore::ManakaiDOM Line 1766  report Message::DOM::DOMCore::ManakaiDOM
1766      if ($child_nt ==      if ($child_nt ==
1767  11  11
1768  ) {  ) {
1769                $$newChild->{
1770    'child'
1771  {  } = [];
   
   
 $newChild->{  
 'b'  
 }->{${$newChild->{  
 'id'  
 }}}  
     ->{'child'} = [];  
   
   
 }  
   
 ;  
1772      } else {      } else {
1773        my $v;        my $v = $$nc_parent->{
1774          'child'
1775    };
 {  
   
   
 $v = $nc_parent->{  
 'b'  
 }->{${$nc_parent->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
1776        RP: for my $i (0..$#$v) {        RP: for my $i (0..$#$v) {
1777          my $nodeid = $v->[$i];          if ($v->[$i] eq $new_child[0]) {
         if (  
 (${$new_child[0]->{'id'}} eq ${$nodeid})  
 ) {  
1778            splice @$v, $i, 1, ();            splice @$v, $i, 1, ();
1779            last RP;            last RP;
1780          }          }
# Line 2146  $v = $nc_parent->{ Line 1784  $v = $nc_parent->{
1784    
1785    ## -- Rewrite the |parentNode| properties    ## -- Rewrite the |parentNode| properties
1786    for my $nc (@new_child) {    for my $nc (@new_child) {
1787            $$nc->{
1788    'parent'
1789  {  } = $self;
1790        Scalar::Util::weaken ($$nc->{
1791    'parent'
1792  $nc->{  });
 'b'  
 }->{${$nc->{  
 'id'  
 }}}  
     ->{'parent'} = $self->{  
 'id'  
 };  
   
   
 }  
   
 ;  
1793    }    }
1794    
1795    my $children;    my $children = $$self->{
1796      'child'
1797    };
 {  
   
   
 $children = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
1798    
1799        
1800    
# Line 2198  $children = $self->{ Line 1810  $children = $self->{
1810    
1811    
1812  ## -- Replaces the node  ## -- Replaces the node
1813      splice @$children, $index, 1, map {      splice @$children, $index, 1, @new_child;
1814              CORE::delete $$oldChild->{
1815  $_->{'id'}  'parent'
1816    };
     } @new_child;  
       
   
 {  
   
 CORE::delete  
 $oldChild->{  
 'b'  
 }->{${$oldChild->{  
 'id'  
 }}}  
                  ->{'parent'};  
   
   
 }  
   
 ;  
1817      $r = $oldChild;      $r = $oldChild;
1818        
1819    
# Line 2246  if ($child_nt == Line 1841  if ($child_nt ==
1841  not defined $newChild->  not defined $newChild->
1842  owner_document  owner_document
1843  ) {  ) {
1844    my $bag =    CORE::delete $$newChild->{
1845  $self->{'b'}  'impl'
 ;  
     
   
 {  
   
 CORE::delete  
 $bag->{${$bag->{${$newChild->{  
 'id'  
 }}}  
                           ->{'impl'} or \''}}  
                  ->{'lpmi'};  
 $bag->{  
 'm'  
 }++;  
 CORE::delete $bag->{${$newChild->{  
 'id'  
 }}}  
                  ->{'impl'};  
   
   
 }  
   
 ;  
     
   
 {  
   
   
 $bag->{${$newChild->{  
 'id'  
 }}}->{'od'}  
   = $self->{  
 'id'  
 };  
 $bag->{${$self->{  
 'id'  
 }}}  
     ->{'do'}->{${$newChild->{  
 'id'  
 }}}  
   = $newChild->{  
 'id'  
1846  };  };
1847      $$newChild->{
1848    'od'
1849  }  } = $self;
1850      Scalar::Util::weaken ($$newChild->{
1851  ;  'od'
1852    });
1853  }  }
1854    
1855    
# Line 2387  report Message::DOM::DOMCore::ManakaiDOM Line 1941  report Message::DOM::DOMCore::ManakaiDOM
1941  F:  F:
1942  {  {
1943    my $i = -1;    my $i = -1;
1944    for my $cld (@{$self->    my $v = $$self->{
1945  child_nodes  'child'
1946  }) {  };
1947      for my $cld (@$v) {
1948      $i++;      $i++;
1949      if ($cld eq $oldChild) {      if ($cld eq $oldChild) {
       my $v;  
         
   
 {  
   
   
 $v = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
1950        splice @$v, $i, 1, ();        splice @$v, $i, 1, ();
1951                CORE::delete $$oldChild->{
1952    'parent'
1953  {  };
   
 CORE::delete  
 $oldChild->{  
 'b'  
 }->{${$oldChild->{  
 'id'  
 }}}  
                  ->{'parent'};  
   
   
 }  
   
 ;  
1954        $r = $oldChild;        $r = $oldChild;
1955        last F;        last F;
1956      }      }
1957    }    }
1958        
1959  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/removeChildImpl+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'oldChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $oldChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/removeChildImpl', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'oldChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $oldChild;
1960    
1961  ;  ;
1962  } # F  } # F
# Line 2557  if Line 2082  if
2082  manakai_read_only  manakai_read_only
2083  ) {  ) {
2084        
2085  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError';
2086    
2087  ;  ;
2088  }  }
# Line 2567  report Message::DOM::DOMCore::ManakaiDOM Line 2092  report Message::DOM::DOMCore::ManakaiDOM
2092    
2093  ;  ;
2094    
2095  my @__old_children = @{$self->  for my $__old_child (@{${$self}->{
2096  child_nodes  'child'
2097    }}) {
2098      CORE::delete $$__old_child->{
2099    'parent'
2100  };  };
 for my $__old_child (@__old_children) {  
     
   
 {  
   
 CORE::delete  
 $__old_child->{  
 'b'  
 }->{${$__old_child->{  
 'id'  
 }}}  
                  ->{'parent'};  
   
   
 }  
   
 ;  
2101  }  }
2102    
2103  my @__new_children;  my @__new_children;
# Line 2594  if (defined $given and length $given) { Line 2105  if (defined $given and length $given) {
2105    my $__text = $self->    my $__text = $self->
2106  create_text_node  create_text_node
2107   ($given);   ($given);
2108    push @__new_children,    push @__new_children, $__text;
2109  $__text->{'id'}    $$__text->{
2110  ;  'parent'
2111      } = $self;
2112      Scalar::Util::weaken ($$__text->{
2113  {  'parent'
2114    });
   
 $__text->{  
 'b'  
 }->{${$__text->{  
 'id'  
 }}}  
     ->{'parent'} = $self->{  
 'id'  
 };  
   
   
 }  
   
 ;  
 }  
   
   
   
 {  
   
   
 $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
     ->{'child'} = \@__new_children;  
   
   
2115  }  }
2116    
2117  ;  ${$self}->{
2118    'child'
2119    } = \@__new_children;
2120    
2121    
2122  }  }
# Line 2669  my $r; Line 2153  my $r;
2153    
2154  $feature =~ s/^\+//;  $feature =~ s/^\+//;
2155    
 ## TODO: Remove this code and implement autoload  
 if ($feature eq  
 'http://suika.fam.cx/www/2006/feature/xdoctype'  
 ) {  
   require Message::DOM::XDoctype;  
 }  
   
   
2156    
2157  {  {
2158    
# Line 2722  my $r = ''; Line 2198  my $r = '';
2198  {  {
2199    
2200    
2201  {  $r = $$self->{
2202    'buri'
2203    };
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'buri'};  
   
   
 }  
   
 ;  
2204  unless (defined $r) {  unless (defined $r) {
2205        $r = $$self->{
2206    'duri'
2207  {  };
   
   
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'duri'};  
   
   
 }  
   
 ;  
2208  }  }
2209    
2210    
# Line 2768  my $r; Line 2220  my $r;
2220    
2221  {  {
2222    
 my  
 $bag =  
 $self->{'b'}  
 ;  
 my $stem;  
   
   
 {  
   
2223    
2224  $stem = 'Message::DOM::Document::ManakaiDOMDocumentFragment'->___create_node_stem ($bag, {  $r = bless \{
2225        
2226  'rc'  'od'
2227   => 0,   => $self,
2228        
2229  'id'  'child'
2230   => \   => [],
2231  (  },
2232    'tag:suika.fam.cx,2005-09:' . time . ':' . $$ . ':' .  'Message::DOM::Document::ManakaiDOMDocumentFragment'
2233    (++$Message::Util::ManakaiNode::UniqueIDN)  ;
2234  )  Scalar::Util::weaken ($$r->{
2235  ,  'od'
2236  }, {  });
     'od' => $self,  
   });  
   
   
 {  
   
 if  
 (defined 'Message::DOM::Document::ManakaiDOMDocumentFragment') {  
   if (ref 'Message::DOM::Document::ManakaiDOMDocumentFragment' eq 'SCALAR') {  
     $stem->{'cls'} = 'Message::DOM::Document::ManakaiDOMDocumentFragment';  
   } elsif (defined $Message::Util::ManakaiStringRef::Value{'Message::DOM::Document::ManakaiDOMDocumentFragment'}) {  
     $stem->{'cls'} = $Message::Util::ManakaiStringRef::Value{'Message::DOM::Document::ManakaiDOMDocumentFragment'};  
   } else {  
     require Scalar::Util;  
     $stem->{'cls'} = $Message::Util::ManakaiStringRef::Value{'Message::DOM::Document::ManakaiDOMDocumentFragment'} = \('Message::DOM::Document::ManakaiDOMDocumentFragment');  
     Scalar::Util::weaken ($Message::Util::ManakaiStringRef::Value{'Message::DOM::Document::ManakaiDOMDocumentFragment'});  
   }  
 } else {  
   CORE::delete $stem->{'cls'};  
 }  
   
   
 }  
   
 ;  
 $bag->{${$stem->{  
 'id'  
 }}} = $stem;  
   
   
 }  
   
 ;  
   
   
 {  
   
   
 $r = ${$stem->{  
 'cls'  
 }}->___create_node_ref ({  
     
 'id'  
  => $stem->{  
 'id'  
 },  
     
 'b'  
  => $bag,  
 }, {  
   });  
 $stem->{  
 'rc'  
 }++;  
   
   
 }  
   
 ;  
2237    
2238    
2239  }  }
# Line 2861  my $r = 0; Line 2245  my $r = 0;
2245  {  {
2246    
2247    
2248  {  $r = $$self->{
2249    'chk'
2250    };
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'chk'};  
   
   
 }  
   
 ;  
 $r =  
 1 unless  
 defined $r;  
2251    
2252    
2253  }  }
# Line 2887  $r; Line 2257  $r;
2257  {  {
2258    
2259    
2260  {  $$self->{
2261    'chk'
2262    } = $given;
 $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
     ->{'chk'} = $given ? 1 : 0;  
   
   
 }  
   
 ;  
2263    
2264    
2265  }  }
# Line 2916  my $r; Line 2275  my $r;
2275  {  {
2276    
2277    
2278  $r = bless [$self, ($self->{'b'}->{${$self->{'id'}}}), 'Message::DOM::IFLatest::Document'],  $r = bless [$self, $$self, 'Message::DOM::IF::Document'],
2279                                    
2280  'Message::DOM::DOMCore::ManakaiDOMConfiguration'  'Message::DOM::DOMCore::ManakaiDOMConfiguration'
2281  ;  ;
# Line 2984  my $r; Line 2343  my $r;
2343  {  {
2344    
2345    
2346  {  $r = $$self->{
2347    'impl'
2348  my  };
 $__v = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
               ->{'impl'};  
 if (defined $__v) {  
     
   
 {  
   
   
 $r = ${$self->{'b'}->{${$__v}}->{  
 'cls'  
 }}->___create_node_ref ({  
     
 'id'  
  => $__v,  
     
 'b'  
  => $self->{'b'},  
 }, {});  
 $self->{'b'}->{${$__v}}->{  
 'rc'  
 }++;  
   
   
 }  
   
 ;  
 }  
   
   
 }  
   
 ;  
2349    
2350    
2351  }  }
# Line 3038  my $r = ''; Line 2361  my $r = '';
2361  {  {
2362    
2363    
2364  {  $r = $$self->{
2365    'http://www.w3.org/2001/04/infoset#version'
2366    };
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'http://www.w3.org/2001/04/infoset#version'};  
   
   
 }  
   
 ;  
 $r = '1.0' unless defined $r;  
2367    
2368    
2369  }  }
# Line 3069  if Line 2380  if
2380  manakai_read_only  manakai_read_only
2381  ) {  ) {
2382        
2383  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError';
2384    
2385  ;  ;
2386  }  }
# Line 3083  if (defined $given and Line 2394  if (defined $given and
2394       not $self->       not $self->
2395  strict_error_checking  strict_error_checking
2396  )) {  )) {
2397        $$self->{
2398    'http://www.w3.org/2001/04/infoset#version'
2399  {  } = $given;
   
   
 $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
     ->{'http://www.w3.org/2001/04/infoset#version'} = $given;  
   
   
 }  
   
 ;  
2400  } else {  } else {
2401        
2402  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_SUPPORTED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#on' => 'set', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#MDOM_IMPL_NOSUPPORT_XMLVER', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#class' => 'Message::DOM::Document::ManakaiDOMDocument', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#attr' => 'xml_version', 'http://www.w3.org/2001/04/infoset#version' => $given;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_SUPPORTED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#on' => 'set', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#MDOM_IMPL_NOSUPPORT_XMLVER', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#class' => 'Message::DOM::Document::ManakaiDOMDocument', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#attr' => 'xml_version', 'http://www.w3.org/2001/04/infoset#version' => $given;
# Line 3166  my $r = ''; Line 2464  my $r = '';
2464  {  {
2465    
2466    
2467  {  $r = $$self->{
2468    'duri'
2469    };
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'duri'};  
   
   
 }  
   
 ;  
2470    
2471    
2472  }  }
# Line 3196  if Line 2483  if
2483  manakai_read_only  manakai_read_only
2484  ) {  ) {
2485        
2486  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError';
2487    
2488  ;  ;
2489  }  }
# Line 3205  report Message::DOM::DOMCore::ManakaiDOM Line 2492  report Message::DOM::DOMCore::ManakaiDOM
2492  }  }
2493    
2494  ;  ;
2495    $$self->{
2496    'duri'
2497  {  } = $given;
   
   
 $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
     ->{'duri'} = $given;  
   
   
 }  
   
 ;  
2498    
2499    
2500  }  }
# Line 3233  my $r = ''; Line 2507  my $r = '';
2507  {  {
2508    
2509    
2510  {  $r = $$self->{
2511    'ces'
2512    };
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'ces'};  
   
   
 }  
   
 ;  
2513    
2514    
2515  }  }
# Line 3263  if Line 2526  if
2526  manakai_read_only  manakai_read_only
2527  ) {  ) {
2528        
2529  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError';
2530    
2531  ;  ;
2532  }  }
# Line 3272  report Message::DOM::DOMCore::ManakaiDOM Line 2535  report Message::DOM::DOMCore::ManakaiDOM
2535  }  }
2536    
2537  ;  ;
2538    $$self->{
2539    'ces'
2540  {  } = $given;
   
   
 $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
     ->{'ces'} = $given;  
   
   
 }  
   
 ;  
2541    
2542    
2543  }  }
# Line 3300  my $r = ''; Line 2550  my $r = '';
2550  {  {
2551    
2552    
2553  {  $r = $$self->{
2554    'xcs'
2555    };
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'xcs'};  
   
   
 }  
   
 ;  
2556    
2557    
2558  }  }
# Line 3330  if Line 2569  if
2569  manakai_read_only  manakai_read_only
2570  ) {  ) {
2571        
2572  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError';
2573    
2574  ;  ;
2575  }  }
# Line 3339  report Message::DOM::DOMCore::ManakaiDOM Line 2578  report Message::DOM::DOMCore::ManakaiDOM
2578  }  }
2579    
2580  ;  ;
2581    $$self->{
2582    'xcs'
2583  {  } = $given;
   
   
 $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
     ->{'xcs'} = $given;  
   
   
 }  
   
 ;  
2584    
2585    
2586  }  }
# Line 3367  my $r = 0; Line 2593  my $r = 0;
2593  {  {
2594    
2595    
2596  {  $r = $$self->{
2597    'http://www.w3.org/2001/04/infoset#standalone'
2598    };
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'http://www.w3.org/2001/04/infoset#standalone'};  
   
   
 }  
   
 ;  
2599    
2600    
2601  }  }
# Line 3397  if Line 2612  if
2612  manakai_read_only  manakai_read_only
2613  ) {  ) {
2614        
2615  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError';
2616    
2617  ;  ;
2618  }  }
# Line 3406  report Message::DOM::DOMCore::ManakaiDOM Line 2621  report Message::DOM::DOMCore::ManakaiDOM
2621  }  }
2622    
2623  ;  ;
2624    $$self->{
2625    'http://www.w3.org/2001/04/infoset#standalone'
2626  {  } = $given;
   
   
 $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
     ->{'http://www.w3.org/2001/04/infoset#standalone'} = $given;  
   
   
 }  
   
 ;  
2627    
2628    
2629  }  }
# Line 3438  ADOPT: Line 2640  ADOPT:
2640    last ADOPT    last ADOPT
2641      unless $source->isa (      unless $source->isa (
2642  'Message::DOM::TreeCore::ManakaiDOMNode'  'Message::DOM::TreeCore::ManakaiDOMNode'
2643  ) and  );
             
 $self->{'b'}  
                eq  
   
 $source->{'b'}  
 ;  
2644    
2645    my $strict = $self->    my $strict = $self->
2646  strict_error_checking  strict_error_checking
# Line 3611  owner_document Line 2807  owner_document
2807      last ADOPT;      last ADOPT;
2808    }    }
2809    
   my $old_od_list;  
     
   
 {  
   
   
 $old_od_list = $old_od->{  
 'b'  
 }->{${$old_od->{  
 'id'  
 }}}  
          ->{'do'};  
   
   
 }  
   
 ;  
   my $new_od_list;  
     
   
 {  
   
   
 $new_od_list = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'do'};  
   
   
 }  
   
 ;  
2810    for my $n (@change_od) {    for my $n (@change_od) {
2811            $$n->{
2812    'od'
2813  {  } = $self;
2814        Scalar::Util::weaken ($$n->{
2815    'od'
2816  $n->{  });
 'b'  
 }->{${$n->{  
 'id'  
 }}}  
     ->{'od'} = $self->{  
 'id'  
 };  
   
   
 }  
   
 ;  
     my $nid =  
 $n->{'id'}  
 ;  
     CORE::delete $old_od_list->{$$nid};  
     $new_od_list->{$$nid} = $nid;  
2817    }    }
2818    
2819    for my $src (@change_od) {    for my $src (@change_od) {
2820      my $src_ud;      my $src_ud = $$src->{
2821        'ud'
2822    };
 {  
   
   
 $src_ud = $src->{  
 'b'  
 }->{${$src->{  
 'id'  
 }}}  
          ->{'ud'};  
   
   
 }  
   
 ;  
2823      for my $key (keys %{$src_ud or {}}) {      for my $key (keys %{$src_ud or {}}) {
2824        my $dh = $src_ud->{$key}->[1];        my $dh = $src_ud->{$key}->[1];
2825        if ($dh) {        if ($dh) {
# Line 3812  if Line 2943  if
2943  (CORE::defined $namespaceURI and CORE::length $namespaceURI == 0) {  (CORE::defined $namespaceURI and CORE::length $namespaceURI == 0) {
2944    require Message::DOM::DOMMain;    require Message::DOM::DOMMain;
2945        
2946  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/main#empty-namespace-uri', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:tag:suika.fam.cx,2005-09:1162711890:16031:uDMne5008+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/main#empty-namespace-uri', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:1167487489:32060:02l5m38360';
2947    
2948  ;  ;
2949    
2950        $namespaceURI = undef;
   
 {  
   
   
 $namespaceURI = undef;  
     
   
   
 }  
   
 ;  
2951  }  }
2952    
2953    
# Line 3929  if Line 3049  if
3049  (CORE::defined $namespaceURI and CORE::length $namespaceURI == 0) {  (CORE::defined $namespaceURI and CORE::length $namespaceURI == 0) {
3050    require Message::DOM::DOMMain;    require Message::DOM::DOMMain;
3051        
3052  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/main#empty-namespace-uri', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:tag:suika.fam.cx,2005-09:1162711890:16031:uDMne5008+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/main#empty-namespace-uri', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:1167487489:32060:02l5m38360';
3053    
3054  ;  ;
3055    
3056        $namespaceURI = undef;
   
 {  
   
   
 $namespaceURI = undef;  
     
   
   
 }  
   
 ;  
3057  }  }
3058    
3059    
# Line 3959  my $r = ''; Line 3068  my $r = '';
3068  {  {
3069    
3070    
3071  {  $r = $$self->{
3072    'buri'
3073    };
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'buri'};  
   
   
 }  
   
 ;  
3074  unless (defined $r) {  unless (defined $r) {
3075        $r = $$self->{
3076    'duri'
3077  {  };
   
   
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'duri'};  
   
   
 }  
   
 ;  
3078  }  }
3079    
3080    
# Line 4007  if Line 3092  if
3092  manakai_read_only  manakai_read_only
3093  ) {  ) {
3094        
3095  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError';
3096    
3097  ;  ;
3098  }  }
# Line 4016  report Message::DOM::DOMCore::ManakaiDOM Line 3101  report Message::DOM::DOMCore::ManakaiDOM
3101  }  }
3102    
3103  ;  ;
3104    $$self->{
3105    'buri'
3106  {  } = $given;
   
   
 $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
     ->{'buri'} = $given;  
   
   
 }  
   
 ;  
3107    
3108    
3109  }  }
# Line 4044  my $r = 0; Line 3116  my $r = 0;
3116  {  {
3117    
3118    
3119  {  $r = $$self->{
3120    'http://www.w3.org/2001/04/infoset#allDeclarationsProcessed'
3121    };
 $r = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'http://www.w3.org/2001/04/infoset#allDeclarationsProcessed'};  
   
   
 }  
   
 ;  
3122    
3123    
3124  }  }
# Line 4074  if Line 3135  if
3135  manakai_read_only  manakai_read_only
3136  ) {  ) {
3137        
3138  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/NodeReadOnlyError';
3139    
3140  ;  ;
3141  }  }
# Line 4083  report Message::DOM::DOMCore::ManakaiDOM Line 3144  report Message::DOM::DOMCore::ManakaiDOM
3144  }  }
3145    
3146  ;  ;
3147    $$self->{
3148    'http://www.w3.org/2001/04/infoset#allDeclarationsProcessed'
3149  {  } = $given;
   
   
 $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
     ->{'http://www.w3.org/2001/04/infoset#allDeclarationsProcessed'} = $given;  
   
   
 }  
   
 ;  
3150    
3151    
3152  }  }
# Line 4106  $self->{ Line 3154  $self->{
3154  }  }
3155  $Message::DOM::DOMFeature::ClassInfo->{q<Message::DOM::Document::ManakaiDOMDocument>}->{has_feature} = {'core',  $Message::DOM::DOMFeature::ClassInfo->{q<Message::DOM::Document::ManakaiDOMDocument>}->{has_feature} = {'core',
3156  {'',  {'',
 '1',  
 '1.0',  
 '1',  
 '2.0',  
 '1',  
 '3.0',  
3157  '1'},  '1'},
3158  'xml',  'xml',
3159  {'',  {'',
 '1',  
 '1.0',  
 '1',  
 '2.0',  
 '1',  
 '3.0',  
3160  '1'},  '1'},
3161  'xmlversion',  'xmlversion',
3162  {'',  {'',
 '1',  
 '1.0',  
 '1',  
 '1.1',  
3163  '1'}};  '1'}};
3164  $Message::DOM::ClassPoint{q<Message::DOM::Document::ManakaiDOMDocument>} = 14.1;  $Message::DOM::ClassPoint{q<Message::DOM::Document::ManakaiDOMDocument>} = 0;
3165  $Message::DOM::DOMFeature::ClassInfo->{q<Message::DOM::Document::ManakaiDOMDocument>}->{compat_class}->{q<Message::DOM::Document::ManakaiDOMDocument>} = 1;  package Message::DOM::IF::DocumentFragment;
3166  $Message::Util::Grove::ClassProp{q<Message::DOM::Document::ManakaiDOMDocument>} = {'s1a',  our $VERSION = 20061230.1433;
 ['child'],  
 'v1h',  
 ['do'],  
 'w0',  
 ['impl']};  
 package Message::DOM::IFLatest::DocumentFragment;  
 our $VERSION = 20061105.0827;  
3167  package Message::DOM::Document::ManakaiDOMDocumentFragment;  package Message::DOM::Document::ManakaiDOMDocumentFragment;
3168  our $VERSION = 20061105.0827;  our $VERSION = 20061230.1433;
3169  push our @ISA, 'Message::DOM::TreeCore::ManakaiDOMNode',  push our @ISA, 'Message::DOM::TreeCore::ManakaiDOMNode',
3170  'Message::DOM::IF::DocumentFragment',  'Message::DOM::IF::DocumentFragment',
3171  'Message::DOM::IF::Node',  'Message::DOM::IF::Node';
 'Message::DOM::IFLatest::DocumentFragment',  
 'Message::DOM::IFLatest::Node',  
 'Message::DOM::IFLevel1::DocumentFragment',  
 'Message::DOM::IFLevel1::Node',  
 'Message::DOM::IFLevel2::DocumentFragment',  
 'Message::DOM::IFLevel2::Node',  
 'Message::DOM::IFLevel3::DocumentFragment',  
 'Message::DOM::IFLevel3::Node';  
 sub ___create_node_stem ($$$$) {  
 my ($self, $bag, $obj, $opt) = @_;  
 my $r = {};  
   
 {  
   
   
 $obj->{  
 'child'  
 } = [];  
   
   
 {  
   
   
 $obj->{'od'} = $opt->{'od'}->{  
 'id'  
 };  
 $bag->{${$opt->{'od'}->{  
 'id'  
 }}}  
     ->{'do'}->{${$obj->{  
 'id'  
 }}}  
   = $obj->{  
 'id'  
 };  
   
   
 }  
   
 ;  
 $r = $obj;  
   
   
 }  
 $r}  
3172  sub node_type ($;$) {  sub node_type ($;$) {
3173  if (@_ == 1) {my ($self) = @_;  if (@_ == 1) {my ($self) = @_;
3174  my $r;  my $r;
# Line 4272  local $Error::Depth = $Error::Depth - 1; Line 3252  local $Error::Depth = $Error::Depth - 1;
3252    
3253  {  {
3254    
3255  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
3256    
3257    
3258  }  }
# Line 4293  local $Error::Depth = $Error::Depth - 1; Line 3273  local $Error::Depth = $Error::Depth - 1;
3273    
3274  {  {
3275    
3276  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
3277    
3278    
3279  }  }
# Line 4321  local $Error::Depth = $Error::Depth - 1; Line 3301  local $Error::Depth = $Error::Depth - 1;
3301    
3302  {  {
3303    
3304  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
3305    
3306    
3307  }  }
# Line 4344  local $Error::Depth = $Error::Depth - 1; Line 3324  local $Error::Depth = $Error::Depth - 1;
3324    
3325  {  {
3326    
3327  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1';
3328    
3329    
3330  }  }
# Line 4367  local $Error::Depth = $Error::Depth - 1; Line 3347  local $Error::Depth = $Error::Depth - 1;
3347    
3348  {  {
3349    
3350  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/appendChildImpl1';
3351    
3352    
3353  }  }
# Line 4391  report Message::DOM::DOMCore::ManakaiDOM Line 3371  report Message::DOM::DOMCore::ManakaiDOM
3371      if ($child_nt ==      if ($child_nt ==
3372  11  11
3373  ) {  ) {
3374                $$newChild->{
3375    'child'
3376  {  } = [];
   
   
 $newChild->{  
 'b'  
 }->{${$newChild->{  
 'id'  
 }}}  
     ->{'child'} = [];  
   
   
 }  
   
 ;  
3377      } else {      } else {
3378        my $v;        my $v = $$nc_parent->{
3379          'child'
3380    };
 {  
   
   
 $v = $nc_parent->{  
 'b'  
 }->{${$nc_parent->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
3381        RP: for my $i (0..$#$v) {        RP: for my $i (0..$#$v) {
3382          my $nodeid = $v->[$i];          if ($v->[$i] eq $new_child[0]) {
         if (  
 (${$new_child[0]->{'id'}} eq ${$nodeid})  
 ) {  
3383            splice @$v, $i, 1, ();            splice @$v, $i, 1, ();
3384            last RP;            last RP;
3385          }          }
# Line 4439  $v = $nc_parent->{ Line 3389  $v = $nc_parent->{
3389    
3390    ## -- Rewrite the |parentNode| properties    ## -- Rewrite the |parentNode| properties
3391    for my $nc (@new_child) {    for my $nc (@new_child) {
3392            $$nc->{
3393    'parent'
3394  {  } = $self;
3395        Scalar::Util::weaken ($$nc->{
3396    'parent'
3397  $nc->{  });
 'b'  
 }->{${$nc->{  
 'id'  
 }}}  
     ->{'parent'} = $self->{  
 'id'  
 };  
   
   
 }  
   
 ;  
3398    }    }
3399    
3400    my $children;    my $children = $$self->{
3401      'child'
3402    };
 {  
   
   
 $children = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
3403    
3404        
3405    
# Line 4483  $children = $self->{ Line 3407  $children = $self->{
3407    
3408    
3409  ## -- Adds to children list  ## -- Adds to children list
3410      push @$children, map {      push @$children, @new_child;
         
 $_->{'id'}  
   
     } @new_child;  
3411      $r = $newChild;      $r = $newChild;
3412        
3413    
# Line 4595  local $Error::Depth = $Error::Depth - 1; Line 3515  local $Error::Depth = $Error::Depth - 1;
3515    
3516  {  {
3517    
3518  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
3519    
3520    
3521  }  }
# Line 4616  local $Error::Depth = $Error::Depth - 1; Line 3536  local $Error::Depth = $Error::Depth - 1;
3536    
3537  {  {
3538    
3539  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
3540    
3541    
3542  }  }
# Line 4644  local $Error::Depth = $Error::Depth - 1; Line 3564  local $Error::Depth = $Error::Depth - 1;
3564    
3565  {  {
3566    
3567  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
3568    
3569    
3570  }  }
# Line 4667  local $Error::Depth = $Error::Depth - 1; Line 3587  local $Error::Depth = $Error::Depth - 1;
3587    
3588  {  {
3589    
3590  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1';
3591    
3592    
3593  }  }
# Line 4690  local $Error::Depth = $Error::Depth - 1; Line 3610  local $Error::Depth = $Error::Depth - 1;
3610    
3611  {  {
3612    
3613  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1';
3614    
3615    
3616  }  }
# Line 4724  local $Error::Depth = $Error::Depth - 1; Line 3644  local $Error::Depth = $Error::Depth - 1;
3644    
3645  {  {
3646    
3647  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/tree#insert-before-itself', 'rdata' => $refChild, 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/tree#insert-before-itself', 'rdata' => $refChild, 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1';
3648    
3649    
3650  }  }
# Line 4770  local $Error::Depth = $Error::Depth - 1; Line 3690  local $Error::Depth = $Error::Depth - 1;
3690    
3691  {  {
3692    
3693  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'refChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $refChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/insertBeforeImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'refChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $refChild;
3694    
3695    
3696  }  }
# Line 4806  report Message::DOM::DOMCore::ManakaiDOM Line 3726  report Message::DOM::DOMCore::ManakaiDOM
3726      if ($child_nt ==      if ($child_nt ==
3727  11  11
3728  ) {  ) {
3729                $$newChild->{
3730    'child'
3731  {  } = [];
   
   
 $newChild->{  
 'b'  
 }->{${$newChild->{  
 'id'  
 }}}  
     ->{'child'} = [];  
   
   
 }  
   
 ;  
3732      } else {      } else {
3733        my $v;        my $v = $$nc_parent->{
3734          'child'
3735    };
 {  
   
   
 $v = $nc_parent->{  
 'b'  
 }->{${$nc_parent->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
3736        RP: for my $i (0..$#$v) {        RP: for my $i (0..$#$v) {
3737          my $nodeid = $v->[$i];          if ($v->[$i] eq $new_child[0]) {
         if (  
 (${$new_child[0]->{'id'}} eq ${$nodeid})  
 ) {  
3738            splice @$v, $i, 1, ();            splice @$v, $i, 1, ();
3739            last RP;            last RP;
3740          }          }
# Line 4854  $v = $nc_parent->{ Line 3744  $v = $nc_parent->{
3744    
3745    ## -- Rewrite the |parentNode| properties    ## -- Rewrite the |parentNode| properties
3746    for my $nc (@new_child) {    for my $nc (@new_child) {
3747            $$nc->{
3748    'parent'
3749  {  } = $self;
3750        Scalar::Util::weaken ($$nc->{
3751    'parent'
3752  $nc->{  });
 'b'  
 }->{${$nc->{  
 'id'  
 }}}  
     ->{'parent'} = $self->{  
 'id'  
 };  
   
   
 }  
   
 ;  
3753    }    }
3754    
3755    my $children;    my $children = $$self->{
3756      'child'
3757    };
 {  
   
   
 $children = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
3758    
3759        
3760    
# Line 4903  $children = $self->{ Line 3767  $children = $self->{
3767    
3768  ## -- Adds to children list  ## -- Adds to children list
3769      if ($index == -1) {      if ($index == -1) {
3770        push @$children, map {        push @$children, @new_child;
           
 $_->{'id'}  
   
       } @new_child;  
3771      } else {      } else {
3772        splice @$children, $index, 0, map {        splice @$children, $index, 0, @new_child;
           
 $_->{'id'}  
   
       } @new_child;  
3773      }      }
3774      $r = $newChild;      $r = $newChild;
3775        
# Line 5018  local $Error::Depth = $Error::Depth - 1; Line 3874  local $Error::Depth = $Error::Depth - 1;
3874    
3875  {  {
3876    
3877  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
3878    
3879    
3880  }  }
# Line 5039  local $Error::Depth = $Error::Depth - 1; Line 3895  local $Error::Depth = $Error::Depth - 1;
3895    
3896  {  {
3897    
3898  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'HIERARCHY_REQUEST_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#HIERARCHY_BAD_TYPE', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
3899    
3900    
3901  }  }
# Line 5067  local $Error::Depth = $Error::Depth - 1; Line 3923  local $Error::Depth = $Error::Depth - 1;
3923    
3924  {  {
3925    
3926  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'WRONG_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#DIFFERENT_DOCUMENT_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'newChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $newChild;
3927    
3928    
3929  }  }
# Line 5090  local $Error::Depth = $Error::Depth - 1; Line 3946  local $Error::Depth = $Error::Depth - 1;
3946    
3947  {  {
3948    
3949  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_THIS', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1';
3950    
3951    
3952  }  }
# Line 5113  local $Error::Depth = $Error::Depth - 1; Line 3969  local $Error::Depth = $Error::Depth - 1;
3969    
3970  {  {
3971    
3972  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NO_MODIFICATION_ALLOWED_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#NOMOD_SRC_PARENT', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1';
3973    
3974    
3975  }  }
# Line 5150  local $Error::Depth = $Error::Depth - 1; Line 4006  local $Error::Depth = $Error::Depth - 1;
4006    
4007  {  {
4008    
4009  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/tree#replace-by-itself', 'rdata' => $oldChild, 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest';  report Message::DOM::DOMCore::ManakaiDOMError -object => $self, '-type' => 'http://suika.fam.cx/~wakaba/archive/2004/dom/tree#replace-by-itself', 'rdata' => $oldChild, 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1';
4010    
4011    
4012  }  }
# Line 5196  local $Error::Depth = $Error::Depth - 1; Line 4052  local $Error::Depth = $Error::Depth - 1;
4052    
4053  {  {
4054    
4055  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'oldChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $oldChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'oldChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $oldChild;
4056    
4057    
4058  }  }
# Line 5224  local $Error::Depth = $Error::Depth - 1; Line 4080  local $Error::Depth = $Error::Depth - 1;
4080    
4081  {  {
4082    
4083  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'tag:suika.fam.cx,2005-09:http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1+http://suika.fam.cx/~wakaba/archive/2004/8/18/manakai-dom%23ManakaiDOMLatest', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'oldChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $oldChild;  report Message::DOM::DOMCore::ManakaiDOMException -object => $self, '-type' => 'NOT_FOUND_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#subtype' => 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#NOT_CHILD_ERR', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#resourceURI' => 'http://suika.fam.cx/~wakaba/archive/2005/manakai/DOM/TreeCore/replaceChildImpl1', 'http://suika.fam.cx/~wakaba/archive/2004/8/4/manakai-dom-exception#param-name' => 'oldChild', 'http://suika.fam.cx/~wakaba/archive/2004/8/18/dom-core#node' => $oldChild;
4084    
4085    
4086  }  }
# Line 5252  report Message::DOM::DOMCore::ManakaiDOM Line 4108  report Message::DOM::DOMCore::ManakaiDOM
4108      if ($child_nt ==      if ($child_nt ==
4109  11  11
4110  ) {  ) {
4111                $$newChild->{
4112    'child'
4113  {  } = [];
   
   
 $newChild->{  
 'b'  
 }->{${$newChild->{  
 'id'  
 }}}  
     ->{'child'} = [];  
   
   
 }  
   
 ;  
4114      } else {      } else {
4115        my $v;        my $v = $$nc_parent->{
4116          'child'
4117    };
 {  
   
   
 $v = $nc_parent->{  
 'b'  
 }->{${$nc_parent->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
4118        RP: for my $i (0..$#$v) {        RP: for my $i (0..$#$v) {
4119          my $nodeid = $v->[$i];          if ($v->[$i] eq $new_child[0]) {
         if (  
 (${$new_child[0]->{'id'}} eq ${$nodeid})  
 ) {  
4120            splice @$v, $i, 1, ();            splice @$v, $i, 1, ();
4121            last RP;            last RP;
4122          }          }
# Line 5300  $v = $nc_parent->{ Line 4126  $v = $nc_parent->{
4126    
4127    ## -- Rewrite the |parentNode| properties    ## -- Rewrite the |parentNode| properties
4128    for my $nc (@new_child) {    for my $nc (@new_child) {
4129            $$nc->{
4130    'parent'
4131  {  } = $self;
4132        Scalar::Util::weaken ($$nc->{
4133    'parent'
4134  $nc->{  });
 'b'  
 }->{${$nc->{  
 'id'  
 }}}  
     ->{'parent'} = $self->{  
 'id'  
 };  
   
   
 }  
   
 ;  
4135    }    }
4136    
4137    my $children;    my $children = $$self->{
4138      'child'
4139    };
 {  
   
   
 $children = $self->{  
 'b'  
 }->{${$self->{  
 'id'  
 }}}  
          ->{'child'};  
   
   
 }  
   
 ;  
4140    
4141        
4142    
# Line 5352  $children = $self->{ Line 4152  $children = $self->{
4152    
4153    
4154  ## -- Replaces the node  ## -- Replaces the node
4155      splice @$children, $index, 1, map {      splice @$children, $index, 1, @new_child;
4156              CORE::delete $$oldChild->{
4157  $_->{'id'}  'parent'
4158    };
     } @new_child;  
       
   
 {  
   
 CORE::delete  
 $oldChild->{  
 'b'  
 }->{${$oldChild->{  
 'id'  
 }}}  
                  ->{'parent'};  
   
   
 }  
   
 ;  
4159      $r = $oldChild;      $r = $oldChild;
4160        
4161    
# Line 5563  report Message::Util::Error::DOMExceptio Line 4346  report Message::Util::Error::DOMExceptio
4346  }  }
4347  $Message::DOM::DOMFeature::ClassInfo->{q<Message::DOM::Document::ManakaiDOMDocumentFragment>}->{has_feature} = {'core',  $Message::DOM::DOMFeature::ClassInfo->{q<Message::DOM::Document::ManakaiDOMDocumentFragment>}->{has_feature} = {'core',
4348  {'',  {'',
 '1',  
 '1.0',  
 '1',  
 '2.0',  
 '1',  
 '3.0',  
4349  '1'},  '1'},
4350  'xml',  'xml',
4351  {'',  {'',
 '1',  
 '1.0',  
 '1',  
 '2.0',  
 '1',  
 '3.0',  
4352  '1'},  '1'},
4353  'xmlversion',  'xmlversion',
4354  {'',  {'',
 '1',  
 '1.0',  
 '1',  
 '1.1',  
4355  '1'}};  '1'}};
4356  $Message::DOM::ClassPoint{q<Message::DOM::Document::ManakaiDOMDocumentFragment>} = 14.1;  $Message::DOM::ClassPoint{q<Message::DOM::Document::ManakaiDOMDocumentFragment>} = 0;
4357  $Message::DOM::DOMFeature::ClassInfo->{q<Message::DOM::Document::ManakaiDOMDocumentFragment>}->{compat_class}->{q<Message::DOM::Document::ManakaiDOMDocumentFragment>} = 1;  for ($Message::DOM::IF::Node::){}
 $Message::Util::Grove::ClassProp{q<Message::DOM::Document::ManakaiDOMDocumentFragment>} = {'s1a',  
 ['child'],  
 'w0',  
 ['od']};  
 for ($Message::DOM::IF::Document::, $Message::DOM::IF::DocumentFragment::, $Message::DOM::IF::Node::, $Message::DOM::IFLatest::Node::, $Message::DOM::IFLevel1::Document::, $Message::DOM::IFLevel1::DocumentFragment::, $Message::DOM::IFLevel1::Node::, $Message::DOM::IFLevel2::Document::, $Message::DOM::IFLevel2::DocumentFragment::, $Message::DOM::IFLevel2::Node::, $Message::DOM::IFLevel3::Document::, $Message::DOM::IFLevel3::DocumentFragment::, $Message::DOM::IFLevel3::Node::){}  
4358  ## License: <http://suika.fam.cx/~wakaba/archive/2004/8/18/license#Perl+MPL>  ## License: <http://suika.fam.cx/~wakaba/archive/2004/8/18/license#Perl+MPL>
4359  1;  1;

Legend:
Removed from v.1.10  
changed lines
  Added in v.1.16

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24