src/elements/Reserved.js
function Reserved(value, parameters) {
    abstractions.Element.call(this, utilities.types.RESERVED, parameters);
    if (!value || !/^[a-zA-Z][0-9a-zA-Z]*(-[0-9]+)?$/g.test(value)) {
        throw new utilities.Exception({
            $module: '/bali/elements/Reserved',
            $procedure: '$Reserved',
            $exception: '$invalidParameter',
            $parameter: value.toString(),
            $text: '"An invalid reserved symbol value was passed to the constructor."'
        });
    }

    // since this element is immutable the value must be read-only
    this.getValue = function() { return value; };

    return this;
}
function Reserved(value, parameters) {
    abstractions.Element.call(this, utilities.types.RESERVED, parameters);
    if (!value || !/^[a-zA-Z][0-9a-zA-Z]*(-[0-9]+)?$/g.test(value)) {
        throw new utilities.Exception({
            $module: '/bali/elements/Reserved',
            $procedure: '$Reserved',
            $exception: '$invalidParameter',
            $parameter: value.toString(),
            $text: '"An invalid reserved symbol value was passed to the constructor."'
        });
    }

    // since this element is immutable the value must be read-only
    this.getValue = function() { return value; };

    return this;
}
function Reserved ( value , parameters ) { abstractions . Element . call ( this , utilities . types . RESERVED , parameters ) ; if ( ! value || ! / ^[a-zA-Z][0-9a-zA-Z]*(-[0-9]+)?$ / g . test ( value ) ) { throw new utilities . Exception ( { $module : '/bali/elements/Reserved' , $procedure : '$Reserved' , $exception : '$invalidParameter' , $parameter : value . toString ( ) , $text : '"An invalid reserved symbol value was passed to the constructor."' } ) ; } // since this element is immutable the value must be read-only this . getValue = function ( ) { return value ; } ; return this ; }
PUBLIC CONSTRUCTOR 
This constructor creates a new reserved identifier using the specified value.

@param {String} value The value of the reserved identifier.
@param {Parameters} parameters Optional parameters used to parameterize this element.
@returns {Reserved} The new reserved identifier.
PUBLIC CONSTRUCTOR This constructor creates a new reserved identifier using the specified value .