The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

InterMine::Model::Reference - represents a reference in an InterMine class

SYNOPSIS

 use InterMine::Model::Reference
 ...
 my $field = InterMine::Model::Reference->new(name => 'protein',
                                              model => $model,
                                              referenced_type_name => $ref_type,
                                              reverse_reference_name =>
                                                         $reverse_reference);
 ...

DESCRIPTION

Objects of this class describe the references and collections of a class in an InterMine model. Reference objects are generally part of ClassDescriptor objects.

AUTHOR

FlyMine <support@flymine.org>

BUGS

Please report any bugs or feature requests to support@flymine.org.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc InterMine::Model::Reference

You can also look for information at:

COPYRIGHT & LICENSE

Copyright 2006,2007,2008,2009 FlyMine, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

FUNCTIONS

referenced_type_name

 Usage   : $name = $ref->referenced_type_name();
 Function: Returns the name of the type at the other end of this reference
 Args    : none

referenced_classdescriptor

 Usage   : $cd = $ref->referenced_classdescriptor();
 Function: Returns the ClassDescriptor of the other end of this reference
 Args    : none

rev_referenced_classdescriptor

 Usage   : $cd = $ref->rev_referenced_classdescriptor();
 Function: Returns the ClassDescriptor of the other end of this reference
 Args    : none

reverse_reference

 Usage   : $ref = $ref->reverse_reference();
 Function: Return the Reference object of the reverse reference
 Args    : none

has_reverse_reference

 Usage   : if ($ref->has_reverse_reference()) { ... }
 Function: Return true if and only if this reference has a reverse reference in
           the model
 Args    : none

reverse_reference_name

 Usage   : $name = $ref->reverse_reference_name();
 Function: Return the name of the reverse reference - ie. the name of the field
           in the referenced class that references this class
 Args    : none

is_many_to_many

 Function: Return true if this reference is one end of a many-to-many relation,
           ie. this end is a collection and the other end is a collection
 Args    : none

is_many_to_one

 Function: Return true if this is the reference end of a one-to-many relation,
           ie. this end is a reference and the other end is a collection
 Args    : none

is_many_to_0

 Function: Return true if this is a collection and there is no reverse reference
 Args    : none

is_one_to_many

 Function: Return true if this is the collection end of a one-to-many relation,
           ie. this end is a collection and the other end is a reference
 Args    : none

is_one_to_0

 Function: Return true if this is a reference and there is no reverse reference