NAME
Language::Befunge::Storage::Generic::AoA - a generic N-dimensional LaheySpace
VERSION
version 5.000
SYNOPSIS
# create a 3-dimensional LaheySpace.
my $torus = Language::Befunge::Storage::Generic::AoA->new(3);
$torus->clear();
$torus->store(<<"EOF");
12345
67890
\fabcde
fghij
EOF
Note you usually don't need to use this module directly. Language::Befunge::Interpreter uses it internally, for non-2-dimensional storage. For 2-dimensional storage, Language::Befunge::Storage::2D is used instead, because it is more efficient.
DESCRIPTION
This module implements an N-dimensional storage space, as an array of arrays.
CONSTRUCTOR
new( dimensions )
Creates a new Lahey Space.
PUBLIC METHODS
clear( )
Clear the torus.
expand( vector )
Expand the torus to include the provided point.
get_value( vector )
Return the number stored in the torus at the specified location. If the value hasn't yet been set, it defaults to the ordinal value of a space (ie, #32).
/!\ As in Funge, code and data share the same playfield, the number returned can be either an instruction or a data (or even both... Eh, that's Funge! :o) ).
set_value( vector, value )
Write the supplied value in the torus at the specified location.
/!\ As in Funge, code and data share the same playfield, the number stored can be either an instruction or a data (or even both... Eh, that's Funge! :o) ).
EXTERNAL METHODS
Several methods are inherited from the Language::Befunge::Storage base class. These methods are:
store
store_binary
get_char
get_dims
rectangle
min
max
labels_lookup
_labels_try
Please see the documentation of that module for more information.
BUGS
None known. Please inform me if you find one.
SEE ALSO
AUTHOR
Jerome Quelin
COPYRIGHT AND LICENSE
This software is copyright (c) 2003 by Jerome Quelin.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.