Math::Expression::Evaluator::Util - Common functions for


Math-Expression-Evaluator documentation Contained in the Math-Expression-Evaluator distribution.

Index


Code Index:

NAME

Top

Math::Expression::Evaluator::Util - Common functions for Math::Expression::Evaluator

SYNPOSIS

Top

    use Math::Expression::Evaluator::Util qw(is_lvalue);

    # ...
    if (is_lvalue($ast)){
        # $ast represents an lvalue, at the moment just a variable
    }

DESCRIPTION

Top

This is package with common functions used in the different modules in the Math::Expression::Evaluator distribution.

is_lvalue

is_lvalue($ast) checks if (a simplified version of) $ast represents something that can be assigned to, i.e. is a variable.


Math-Expression-Evaluator documentation Contained in the Math-Expression-Evaluator distribution.

package Math::Expression::Evaluator::Util;

use strict;
use warnings;

require Exporter;
our @ISA = qw(Exporter);
our @EXPORT_OK = qw(is_lvalue);

# checks if the given AST represents a lvalue of an _assignment
sub is_lvalue {
    my $ast = shift;
    if (ref($ast) && $ast->[0] eq '$'){
        # simple variable name
        return 1;
    } else {
        return 0;
    }
}

1;
# vim: sw=4 ts=4 expandtab