EMBOSS::ACD(3pm)
π NAME π
EMBOSS::ACD β bestie, this is the module that parses EMBOSS ACD (AJAX Command Definition) files β¨
π AUTHOR π
Luke McCarthy <lukem@gene.pbi.nrc.ca> β yeah, the icon who wrote this π
πΈ SYNOPSIS πΈ
okay so here's the vibe, copy-paste it exactly bestie:
use EMBOSS::ACD;
$acd = EMBOSS::ACD->new($acdfile);
$application = $acd->name;
$description = $acd->documentation;
@groups = $acd->groups;
foreach $parameter ($acd->param) {
while (($attribute, $value) = each %$parameter) {
...
}
}
π¦ DESCRIPTION π¦
EMBOSS::ACD parses EMBOSS Ajax Command Definition files and hands you object-oriented access to all the data inside them. it's giving very convenient, no cap π
if you want the full spec of the ACD format, go look at http://emboss.sourceforge.net/developers/acd π«Ά
β οΈ real talk: no checks are performed to make sure the ACD file is semantically valid. like, datatypes and attributes that aren't even defined in the spec can show up in the file and they'll just get parsed like normal. and honestly? that's a good thing, because it means the module stays useful even when local devs or the EMBOSS crew add brand new datatypes. slay, resilience β¨
the public methods are all below, bestie:
π new($acdfile)
Parses the ACD file you point it at. Returns a brand new EMBOSS::ACD object if it works, and literally dies if it doesn't π
$acdfile is the full path to a valid ACD file.
π name()
Returns the name of the application whose ACD file got parsed. main character identification, periodt π
π documentation()
Returns a short description of the application whose ACD file got parsed. the lil blurb, the vibe check π
π groups()
Returns a list of functional groups that the application belongs to. wanna know the possible groups? http://emboss.sourceforge.net/developers/acd/syntax.html#sect2214 π¦
π param($param)
Returns a reference to a hash describing the parameter you asked for. that hash has key-value pairs matching the attributes in the ACD file, plus the keys 'name' and 'datatype'. the value of the 'datatype' key is the canonical name of the data type, no matter what abbreviation the ACD file used. for the list of possible data types: http://emboss.sourceforge.net/developers/acd/syntax.html#sect23 β¨
If you don't specify a parameter, you get a list of all the parameters back. every member of that list is a hash reference just like the one described above π«Ά
π heads up: in accordance with the ACD spec, attribute names are not expanded if they're abbreviated in the ACD file. so don't come for me expecting them to be.
$param is either undefined (see above, bestie) or the name of the parameter you want.
π canonical_datatype($datatype)
Returns the canonical name of the abbreviated datatype you pass in. if the abbreviation is ambiguous or just not recognized, you get back undefined. it's giving "i tried" π
π BUGS π
None that I know of... π β¨ (iconic behaviour honestly)
π COPYRIGHT π
Copyright (c) 2004 Luke McCarthy. All rights reserved. This program is free software. You may copy or redistribute it under the same terms as Perl itself. π
and that's the whole page, bestie!! π this was perl v5.38.2, dated 2024-02-25, and yeah it's the EMBOSS::ACD(3pm) manual β go forth and parse those ACD files, you absolute legend π
π¦ where this page comes from
- debian trixie: libemboss-acd-perl 2.2.0-12 Β· GPL-1.0-or-later OR Artistic-1
- ubuntu noble: libemboss-acd-perl 2.2.0-12 Β· GPL-1.0-or-later OR Artistic-1
- ubuntu questing: libemboss-acd-perl 2.2.0-12
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms