Mercurial > pub > Impl
comparison Lib/IMPL/DOM/Node.pm @ 1:3b418b134d8c
ORM in progress
| author | Sergey |
|---|---|
| date | Fri, 17 Jul 2009 13:30:46 +0400 |
| parents | 03e58a454b20 |
| children | e59f44f75f20 |
comparison
equal
deleted
inserted
replaced
| 0:03e58a454b20 | 1:3b418b134d8c |
|---|---|
| 5 use base qw(IMPL::Object IMPL::Object::Serializable IMPL::Object::Autofill); | 5 use base qw(IMPL::Object IMPL::Object::Serializable IMPL::Object::Autofill); |
| 6 | 6 |
| 7 use IMPL::Class::Property; | 7 use IMPL::Class::Property; |
| 8 use IMPL::Class::Property::Direct; | 8 use IMPL::Class::Property::Direct; |
| 9 use Scalar::Util qw(weaken); | 9 use Scalar::Util qw(weaken); |
| 10 | |
| 11 use IMPL::Exception; | |
| 10 | 12 |
| 11 __PACKAGE__->PassThroughArgs; | 13 __PACKAGE__->PassThroughArgs; |
| 12 | 14 |
| 13 BEGIN { | 15 BEGIN { |
| 14 public property nodeName => prop_get | owner_set; | 16 public property nodeName => prop_get | owner_set; |
| 18 public property parentNode => prop_get | owner_set; | 20 public property parentNode => prop_get | owner_set; |
| 19 private property _propertyMap => prop_all; | 21 private property _propertyMap => prop_all; |
| 20 } | 22 } |
| 21 | 23 |
| 22 sub CTOR { | 24 sub CTOR { |
| 23 my $this = @_; | 25 my ($this,$name) = @_; |
| 24 | 26 |
| 27 $this->nodeName($name) or die new IMPL::InvalidArgumentException("A name is required"); | |
| 25 $this->_propertyMap({}); | 28 $this->_propertyMap({}); |
| 26 } | 29 } |
| 27 | 30 |
| 28 sub insertNode { | 31 sub insertNode { |
| 29 my ($this,$node,$pos) = @_; | 32 my ($this,$node,$pos) = @_; |
