| UMMF documentation | Contained in the UMMF distribution. |
__validate_type__typecheckisaExtendisaBehavioral_Elements__Use_Cases__Extend__model_name __isAbstract__tangram_schema___initialize__initialize__createconditionset_conditioncount_conditionbaseset_baseadd_baseremove_baseclear_basecount_baseextensionset_extensionadd_extensionremove_extensionclear_extensioncount_extensionextensionPointindex_extensionPointindex_of_extensionPointset_extensionPointset_index_extensionPointadd_extensionPointadd_index_extensionPointremove_extensionPointclear_extensionPointcount_extensionPoint
UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend --
1.5
condition : UMMF::UML_1_5::Foundation::Data_Types::BooleanExpression private1changeableinstanceunorderedSet::Objectextend : THIS 0..* <---> base : UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase 11changeableinstancenonepublicSet::Objectextended : THIS 0..* <---> extension : UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase 11changeableinstancenonepublicSet::Objectextend : THIS 0..* <---> extensionPoint : UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint 1..*1..*changeableinstanceorderednonepublicARRAY__validate_typeUMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend->__validate_type($value);
Returns true if $value is a valid representation of UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend.
__typecheckUMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend->__typecheck($value, $msg);
Calls confess() with $msg if <UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend-__validate_type($value)>> is false.
isaExtendReturns true if receiver is a UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend. Other receivers will return false.
isaBehavioral_Elements__Use_Cases__ExtendReturns true if receiver is a UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend.
Other receivers will return false.
This is the fully qualified version of the isaExtend method.
__model_name my $name = $obj_or_package->__model_name;
Returns the UML Model name ('Behavioral_Elements::Use_Cases::Extend') for an object or package of
this Classifier.
__isAbstract$package->__isAbstract;
Returns 0.
__tangram_schemamy $tangram_schema $obj_or_package->__tangram_schema
Returns a HASH ref that describes this Classifier for Tangram.
___initializeInitialize all Attributes and AssociationEnds in a instance of this Classifier. Does not initalize slots in its Generalizations.
See also: __initialize.
__initializeInitialize all slots in this Classifier and all its Generalizations.
See also: ___initialize.
__createCalls all <<create>> Methods for this Classifier and all Generalizations.
See also: ___create.
conditionmy $val = $obj->condition;
Returns the UMMF::UML_1_5::Foundation::Data_Types::BooleanExpression value of Attribute condition.
set_condition$obj->set_condition($val);
Sets the value of Attribute condition.
$val must be of type UMMF::UML_1_5::Foundation::Data_Types::BooleanExpression or undef.
Returns $obj.
count_condition$obj->count_condition;
Returns the number of elements (0 or 1) in condition.
basemy $val = $obj->base;
Returns the AssociationEnd base value of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase.
set_base$obj->set_base($val);
Sets the AssociationEnd base value.
$val must of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase.
Returns $obj.
add_base$obj->add_base($val);
Adds the AssociationEnd base value.
$val must of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase.
Throws exception if a value already exists.
Returns $obj.
remove_base$obj->remove_base($val);
Removes the AssociationEnd base value $val.
Returns $obj.
clear_base$obj->clear_base;
Clears the AssociationEnd base links to UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase.
Returns $obj.
count_base$obj->count_base;
Returns the number of elements of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase associated with base.
extensionmy $val = $obj->extension;
Returns the AssociationEnd extension value of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase.
set_extension$obj->set_extension($val);
Sets the AssociationEnd extension value.
$val must of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase.
Returns $obj.
add_extension$obj->add_extension($val);
Adds the AssociationEnd extension value.
$val must of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase.
Throws exception if a value already exists.
Returns $obj.
remove_extension$obj->remove_extension($val);
Removes the AssociationEnd extension value $val.
Returns $obj.
clear_extension$obj->clear_extension;
Clears the AssociationEnd extension links to UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase.
Returns $obj.
count_extension$obj->count_extension;
Returns the number of elements of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase associated with extension.
extensionPointmy @val = $obj->extensionPoint; my $ary_val = $obj->extensionPoint;
Returns the AssociationEnd extensionPoint values of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint.
In array context, returns all the objects in the Association.
In scalar context, returns an array ref of all the objects in the Association.
index_extensionPointmy $x = $obj->index_extensionPoint($i); my @x = $obj->index_extensionPoint($i, $count);
In scalar context, returns the value of AssociationEnd extensionPoint at index $i.
In array context, returns the values between index $i and $i + $count - 1, inclusive.
index_of_extensionPointmy $index = $obj->index_of_extensionPoint($val);
Returns the index of $val in AssociationEnd extensionPoint.
Return undef if $val is not in extensionPoint.
set_extensionPoint$obj->set_extensionPoint(@val);
Sets the AssociationEnd extensionPoint value.
Elements of @val must of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint.
Returns $obj.
set_index_extensionPoint$obj->set_index_extensionPoint($i, $val);
Sets the value of AssociationEnd extensionPoint at index $i.
Returns self.
add_extensionPoint$obj->add_extensionPoint(@val);
Adds AssociationEnd extensionPoint values.
Elements of @val must of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint.
Returns $obj.
add_index_extensionPoint$obj->add_index_extensionPoint($i, @val);
Adds AssociationEnd extensionPoint values at index $i.
Elements of @val must of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint.
Returns $obj.
remove_extensionPoint$obj->remove_extensionPoint(@val);
Removes the AssociationEnd extensionPoint values @val.
Elements of @val must of type UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint.
Returns $obj.
clear_extensionPoint$obj->clear_extensionPoint;
Clears the AssociationEnd extensionPoint links to UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint.
Returns $obj.
count_extensionPoint$obj->count_extensionPoint;
Returns the number of elements associated with extensionPoint.
END OF DOCUMENT
| UMMF documentation | Contained in the UMMF distribution. |
# -*- perl -*- # DO NOT EDIT - This file is generated by UMMF; http://ummf.sourceforge.net # From template: $Id: Perl.txt,v 1.77 2006/05/14 01:40:03 kstephens Exp $ package UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend; #use 5.6.1; use strict; use warnings; ################################################################# # Version # our $VERSION = do { my @r = (q{1.5} =~ /\d+/g); sprintf "%d." . "%03d" x $#r, @r }; ################################################################# # Documentation #
################################################################# # Dependencies # use Carp qw(croak confess); use Set::Object 1.05; use Class::Multimethods 1.70; use Data::Dumper; use Scalar::Util qw(weaken); use UMMF::UML_1_5::__ObjectBase qw(:__ummf_array); ################################################################# # Generalizations # use base qw( UMMF::UML_1_5::Foundation::Core::Relationship ); ################################################################# # Exports # our @EXPORT_OK = qw( ); our %EXPORT_TAGS = ( 'all' => \@EXPORT_OK ); ################################################################# # Validation #
sub __validate_type($$) { my ($self, $x) = @_; no warnings; UNIVERSAL::isa($x, 'UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend') ; }
sub __typecheck { my ($self, $x, $msg) = @_; confess("typecheck: $msg: type '" . 'UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend' . ": value '$x'") unless __validate_type($self, $x); }
sub isaExtend { 1 }
sub isaBehavioral_Elements__Use_Cases__Extend { 1 } ################################################################# # Introspection #
sub __model_name { 'Behavioral_Elements::Use_Cases::Extend' }
sub __isAbstract { 0; } my $__tangram_schema;
sub __tangram_schema { my ($self) = @_; $__tangram_schema ||= { 'classes' => [ 'UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend' => { 'table' => 'Behavioral_Elements__Use_Cases__Extend', 'abstract' => 0, 'slots' => { # Attributes 'condition' => { 'type_impl' => 'ref', 'class' => 'UMMF::UML_1_5::Foundation::Data_Types::BooleanExpression', 'col' => 'condition', } , # Associations 'base' => { 'type_impl' => 'ref', 'class' => 'UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase', 'col' => 'base', } , 'extension' => { 'type_impl' => 'ref', 'class' => 'UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase', 'col' => 'extension', } , 'extensionPoint' => { 'type_impl' => 'array', 'class' => 'UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint', 'table' => 'Behavioral_Elements__Use_Cases__ExtensionPoint_Extend', 'item' => 'extensionPoint', 'coll' => 'extend', 'slot' => 'extensionPoint_i', } , }, 'bases' => [ 'UMMF::UML_1_5::Foundation::Core::Relationship', ], 'sql' => { }, }, ], 'sql' => { # Note Tangram::Ref::get_exporter() has # "UPDATE $table SET $self->{col} = $refid WHERE id = $id", # The id_col is hard-coded, # Thus id_col will not work. #'id_col' => '__sid', #'class_col' => '__stype', }, # 'set_id' => sub { } # 'get_id' => sub { } }; } ################################################################# # Class Attributes # ################################################################# # Class Associations # ################################################################# # Initialization #
sub ___initialize { my ($self) = @_; # Attributes # Attribute condition if ( exists $self->{'condition'} ) { my $x = $self->{'condition'}; $self->{'condition'} = undef; $self->set_condition($x); } else { } # Associations # AssociationEnd # extend 0..* # <--> # base 1 UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase. if ( defined $self->{'base'} ) { my $x = $self->{'base'}; $self->{'base'} = undef; $self->set_base($x); } # AssociationEnd # extended 0..* # <--> # extension 1 UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase. if ( defined $self->{'extension'} ) { my $x = $self->{'extension'}; $self->{'extension'} = undef; $self->set_extension($x); } # AssociationEnd # extend 0..* # <--> # extensionPoint 1..* UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint. if ( defined $self->{'extensionPoint'} ) { my $x = $self->{'extensionPoint'}; $self->{'extensionPoint'} = [ ]; $self->set_extensionPoint(@$x); } $self; } my $__initialize_use;
sub __initialize { my ($self) = @_; # $DB::single = 1; unless ( ! $__initialize_use ) { $__initialize_use = 1; $self->__use('UMMF::UML_1_5::Foundation::Core::Element'); $self->__use('UMMF::UML_1_5::Foundation::Core::ModelElement'); $self->__use('UMMF::UML_1_5::Foundation::Core::Relationship'); } $self->UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend::___initialize; $self->UMMF::UML_1_5::Foundation::Core::Element::___initialize; $self->UMMF::UML_1_5::Foundation::Core::ModelElement::___initialize; $self->UMMF::UML_1_5::Foundation::Core::Relationship::___initialize; $self; }
sub __create { my ($self, @args) = @_; # $DB::single = 1; $self->UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend::___create(@args); $self->UMMF::UML_1_5::Foundation::Core::Element::___create(); $self->UMMF::UML_1_5::Foundation::Core::ModelElement::___create(); $self->UMMF::UML_1_5::Foundation::Core::Relationship::___create(); $self; } ################################################################# # Attributes #
################################################################# # Attribute condition # type = UMMF::UML_1_5::Foundation::Data_Types::BooleanExpression # multiplicity = 1 # ordering = unordered # ownerScope = instance # initialValue =
sub condition ($) { my ($self) = @_; ; my $val = $self->{'condition'}; ; $val; }
sub set_condition ($$) { my ($self, $val) = @_; ; if ( defined $val ) { $self->__use('UMMF::UML_1_5::Foundation::Data_Types::BooleanExpression')->__typecheck($val, "UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend.condition"); } $self->{'condition'} = $val ; ; $self; }
sub count_condition ($) { my ($self) = @_; ; my $val = $self->{'condition'}; ; defined $val ? 1 : 0; } ################################################################# # Association #
################################################################# # AssociationEnd extend <---> base # type = UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase # multiplicity = 1 # ordering =
sub base ($) { my ($self) = @_; $self->{'base'}; }
sub set_base ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'base'}) ne $val ) { # Recursion lock if ( defined $val ) { $self->__use('UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase')->__typecheck($val, "UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend.base") } # Recursion lock $self->{'base'} = $val ; # Remove and add associations with other ends. $old->remove_extend($self) if $old; $val->add_extend($self) if $val; } $self; }
sub add_base ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'base'}) ne $val ) { # Recursion lock $self->__use('UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase')->__typecheck($val, "UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend.base"); # confess("UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend::base: too many") # if defined $self->{'base'}; # Recursion lock $self->{'base'} = $val ; # Remove and add associations with other ends. $old->remove_extend($self) if $old; $val->add_extend($self) if $val; } $self; }
sub remove_base ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'base'}) eq $val ) { # Recursion lock $val = $self->{'base'} = undef; # Recursion lock # Remove and add associations with other ends. $old->remove_extend($self) if $old; $val->add_extend($self) if $val; } }
sub clear_base ($@) { my ($self) = @_; my $old; if ( defined ($old = $self->{'base'}) ) { # Recursion lock my $val = $self->{'base'} = undef; # Recursion lock # Remove and add associations with other ends. $old->remove_extend($self) if $old; $val->add_extend($self) if $val; } $self; }
sub count_base ($) { my ($self) = @_; my $x = $self->{'base'}; defined $x ? 1 : 0; }
################################################################# # AssociationEnd extended <---> extension # type = UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase # multiplicity = 1 # ordering =
sub extension ($) { my ($self) = @_; $self->{'extension'}; }
sub set_extension ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'extension'}) ne $val ) { # Recursion lock if ( defined $val ) { $self->__use('UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase')->__typecheck($val, "UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend.extension") } # Recursion lock $self->{'extension'} = $val ; # Remove and add associations with other ends. $old->remove_extended($self) if $old; $val->add_extended($self) if $val; } $self; }
sub add_extension ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'extension'}) ne $val ) { # Recursion lock $self->__use('UMMF::UML_1_5::Behavioral_Elements::Use_Cases::UseCase')->__typecheck($val, "UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend.extension"); # confess("UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend::extension: too many") # if defined $self->{'extension'}; # Recursion lock $self->{'extension'} = $val ; # Remove and add associations with other ends. $old->remove_extended($self) if $old; $val->add_extended($self) if $val; } $self; }
sub remove_extension ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'extension'}) eq $val ) { # Recursion lock $val = $self->{'extension'} = undef; # Recursion lock # Remove and add associations with other ends. $old->remove_extended($self) if $old; $val->add_extended($self) if $val; } }
sub clear_extension ($@) { my ($self) = @_; my $old; if ( defined ($old = $self->{'extension'}) ) { # Recursion lock my $val = $self->{'extension'} = undef; # Recursion lock # Remove and add associations with other ends. $old->remove_extended($self) if $old; $val->add_extended($self) if $val; } $self; }
sub count_extension ($) { my ($self) = @_; my $x = $self->{'extension'}; defined $x ? 1 : 0; }
################################################################# # AssociationEnd extend <---> extensionPoint # type = UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint # multiplicity = 1..* # ordering = ordered
sub extensionPoint ($) { my ($self) = @_; my $x = $self->{'extensionPoint'} ||= [ ]; wantarray ? @{$x} : $x; }
sub index_extensionPoint ($$@) { my ($self, $i, $count) = @_; ; my $val = $self->{'extensionPoint'} ||= [ ]; ; wantarray ? $val->[$i .. (defined $count ? $i + $count - 1 : $i)] : $val->[$i]; }
sub index_of_extensionPoint ($$) { my ($self, $x) = @_; ; my $val = $self->{'extensionPoint'} ||= [ ]; ; __ummf_array_index($val, $x); }
sub set_extensionPoint ($@) { my ($self, @val) = @_; $self->clear_extensionPoint; $self->add_extensionPoint(@val); }
sub set_index_extensionPoint ($$$) { my ($self, $i, $val) = @_; ; my $x = $self->{'extensionPoint'} ||= [ ]; no warnings; my $old; if ( ($old = $x->[$i]) ne $val) { # Recursion lock $x->[$i] = $val ; # Remove and add associations with other ends. $old->remove_extend($self) if $old; $val->add_extend($self) if $val; ; } $self; }
sub add_extensionPoint ($@) { my ($self, @val) = @_; my $x = $self->{'extensionPoint'} ||= [ ]; my $old; # Place holder for other MACRO. for my $val ( @val ) { # Recursion lock next if grep($_ eq $val, @$x); $self->__use('UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint')->__typecheck($val, "UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend.extensionPoint"); # Recursion lock push(@{$x}, $val); # Remove and add associations with other ends. $old->remove_extend($self) if $old; $val->add_extend($self) if $val; } $self; }
sub add_index_extensionPoint ($$@) { my ($self, $i, @val) = @_; my $x = $self->{'extensionPoint'} ||= [ ]; my $old; # Place holder for other MACRO. for my $val ( @val ) { # Recursion lock next if grep($_ eq $val, @$x); $self->__use('UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint')->__typecheck($val, "UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend.extensionPoint"); # Recursion lock splice(@{$x}, $i, 0, $val); # Recursion lock ++ $i; # Remove and add associations with other ends. $old->remove_extend($self) if $old; $val->add_extend($self) if $val; } $self; }
sub remove_extensionPoint ($@) { my ($self, @val) = @_; my $x = $self->{'extensionPoint'} ||= [ ]; for my $old ( @val ) { # Recursion lock my $i; # index of $old in @$x. next unless defined($i = __ummf_array_index($x, $old)); my $val = $old; $self->__use('UMMF::UML_1_5::Behavioral_Elements::Use_Cases::ExtensionPoint')->__typecheck($val, "UMMF::UML_1_5::Behavioral_Elements::Use_Cases::Extend.extensionPoint"); # Recursion lock splice(@$x, $i, 1); $val = undef; # Remove associations with other ends. $old->remove_extend($self) if $old; $val->add_extend($self) if $val; ; } $self; }
sub clear_extensionPoint ($) { my ($self) = @_; my $x = $self->{'extensionPoint'} ||= [ ]; my $val; # Place holder for other MACRO. $self->{'extensionPoint'} = [ ]; # Recursion lock for my $old ( @$x ) { # Recursion lock # Remove associations with other ends. $old->remove_extend($self) if $old; $val->add_extend($self) if $val; ; } $self; }
sub count_extensionPoint ($) { my ($self) = @_; my $x = $self->{'extensionPoint'}; defined $x ? scalar @$x : 0; } # End of Class Extend
############################################################################ 1; # is true! ############################################################################ ### Keep these comments at end of file: kstephens@users.sourceforge.net 2003/04/06 ### ### Local Variables: ### ### mode:perl ### ### perl-indent-level:2 ### ### perl-continued-statement-offset:0 ### ### perl-brace-offset:0 ### ### perl-label-offset:0 ### ### End: ###