OSSP CVS Repository

ossp - ossp-pkg/var/var.pod 1.1
Not logged in
[Honeypot]  [Browse]  [Directory]  [Home]  [Login
[Reports]  [Search]  [Ticket]  [Timeline
  [Raw

ossp-pkg/var/var.pod 1.1
##
**  VAR - OSSP variable expression library.
##  Copyright (c) 2001 The OSSP Project (http://www.ossp.org/)
##  Copyright (c) 2001 Cable & Wireless Deutschland (http://www.cw.com/de/)
##
##  This file is part of OSSP VAR, an extensible data serialization
##  library which can be found at http://www.ossp.org/pkg/var/.
##
##  Permission to use, copy, modify, and distribute this software for
##  any purpose with or without fee is hereby granted, provided that
##  the above copyright notice and this permission notice appear in all
##  copies.
##
##  THIS SOFTWARE IS PROVIDED `AS IS' AND ANY EXPRESSED OR IMPLIED
##  WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
##  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
##  IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
##  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
##  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
##  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
##  USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
##  ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
##  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
##  OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
##  SUCH DAMAGE.
##
##  var.pod: Unix manual page source
##

=pod

=head1 NAME

var - OSSP variable expression library.

=head1 SYNOPSIS

=head1 DESCRIPTION

The purpose of VAR is ...


=head1 SUPPORTED VARIABLE EXPRESSIONS

=over 4

=item ${name:#}

=item ${name:l}

=item ${name:u}

=item ${name:*<word>}

=item ${name:-<word>}

=item ${name:?<word>}

=item ${name:+<word>}

=item ${name:o<start>-<end>}

=item ${name:o<start>,<length>}

=item ${name:s/<pattern>/<string>/[gti]}

=item ${name:y/<ochars>/<nchars>/}

=item ${name:p/<width>/<string>/<align>}

=back

=head1 EBNF GRAMMAR OF SUPPORTED EXPRESSIONS

input      : (TEXT|variable)*

variable   : '$' (name|expression)

expression : START-DELIM (name|variable)+ (':' command)* END-DELIM

name       : (VARNAME|SPECIAL1|SPECIAL2)+

command    : '-' (EXPTEXT|variable)+
           | '+' (EXPTEXT|variable)+
           | 'o' (NUMBER ('-'|',') (NUMBER)?)
           | '#'
           | '*' (EXPTEXT|variable)+
           | 's' '/' (variable|SUBSTTEXT)+ '/' (variable|SUBSTTEXT)* '/' ('g'|'i'|'t')*
           | 'y' '/' (variable|SUBSTTEXT)+ '/' (variable|SUBSTTEXT)* '/'
           | 'p' '/' NUMBER '/' (variable|SUBSTTEXT)* '/' ('r'|'l'|'c')
           | 'l'
           | 'u'

START-DELIM: '{'

END-DELIM  : '}'

VARNAME    : '[a-zA-Z0-9_]+'

SPECIAL1   : '['

SPECIAL2   : ']'

NUMBER     : '[0-9]+'

SUBSTTEXT  : '[^$/]'

EXPTEXT    : '[^$}:]+'

TEXT       : '[^$]+'

=head1 CODES RETURNED BY THE LIBRARY

=over 4

=item VAR_EMPTY_PADDING_FILL_STRING

=item VAR_MISSING_PADDING_WIDTH

=item VAR_MALFORMATTED_PADDING

=item VAR_INCORRECT_TRANSPOSE_CLASS_SPEC

=item VAR_EMPTY_TRANSPOSE_CLASS

=item VAR_TRANSPOSE_CLASSES_MISMATCH

=item VAR_MALFORMATTED_TRANSPOSE

=item VAR_OFFSET_LOGIC_ERROR

=item VAR_OFFSET_OUT_OF_BOUNDS

=item VAR_RANGE_OUT_OF_BOUNDS

=item VAR_INVALID_OFFSET_DELIMITER

=item VAR_MISSING_START_OFFSET

=item VAR_EMPTY_SEARCH_STRING

=item VAR_MISSING_PARAMETER_IN_COMMAND

=item VAR_INVALID_REGEX_IN_REPLACE

=item VAR_UNKNOWN_REPLACE_FLAG

=item VAR_MALFORMATTED_REPLACE

=item VAR_UNKNOWN_COMMAND_CHAR

=item VAR_INPUT_ISNT_TEXT_NOR_VARIABLE

=item VAR_UNDEFINED_VARIABLE

=item VAR_INCOMPLETE_VARIABLE_SPEC

=item VAR_OUT_OF_MEMORY

=item VAR_INVALID_CONFIGURATION

=item VAR_INCORRECT_CLASS_SPEC

=item VAR_INCOMPLETE_GROUPED_HEX

=item VAR_INCOMPLETE_OCTAL

=item VAR_INVALID_OCTAL

=item VAR_OCTAL_TOO_LARGE

=item VAR_INVALID_HEX

=item VAR_INCOMPLETE_HEX

=item VAR_INCOMPLETE_NAMED_CHARACTER

=item VAR_INCOMPLETE_QUOTED_PAIR

=item VAR_OK

=back

=head1 SO ALSO

regex(7)

=cut

CVSTrac 2.0.1