view Lib/IMPL/DOM/Document.pm @ 44:32d2350fccf9

ORM *Minor fixes *Working tarnsform to sql *Fixes to the sql traits
author Sergey
date Mon, 11 Jan 2010 01:42:00 +0300
parents c2e7f7c96bcd
children 16ada169ca75
line wrap: on
line source

package IMPL::DOM::Document;
use strict;
use warnings;

use base qw(IMPL::DOM::Node);

__PACKAGE__->PassThroughArgs;

sub document {
    return $_[0];
}

sub Create {
    my ($this,$nodeName,$class,$refProps) = @_;
    
    $refProps ||= {};
    
    delete $refProps->{nodeName};
    
    return $class->new(
        nodeName => $nodeName,
        document => $this,
        %$refProps
    );
}

{
    my $empty;
    sub Empty() {
        return $empty ? $empty : $empty = __PACKAGE__->new(nodeName => 'Empty');
    }
}

1;
__END__

=pod

=head1 DESCRIPTION

=head1 METHODS

=over

=item C<<$doc->Create>>

Создает узел определеннго типа с определенным именем и свойствами.

=back

=cut