Bio::A...dValue(3pm)
๐ Bio::Annotation::StructuredValue ๐
okay bestie, sit down, hydrate, and let me tell you about Bio::Annotation::StructuredValue โ it's a Perl module from the Bioperl crew (you know, section 3pm, the user-contributed Perl docs zone), and it's literally just a scalar that's secretly carrying a whole structured little world inside it. no cap.
โจ NAME โจ
Bio::Annotation::StructuredValue โ a scalar with embedded structured information. it's giving "simple on the outside, deeply nested on the inside" ๐ฆ
๐ธ SYNOPSIS ๐ธ
use Bio::Annotation::StructuredValue;
use Bio::Annotation::Collection;
my $col = Bio::Annotation::Collection->new();
my $sv = Bio::Annotation::StructuredValue->new(-value => 'someval');
$col->add_Annotation('tagname', $sv);
see how easy that was? make a collection, make a structured value, yeet it in with a tagname. iconic behavior honestly ๐
๐ DESCRIPTION ๐
scalar value annotation object. that's the whole vibe. a value, but make it annotated. ๐
๐ซถ FEEDBACK ๐ซถ
๐ Mailing Lists
user feedback is an integral part of the evolution of this and other Bioperl modules โ like, the integral integral, bestie. send your comments and suggestions preferably to one of the Bioperl mailing lists. your participation is much appreciated, fr fr.
bioperl-l@bioperl.org - General discussion
http://bioperl.org/wiki/Mailing_lists - About the mailing lists
๐ฉน Support
please direct usage questions or support issues to the mailing list:
bioperl-l@bioperl.org
rather than to the module maintainer directly. many experienced and reponsive experts will be able look at the problem and quickly address it. please include a thorough description of the problem with code and data examples if at all possible. (yes, include the code. we need the receipts. ๐)
๐ Reporting Bugs
report bugs to the Bioperl bug tracking system to help us keep track the bugs and their resolution. bug reports can be submitted via or the web:
https://github.com/bioperl/bioperl-live/issues
๐ AUTHOR - Hilmar Lapp ๐
Email hlapp-at-gmx.net
๐ APPENDIX ๐
the rest of the documentation details each of the object methods. internal methods are usually preceded with a _ (the underscore is like the secret handshake, iykyk).
๐ new
- Title :
new - Usage :
my $sv = Bio::Annotation::StructuredValue->new(); - Function: instantiate a new StructuredValue object
- Returns :
Bio::Annotation::StructuredValueobject - Args :
-value=>$valueto initialize the object data field [optional]-tagname=>$tagto initialize the tagname [optional]
๐ AnnotationI implementing functions
๐ as_text
- Title :
as_text - Usage :
my $text = $obj->as_text - Function: return the string
"Value: $v"where$vis the value - Returns : string
- Args : none
๐จ๏ธ display_text
- Title :
display_text - Usage :
my $str = $ann->display_text(); - Function: returns a string. unlike
as_text(), this method returns a string formatted as would be expected for te specific implementation.
one can pass a callback as an argument which allows custom text generation; the callback is passed the current instance and any text returned
- Example :
- Returns : a string
- Args : [optional] callback
๐ณ hash_tree
- Title :
hash_tree - Usage :
my $hashtree = $value->hash_tree - Function: for supporting the AnnotationI interface just returns the value as a hashref with the key
'value'pointing to the value - Returns : hashrf
- Args : none
๐ท๏ธ tagname
- Title :
tagname - Usage :
$obj->tagname($newval) - Function: get/set the tagname for this annotation value.
setting this is optional. if set, it obviates the need to provide a tag to AnnotationCollection when adding this object.
- Example :
- Returns : value of tagname (a scalar)
- Args : new value (a scalar, optional)
๐ Specific accessors for StructuredValue
๐ฎ value
- Title :
value - Usage :
$obj->value($newval) - Function: get/set the value for this annotation.
set mode is here only to retain compatibility with SimpleValue. it is equivalent to calling add_value([0], $newval).
in get mode, this implementation allows one to pass additional parameters that control how the structured annotation components will be joined together to form a string. recognized are presently
-joinsโ a reference to an array of join strings, the elements at index i applying to joining annotations at dimension i. the last element will be re-used for dimensions higher than i. defaults to['; '].-bracketsโ a reference to an array of two strings denoting the opening and closing brackets for the elements of one dimension, if there is more than one element in the dimension. defaults to['(',')'].
- Returns : value of value
- Args : newvalue (optional)
๐ฆ get_values
- Title :
get_values - Usage :
- Function: get the top-level array of values. each of the elements will recursively be a reference to an array or a scalar, depending on the depth of this structured value annotation.
- Example :
- Returns : an array
- Args : none
๐๏ธ get_all_values
- Title :
get_all_values - Usage :
- Function: flattens all values in this structured annotation and returns them as an array.
- Example :
- Returns : the (flat) array of values
- Args : none
โ add_value
- Title :
add_value - Usage :
- Function: adds the given value to the structured annotation at the given index.
the index is multi-dimensional, with the first dimension applying to the first level, and so forth. if a particular dimension or a particular index does not exist yet, it will be created. if it does exist and adding the value would mean replacing a scalar with an array reference, we throw an exception to prevent unintended damage. an index of -1 at any dimension means append.
if an array of values is to be added, it will create an additional dimension at the index specified, unless the last index value is -1, in which case they will all be appended to the last dimension.
- Example :
- Returns : none
- Args : the index at which to add (a reference to an array)
- the value(s) to add
โ ๏ธ heads up bestie: that scalar-into-array-ref situation is a hard exception, not a vibe. don't try to sneak past it. ๐
and that's the whole page!! this one's running on perl v5.32.1 and was dated 2021-08-15 โ so yeah, a little vintage but still absolutely slaying. mwah, go annotate something structured. ๐โจ๐๐ฆ๐ธ๐
๐ซถ
๐ฆ where this page comes from
- debian bookworm: libbio-perl-perl 1.7.8-1 ยท Perl
- debian trixie: libbio-perl-perl 1.7.8-1 ยท Perl
- ubuntu jammy: libbio-perl-perl 1.7.8-1 ยท Perl
- ubuntu noble: libbio-perl-perl 1.7.8-1 ยท Perl
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms