List getters getting in the way #10

Closed
mzedeler opened this Issue Jul 4, 2013 · 2 comments

2 participants

@mzedeler

The current implementation of list getters for things like osfamily are
cumbersome to use and not very perlish.

If I want to get all the available osfamily names, as I understand it, I
have to write something like this:

my @families;
my $i = 0;
while(1) {
    my $family = $os->osfamily($i);
    break if $family eq $osfamilies[$i-1];
    push @families, $family;
    $i++;
}

If the method call just returned an array, getting any part of the list
would be simple:

# get first os family
$os->osfamily()[0];

# get last os family
$os->osfamily()[-1];

# get the count of os families
scalar $os->osfamily();

The fact that $os->osfamilies($i) returns the last item on the list for
any number of $i greater that the last index is making it even harder to
work around this problem, since you don't have any simple stopping
condition.

I don't mind writing a patch for this.

@apersaud
Modernistik member

If you provide a patch, I don't mind including it. Let me know.

@mzedeler

Hi @apersaud - thanks for the heads up. I'm not using this module any longer.

@mzedeler mzedeler closed this Jan 18, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment