| UMMF documentation | Contained in the UMMF distribution. |
parameter : THIS 0..* <---> behavioralFeature : UMMF::UML_1_5::Foundation::Core::BehavioralFeature 0..1parameter : THIS 0..* <---> event : UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event 0..1parameter : THIS 0..* <---> state : UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState 0..*0..*changeableinstance1nonepublicSet::Object
parameter : THIS 0..* <---> type : UMMF::UML_1_5::Foundation::Core::Classifier 1__validate_type__typecheckisaParameterisaFoundation__Core__Parameter__model_name __isAbstract__tangram_schema___initialize__initialize__createdefaultValueset_defaultValuecount_defaultValuekindset_kindcount_kindbehavioralFeatureset_behavioralFeatureadd_behavioralFeatureremove_behavioralFeatureclear_behavioralFeaturecount_behavioralFeatureeventset_eventadd_eventremove_eventclear_eventcount_eventstateset_stateadd_stateremove_stateclear_statecount_statetypeset_typeadd_typeremove_typeclear_typecount_type
UMMF::UML_1_5::Foundation::Core::Parameter --
1.5
defaultValue : UMMF::UML_1_5::Foundation::Data_Types::Expression private1changeableinstanceunorderedSet::Objectkind : UMMF::UML_1_5::Foundation::Data_Types::ParameterDirectionKind private1changeableinstanceunordered<"inout">Set::Objectparameter : THIS 0..* <---> behavioralFeature : UMMF::UML_1_5::Foundation::Core::BehavioralFeature 0..10..1changeableinstancenoneprivateSet::Objectparameter : THIS 0..* <---> event : UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event 0..10..1changeableinstancecompositeprivateSet::Objectparameter : THIS 0..* <---> state : UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState 0..*0..*changeableinstancenonepublicSet::Objectparameter : THIS 0..* <---> type : UMMF::UML_1_5::Foundation::Core::Classifier 11changeableinstancenonepublicSet::Object__validate_typeUMMF::UML_1_5::Foundation::Core::Parameter->__validate_type($value);
Returns true if $value is a valid representation of UMMF::UML_1_5::Foundation::Core::Parameter.
__typecheckUMMF::UML_1_5::Foundation::Core::Parameter->__typecheck($value, $msg);
Calls confess() with $msg if <UMMF::UML_1_5::Foundation::Core::Parameter-__validate_type($value)>> is false.
isaParameterReturns true if receiver is a UMMF::UML_1_5::Foundation::Core::Parameter. Other receivers will return false.
isaFoundation__Core__ParameterReturns true if receiver is a UMMF::UML_1_5::Foundation::Core::Parameter.
Other receivers will return false.
This is the fully qualified version of the isaParameter method.
__model_name my $name = $obj_or_package->__model_name;
Returns the UML Model name ('Foundation::Core::Parameter') 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.
defaultValuemy $val = $obj->defaultValue;
Returns the UMMF::UML_1_5::Foundation::Data_Types::Expression value of Attribute defaultValue.
set_defaultValue$obj->set_defaultValue($val);
Sets the value of Attribute defaultValue.
$val must be of type UMMF::UML_1_5::Foundation::Data_Types::Expression or undef.
Returns $obj.
count_defaultValue$obj->count_defaultValue;
Returns the number of elements (0 or 1) in defaultValue.
kindmy $val = $obj->kind;
Returns the UMMF::UML_1_5::Foundation::Data_Types::ParameterDirectionKind value of Attribute kind.
set_kind$obj->set_kind($val);
Sets the value of Attribute kind.
$val must be of type UMMF::UML_1_5::Foundation::Data_Types::ParameterDirectionKind or undef.
Returns $obj.
count_kind$obj->count_kind;
Returns the number of elements (0 or 1) in kind.
behavioralFeaturemy $val = $obj->behavioralFeature;
Returns the AssociationEnd behavioralFeature value of type UMMF::UML_1_5::Foundation::Core::BehavioralFeature.
set_behavioralFeature$obj->set_behavioralFeature($val);
Sets the AssociationEnd behavioralFeature value.
$val must of type UMMF::UML_1_5::Foundation::Core::BehavioralFeature.
Returns $obj.
add_behavioralFeature$obj->add_behavioralFeature($val);
Adds the AssociationEnd behavioralFeature value.
$val must of type UMMF::UML_1_5::Foundation::Core::BehavioralFeature.
Throws exception if a value already exists.
Returns $obj.
remove_behavioralFeature$obj->remove_behavioralFeature($val);
Removes the AssociationEnd behavioralFeature value $val.
Returns $obj.
clear_behavioralFeature$obj->clear_behavioralFeature;
Clears the AssociationEnd behavioralFeature links to UMMF::UML_1_5::Foundation::Core::BehavioralFeature.
Returns $obj.
count_behavioralFeature$obj->count_behavioralFeature;
Returns the number of elements of type UMMF::UML_1_5::Foundation::Core::BehavioralFeature associated with behavioralFeature.
eventmy $val = $obj->event;
Returns the AssociationEnd event value of type UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event.
set_event$obj->set_event($val);
Sets the AssociationEnd event value.
$val must of type UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event.
Returns $obj.
add_event$obj->add_event($val);
Adds the AssociationEnd event value.
$val must of type UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event.
Throws exception if a value already exists.
Returns $obj.
remove_event$obj->remove_event($val);
Removes the AssociationEnd event value $val.
Returns $obj.
clear_event$obj->clear_event;
Clears the AssociationEnd event links to UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event.
Returns $obj.
count_event$obj->count_event;
Returns the number of elements of type UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event associated with event.
statemy @val = $obj->state; my $ary_val = $obj->state;
Returns the AssociationEnd state values of type UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState (UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState).
In array context, returns all the objects in the Association.
In scalar context, returns an array ref of all the objects in the Association.
set_state$obj->set_state(@val);
Sets the AssociationEnd state value.
Elements of @val must of type UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState (UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState).
Returns $obj.
add_state$obj->add_state(@val);
Adds AssociationEnd state values.
Elements of @val must of type UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState (UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState).
Returns $obj.
remove_state$obj->remove_state(@val);
Removes the AssociationEnd state values @val.
Elements of @val must of type UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState (UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState).
Returns $obj.
clear_state$obj->clear_state;
Clears the AssociationEnd state links to UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState (UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState).
Returns $obj.
count_state$obj->count_state;
Returns the number of elements associated with state.
typemy $val = $obj->type;
Returns the AssociationEnd type value of type UMMF::UML_1_5::Foundation::Core::Classifier.
set_type$obj->set_type($val);
Sets the AssociationEnd type value.
$val must of type UMMF::UML_1_5::Foundation::Core::Classifier.
Returns $obj.
add_type$obj->add_type($val);
Adds the AssociationEnd type value.
$val must of type UMMF::UML_1_5::Foundation::Core::Classifier.
Throws exception if a value already exists.
Returns $obj.
remove_type$obj->remove_type($val);
Removes the AssociationEnd type value $val.
Returns $obj.
clear_type$obj->clear_type;
Clears the AssociationEnd type links to UMMF::UML_1_5::Foundation::Core::Classifier.
Returns $obj.
count_type$obj->count_type;
Returns the number of elements of type UMMF::UML_1_5::Foundation::Core::Classifier associated with type.
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::Foundation::Core::Parameter; #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::ModelElement ); ################################################################# # 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::Foundation::Core::Parameter') ; }
sub __typecheck { my ($self, $x, $msg) = @_; confess("typecheck: $msg: type '" . 'UMMF::UML_1_5::Foundation::Core::Parameter' . ": value '$x'") unless __validate_type($self, $x); }
sub isaParameter { 1 }
sub isaFoundation__Core__Parameter { 1 } ################################################################# # Introspection #
sub __model_name { 'Foundation::Core::Parameter' }
sub __isAbstract { 0; } my $__tangram_schema;
sub __tangram_schema { my ($self) = @_; $__tangram_schema ||= { 'classes' => [ 'UMMF::UML_1_5::Foundation::Core::Parameter' => { 'table' => 'Foundation__Core__Parameter', 'abstract' => 0, 'slots' => { # Attributes 'defaultValue' => { 'type_impl' => 'ref', 'class' => 'UMMF::UML_1_5::Foundation::Data_Types::Expression', 'col' => 'defaultValue', } , 'kind' => { 'type_impl' => 'string', 'col' => 'kind', } , # Associations 'behavioralFeature' => { 'type_impl' => 'ref', 'class' => 'UMMF::UML_1_5::Foundation::Core::BehavioralFeature', 'null' => '1', 'col' => 'behavioralFeature', } , 'event' => { 'type_impl' => 'ref', 'class' => 'UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event', 'null' => '1', 'col' => 'event', } , 'state' => { 'type_impl' => 'set', 'class' => 'UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState', 'table' => 'State_Parameter', 'item' => 'state', 'coll' => 'parameter', } , 'type' => { 'type_impl' => 'ref', 'class' => 'UMMF::UML_1_5::Foundation::Core::Classifier', 'col' => 'type', } , }, 'bases' => [ 'UMMF::UML_1_5::Foundation::Core::ModelElement', ], '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 defaultValue if ( exists $self->{'defaultValue'} ) { my $x = $self->{'defaultValue'}; $self->{'defaultValue'} = undef; $self->set_defaultValue($x); } else { } # Attribute kind if ( exists $self->{'kind'} ) { my $x = $self->{'kind'}; $self->{'kind'} = undef; $self->set_kind($x); } else { $self->{'kind'} = "inout"; } # Associations # AssociationEnd # parameter 0..* # <--> # behavioralFeature 0..1 UMMF::UML_1_5::Foundation::Core::BehavioralFeature. if ( defined $self->{'behavioralFeature'} ) { my $x = $self->{'behavioralFeature'}; $self->{'behavioralFeature'} = undef; $self->set_behavioralFeature($x); } # AssociationEnd # parameter 0..* # <--> # event 0..1 UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event. if ( defined $self->{'event'} ) { my $x = $self->{'event'}; $self->{'event'} = undef; $self->set_event($x); } # AssociationEnd # parameter 0..* # <--> # state 0..* UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState. if ( defined $self->{'state'} ) { my $x = $self->{'state'}; $self->{'state'} = Set::Object->new(); $self->set_state(@$x); } # AssociationEnd # parameter 0..* # <--> # type 1 UMMF::UML_1_5::Foundation::Core::Classifier. if ( defined $self->{'type'} ) { my $x = $self->{'type'}; $self->{'type'} = undef; $self->set_type($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->UMMF::UML_1_5::Foundation::Core::Parameter::___initialize; $self->UMMF::UML_1_5::Foundation::Core::Element::___initialize; $self->UMMF::UML_1_5::Foundation::Core::ModelElement::___initialize; $self; }
sub __create { my ($self, @args) = @_; # $DB::single = 1; $self->UMMF::UML_1_5::Foundation::Core::Parameter::___create(@args); $self->UMMF::UML_1_5::Foundation::Core::Element::___create(); $self->UMMF::UML_1_5::Foundation::Core::ModelElement::___create(); $self; } ################################################################# # Attributes #
################################################################# # Attribute defaultValue # type = UMMF::UML_1_5::Foundation::Data_Types::Expression # multiplicity = 1 # ordering = unordered # ownerScope = instance # initialValue =
sub defaultValue ($) { my ($self) = @_; ; my $val = $self->{'defaultValue'}; ; $val; }
sub set_defaultValue ($$) { my ($self, $val) = @_; ; if ( defined $val ) { $self->__use('UMMF::UML_1_5::Foundation::Data_Types::Expression')->__typecheck($val, "UMMF::UML_1_5::Foundation::Core::Parameter.defaultValue"); } $self->{'defaultValue'} = $val ; ; $self; }
sub count_defaultValue ($) { my ($self) = @_; ; my $val = $self->{'defaultValue'}; ; defined $val ? 1 : 0; }
################################################################# # Attribute kind # type = UMMF::UML_1_5::Foundation::Data_Types::ParameterDirectionKind # multiplicity = 1 # ordering = unordered # ownerScope = instance # initialValue = "inout"
sub kind ($) { my ($self) = @_; ; my $val = $self->{'kind'}; ; $val; }
sub set_kind ($$) { my ($self, $val) = @_; ; if ( defined $val ) { $self->__use('UMMF::UML_1_5::Foundation::Data_Types::ParameterDirectionKind')->__typecheck($val, "UMMF::UML_1_5::Foundation::Core::Parameter.kind"); } $self->{'kind'} = $val ; ; $self; }
sub count_kind ($) { my ($self) = @_; ; my $val = $self->{'kind'}; ; defined $val ? 1 : 0; } ################################################################# # Association #
################################################################# # AssociationEnd parameter <---> behavioralFeature # type = UMMF::UML_1_5::Foundation::Core::BehavioralFeature # multiplicity = 0..1 # ordering =
sub behavioralFeature ($) { my ($self) = @_; $self->{'behavioralFeature'}; }
sub set_behavioralFeature ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'behavioralFeature'}) ne $val ) { # Recursion lock if ( defined $val ) { $self->__use('UMMF::UML_1_5::Foundation::Core::BehavioralFeature')->__typecheck($val, "UMMF::UML_1_5::Foundation::Core::Parameter.behavioralFeature") } # Recursion lock $self->{'behavioralFeature'} = $val ; # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } $self; }
sub add_behavioralFeature ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'behavioralFeature'}) ne $val ) { # Recursion lock $self->__use('UMMF::UML_1_5::Foundation::Core::BehavioralFeature')->__typecheck($val, "UMMF::UML_1_5::Foundation::Core::Parameter.behavioralFeature"); # confess("UMMF::UML_1_5::Foundation::Core::Parameter::behavioralFeature: too many") # if defined $self->{'behavioralFeature'}; # Recursion lock $self->{'behavioralFeature'} = $val ; # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } $self; }
sub remove_behavioralFeature ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'behavioralFeature'}) eq $val ) { # Recursion lock $val = $self->{'behavioralFeature'} = undef; # Recursion lock # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } }
sub clear_behavioralFeature ($@) { my ($self) = @_; my $old; if ( defined ($old = $self->{'behavioralFeature'}) ) { # Recursion lock my $val = $self->{'behavioralFeature'} = undef; # Recursion lock # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } $self; }
sub count_behavioralFeature ($) { my ($self) = @_; my $x = $self->{'behavioralFeature'}; defined $x ? 1 : 0; }
################################################################# # AssociationEnd parameter <---> event # type = UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event # multiplicity = 0..1 # ordering =
sub event ($) { my ($self) = @_; $self->{'event'}; }
sub set_event ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'event'}) ne $val ) { # Recursion lock if ( defined $val ) { $self->__use('UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event')->__typecheck($val, "UMMF::UML_1_5::Foundation::Core::Parameter.event") } # Recursion lock $self->{'event'} = $val ; # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } $self; }
sub add_event ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'event'}) ne $val ) { # Recursion lock $self->__use('UMMF::UML_1_5::Behavioral_Elements::State_Machines::Event')->__typecheck($val, "UMMF::UML_1_5::Foundation::Core::Parameter.event"); # confess("UMMF::UML_1_5::Foundation::Core::Parameter::event: too many") # if defined $self->{'event'}; # Recursion lock $self->{'event'} = $val ; # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } $self; }
sub remove_event ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'event'}) eq $val ) { # Recursion lock $val = $self->{'event'} = undef; # Recursion lock # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } }
sub clear_event ($@) { my ($self) = @_; my $old; if ( defined ($old = $self->{'event'}) ) { # Recursion lock my $val = $self->{'event'} = undef; # Recursion lock # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } $self; }
sub count_event ($) { my ($self) = @_; my $x = $self->{'event'}; defined $x ? 1 : 0; }
################################################################# # AssociationEnd parameter <---> state # type = UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState # multiplicity = 0..* # ordering =
sub state ($) { my ($self) = @_; my $x = $self->{'state'}; # confess("Container for state $x is not a blessed ref: " . Data::Dumper->new([ $self ], [qw($self)])->Maxdepth(2)->Dump()) if $x && ref($x) !~ /::/; wantarray ? ($x ? $x->members() : ()) : [ $x ? $x->members() : () ]; }
sub set_state ($@) { my ($self, @val) = @_; $self->clear_state; $self->add_state(@val); }
sub add_state ($@) { my ($self, @val) = @_; my $x = $self->{'state'} ||= Set::Object->new(); my $old; # Place holder for other MACRO. for my $val ( @val ) { # Recursion lock next if $x->includes($val); $self->__use('UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState')->__typecheck($val, "UMMF::UML_1_5::Foundation::Core::Parameter.state"); # Recursion lock $x->insert($val); # weaken? # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } $self; }
sub remove_state ($@) { my ($self, @val) = @_; my $x = $self->{'state'} ||= Set::Object->new(); for my $old ( @val ) { # Recursion lock next unless $x->includes($old); my $val = $old; $self->__use('UMMF::UML_1_5::Behavioral_Elements::Activity_Graphs::ObjectFlowState')->__typecheck($val, "UMMF::UML_1_5::Foundation::Core::Parameter.state"); # Recursion lock $x->remove($old); $val = undef; # Remove associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; ; } $self; }
sub clear_state ($) { my ($self) = @_; my $x = $self->{'state'} ||= Set::Object->new(); my $val; # Place holder for other MACRO. $self->{'state'} = Set::Object->new(); # Recursion lock for my $old ( $x->members() ) { # Recursion lock # Remove associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; ; } $self; }
sub count_state ($) { my ($self) = @_; my $x = $self->{'state'}; defined $x ? $x->size : 0; }
################################################################# # AssociationEnd parameter <---> type # type = UMMF::UML_1_5::Foundation::Core::Classifier # multiplicity = 1 # ordering =
sub type ($) { my ($self) = @_; $self->{'type'}; }
sub set_type ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'type'}) ne $val ) { # Recursion lock if ( defined $val ) { $self->__use('UMMF::UML_1_5::Foundation::Core::Classifier')->__typecheck($val, "UMMF::UML_1_5::Foundation::Core::Parameter.type") } # Recursion lock $self->{'type'} = $val ; # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } $self; }
sub add_type ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'type'}) ne $val ) { # Recursion lock $self->__use('UMMF::UML_1_5::Foundation::Core::Classifier')->__typecheck($val, "UMMF::UML_1_5::Foundation::Core::Parameter.type"); # confess("UMMF::UML_1_5::Foundation::Core::Parameter::type: too many") # if defined $self->{'type'}; # Recursion lock $self->{'type'} = $val ; # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } $self; }
sub remove_type ($$) { my ($self, $val) = @_; no warnings; # Use of uninitialized value in string ne at ... my $old; if ( ($old = $self->{'type'}) eq $val ) { # Recursion lock $val = $self->{'type'} = undef; # Recursion lock # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } }
sub clear_type ($@) { my ($self) = @_; my $old; if ( defined ($old = $self->{'type'}) ) { # Recursion lock my $val = $self->{'type'} = undef; # Recursion lock # Remove and add associations with other ends. $old->remove_parameter($self) if $old; $val->add_parameter($self) if $val; } $self; }
sub count_type ($) { my ($self) = @_; my $x = $self->{'type'}; defined $x ? 1 : 0; } # End of Class Parameter
############################################################################ 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: ###