Mercurial > pub > Impl
view Lib/IMPL/Web/TT/Collection.pm @ 148:e6447ad85cb4
DOM objects now have a schema and schemaSource properties
RegExp now can launder data
Improved post to DOM transformation (multiple values a now supported)
Added new axes to navigation queries: ancestor and descendant
minor changes and bug fixes
author | wizard |
---|---|
date | Mon, 16 Aug 2010 08:26:44 +0400 |
parents | ddf0f037d460 |
children | 4369d5458bb6 |
line wrap: on
line source
package IMPL::Web::TT::Collection; use strict; use base qw(IMPL::DOM::Node); __PACKAGE__->PassThroughArgs; our $AUTOLOAD; sub AUTOLOAD { my $this = shift; my ($method) = ($AUTOLOAD =~ /(\w+)$/); return if $method eq 'DESTROY'; if ($method =~ /^add(\w+)/) { my ($name,$args) = @_; return $this->appendChild($this->document->CreateControl($name,$1,$args)); } if ( @_ >= 1 ) { # set # we can't assing a node, so this is a dynamic property return $this->nodeProperty($method,@_); } else { # get # try a dynamic property first if ( my $val = $this->nodeProperty($method) ) { return $val; } else { # and return a first child node as last opportunity my @result = $this->selectNodes($method); return $result[0] if @result; return; } } die new IMPL::Exception("We shoud never get here, this is a bug!!!"); } sub as_list { $_[0]->childNodes; } 1;