Mercurial > pub > Impl
comparison Lib/IMPL/DOM/Navigator/SchemaNavigator.pm @ 35:f25d021780b3
DOM::Navigator::Builder working version
| author | Sergey |
|---|---|
| date | Tue, 17 Nov 2009 17:46:24 +0300 |
| parents | a8086f85a571 |
| children | 1828103371d0 |
comparison
equal
deleted
inserted
replaced
| 34:a8086f85a571 | 35:f25d021780b3 |
|---|---|
| 35 my ($this,$name) = @_; | 35 my ($this,$name) = @_; |
| 36 | 36 |
| 37 die new IMPL::InvalidArgumentException('name is required') unless defined $name; | 37 die new IMPL::InvalidArgumentException('name is required') unless defined $name; |
| 38 | 38 |
| 39 # perform a safe navigation | 39 # perform a safe navigation |
| 40 return dosafe $this sub { | 40 #return dosafe $this sub { |
| 41 my $steps = 1; | 41 my $steps = 1; |
| 42 # navigate to node | 42 # navigate to node |
| 43 if ( | 43 if ( |
| 44 my $node = $this->Navigate( sub { | 44 my $node = $this->Navigate( sub { |
| 45 $_->isa('IMPL::DOM::Schema::Node') and ( | 45 $_->isa('IMPL::DOM::Schema::Node') and ( |
| 82 # return found node schema | 82 # return found node schema |
| 83 return $node; | 83 return $node; |
| 84 } else { | 84 } else { |
| 85 die; # abort navigation | 85 die; # abort navigation |
| 86 } | 86 } |
| 87 } | 87 #} |
| 88 } | 88 } |
| 89 | 89 |
| 90 sub SchemaBack { | 90 sub SchemaBack { |
| 91 my ($this) = @_; | 91 my ($this) = @_; |
| 92 | 92 |
