NAME

MarpaX::ESLIF::ECMA404::ValueInterface - MarpaX::ESLIF::ECMA404 Value Interface

VERSION

version 0.003

SYNOPSIS

use MarpaX::ESLIF::ECMA404::ValueInterface;

my $valueInterface = MarpaX::ESLIF::ECMA404::ValueInterface->new();

DESCRIPTION

MarpaX::ESLIF::ECMA404's Value Interface

SUBROUTINES/METHODS

new($class)

Instantiate a new value interface object.

Required methods

isWithHighRankOnly($self)

Returns a true or a false value, indicating if valuation should use highest ranked rules or not, respectively. Default is a true value.

isWithOrderByRank($self)

Returns a true or a false value, indicating if valuation should order by rule rank or not, respectively. Default is a true value.

isWithAmbiguous($self)

Returns a true or a false value, indicating if valuation should allow ambiguous parse tree or not, respectively. Default is a false value.

isWithNull($self)

Returns a true or a false value, indicating if valuation should allow a null parse tree or not, respectively. Default is a false value.

maxParses($self)

Returns the number of maximum parse tree valuations. Default is unlimited (i.e. a false value).

getResult($self)

Returns the current parse tree value.

setResult($self)

Sets the current parse tree value.

Specific actions

empty_string($self)

Action for rule chars ::=.

hex2codepoint_character($self)

Action for rule char ::= '\\' 'u' /[[:xdigit:]]{4}/.

pairs($self)

Action for rule cpairs ::= string ':' value.

backspace_character($self)

Action for rule char ::= '\\' 'b'.

formfeed_character($self)

Action for rule char ::= '\\' 'f'.

newline_character($self)

Action for rule char ::= '\\' 'n'.

return_character($self)

Action for rule char ::= '\\' 'r'.

tabulation_character($self)

Action for rule char ::= '\\' 't'.

array_ref($self)

Action for rule elements ::= value* separator = ','>.

members($self)

Action for rule members ::= pairs* separator = ','>.

SEE ALSO

MarpaX::ESLIF::ECMA404

AUTHOR

Jean-Damien Durand <jeandamiendurand@free.fr>

COPYRIGHT AND LICENSE

This software is copyright (c) 2017 by Jean-Damien Durand.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.