Help for this page

Select Code to Download


  1. or download this
        my $foo   = some_func();
        my ($foo) = some_func(); # may or may not behave the same!
    
  2. or download this
        sub some_func {
            # do stuff
            return wantarray ? @results : \@results; # is void context OK?
        }
    
  3. or download this
        sub some_func {
            # do stuff
            return wantarray
    ...
                    ? \@results
                    : warn "Useless void context";
        }
    
  4. or download this
        sub some_func {
            # do stuff
            if (wantarray) {
    ...
                warn "this is tedious";
            }
        }
    
  5. or download this
        use Attribute::Context;
    
        sub some_func : Arrayref(WARNVOID) {
            # do stuff
            return @results;
        }
    
  6. or download this
        sub some_func : Custom(Some::Class) {
            # do stuff
            return @results;
        } # scalar context returns Some::Class->new(\@results)