comparison Lib/IMPL/DOM/Navigator/SchemaNavigator.pm @ 34:a8086f85a571

Dom Builder
author Sergey
date Mon, 16 Nov 2009 18:39:25 +0300
parents 7f00786f8210
children f25d021780b3
comparison
equal deleted inserted replaced
33:0004faa276dc 34:a8086f85a571
31 ) 31 )
32 ); 32 );
33 33
34 sub NavigateName { 34 sub NavigateName {
35 my ($this,$name) = @_; 35 my ($this,$name) = @_;
36
37 die new IMPL::InvalidArgumentException('name is required') unless defined $name;
36 38
37 # perform a safe navigation 39 # perform a safe navigation
38 return dosafe $this sub { 40 return dosafe $this sub {
39 my $steps = 1; 41 my $steps = 1;
40 # navigate to node 42 # navigate to node
105 107
106 =over 108 =over
107 109
108 =item C<< $navi->NavigateName($name) >> 110 =item C<< $navi->NavigateName($name) >>
109 111
110 Переходит на схему узла с указанным именем. Тоесть использует свойство C<name> 112 Переходит на схему узла с указанным именем. Тоесть использует свойство C<name>.
113 В данном случае всегда происходит безопасная навигация, тоесть в случае неудачи,
114 навигатор останется на прежней позиции.
111 115
112 =item C<< $navi->SchemaBack >> 116 =item C<< $navi->SchemaBack >>
113 117
114 Возвращается на позицию до последней операции C<NavigateName>. Данный метод нужен 118 Возвращается на позицию до последней операции C<NavigateName>. Данный метод нужен
115 посокольку операция навигации по элементам описываемым схемой может приводить к 119 посокольку операция навигации по элементам описываемым схемой может приводить к