Mercurial > pub > Impl
view Lib/IMPL/ORM/Schema/Field.pm @ 178:658a80d19d33
new constructor syntax
author | sourcer |
---|---|
date | Wed, 12 Oct 2011 00:06:07 +0300 |
parents | 4267a2ac3d46 |
children |
line wrap: on
line source
package IMPL::ORM::Schema::Field; use strict; use warnings; use parent qw(IMPL::DOM::Node); use IMPL::Class::Property; BEGIN { public property fieldName => prop_get | owner_set; public property fieldType => prop_get | owner_set; public property fieldNullbale => prop_get | owner_set; } our %CTOR = ( 'IMPL::DOM::Node' => sub { nodeName => 'Field' } ); sub CTOR { my ($this,$name,$type,$nullable) = @_; $this->fieldName($name) or die new IMPL::InvalidArgumentException('A name is required for the field'); $this->fieldType($type) or die new IMPL::InvalidArgumentException('A type is required for the field'); $this->fieldNullbale(1) if $nullable; } sub canHaveChildren { 0; } 1;