PDL::Lvalue - declare PDL lvalue subs


PDL::Lvalue - declare PDL lvalue subs


Declares a subset of PDL functions so that they can be used as lvalue subs. In particular, this allows simpler constructs such as

  $a->slice(',(0)') .= 1;

instead of the clumsy

  (my $tmp = $a->slice(',(0)')) .= 1;

This will only work if your perl supports lvalue subroutines (i.e. versions >= v5.6.0). Note that lvalue subroutines are currently regarded experimental.


 use PDL::Lvalue; # automatically done with all PDL loaders



test if routine is a known PDL lvalue sub

  print "slice is an lvalue sub" if PDL::Lvalue->subs('slice');

returns the list of PDL lvalue subs if no routine name is given, e.g.

  @lvfuncs = PDL::Lvalue->subs;

It can be used in scalar context to find out if your PDL has lvalue subs:

  print 'has lvalue subs' if PDL::Lvalue->subs;


Copyright (C) 2001 Christian Soeller (c.soeller@auckland.ac.nz) All rights reserved. There is no warranty. You are allowed to redistribute this software / documentation under certain conditions. For details, see the file COPYING in the PDL distribution. If this file is separated from the PDL distribution, the copyright notice should be included in the file.

 PDL::Lvalue - declare PDL lvalue subs