haste-server/node_modules/uglify-js/tmp/uglify-hangs2.js

167 lines
4.8 KiB
JavaScript
Raw Normal View History

2012-02-06 20:09:01 +01:00
jsworld.Locale = function(properties) {
// LC_NUMERIC
this.frac_digits = properties.frac_digits;
// may be empty string/null for currencies with no fractional part
if (properties.mon_decimal_point === null || properties.mon_decimal_point == "") {
if (this.frac_digits > 0)
throw "Error: Undefined mon_decimal_point property";
else
properties.mon_decimal_point = "";
}
if (typeof properties.mon_decimal_point != "string")
throw "Error: Invalid/missing mon_decimal_point property";
this.mon_decimal_point = properties.mon_decimal_point;
if (typeof properties.mon_thousands_sep != "string")
throw "Error: Invalid/missing mon_thousands_sep property";
this.mon_thousands_sep = properties.mon_thousands_sep;
if (typeof properties.mon_grouping != "string")
throw "Error: Invalid/missing mon_grouping property";
this.mon_grouping = properties.mon_grouping;
if (typeof properties.positive_sign != "string")
throw "Error: Invalid/missing positive_sign property";
this.positive_sign = properties.positive_sign;
if (typeof properties.negative_sign != "string")
throw "Error: Invalid/missing negative_sign property";
this.negative_sign = properties.negative_sign;
if (properties.p_cs_precedes !== 0 && properties.p_cs_precedes !== 1)
throw "Error: Invalid/missing p_cs_precedes property, must be 0 or 1";
this.p_cs_precedes = properties.p_cs_precedes;
if (properties.n_cs_precedes !== 0 && properties.n_cs_precedes !== 1)
throw "Error: Invalid/missing n_cs_precedes, must be 0 or 1";
this.n_cs_precedes = properties.n_cs_precedes;
if (properties.p_sep_by_space !== 0 &&
properties.p_sep_by_space !== 1 &&
properties.p_sep_by_space !== 2)
throw "Error: Invalid/missing p_sep_by_space property, must be 0, 1 or 2";
this.p_sep_by_space = properties.p_sep_by_space;
if (properties.n_sep_by_space !== 0 &&
properties.n_sep_by_space !== 1 &&
properties.n_sep_by_space !== 2)
throw "Error: Invalid/missing n_sep_by_space property, must be 0, 1, or 2";
this.n_sep_by_space = properties.n_sep_by_space;
if (properties.p_sign_posn !== 0 &&
properties.p_sign_posn !== 1 &&
properties.p_sign_posn !== 2 &&
properties.p_sign_posn !== 3 &&
properties.p_sign_posn !== 4)
throw "Error: Invalid/missing p_sign_posn property, must be 0, 1, 2, 3 or 4";
this.p_sign_posn = properties.p_sign_posn;
if (properties.n_sign_posn !== 0 &&
properties.n_sign_posn !== 1 &&
properties.n_sign_posn !== 2 &&
properties.n_sign_posn !== 3 &&
properties.n_sign_posn !== 4)
throw "Error: Invalid/missing n_sign_posn property, must be 0, 1, 2, 3 or 4";
this.n_sign_posn = properties.n_sign_posn;
if (typeof properties.int_frac_digits != "number" && properties.int_frac_digits < 0)
throw "Error: Invalid/missing int_frac_digits property";
this.int_frac_digits = properties.int_frac_digits;
if (properties.int_p_cs_precedes !== 0 && properties.int_p_cs_precedes !== 1)
throw "Error: Invalid/missing int_p_cs_precedes property, must be 0 or 1";
this.int_p_cs_precedes = properties.int_p_cs_precedes;
if (properties.int_n_cs_precedes !== 0 && properties.int_n_cs_precedes !== 1)
throw "Error: Invalid/missing int_n_cs_precedes property, must be 0 or 1";
this.int_n_cs_precedes = properties.int_n_cs_precedes;
if (properties.int_p_sep_by_space !== 0 &&
properties.int_p_sep_by_space !== 1 &&
properties.int_p_sep_by_space !== 2)
throw "Error: Invalid/missing int_p_sep_by_spacev, must be 0, 1 or 2";
this.int_p_sep_by_space = properties.int_p_sep_by_space;
if (properties.int_n_sep_by_space !== 0 &&
properties.int_n_sep_by_space !== 1 &&
properties.int_n_sep_by_space !== 2)
throw "Error: Invalid/missing int_n_sep_by_space property, must be 0, 1, or 2";
this.int_n_sep_by_space = properties.int_n_sep_by_space;
if (properties.int_p_sign_posn !== 0 &&
properties.int_p_sign_posn !== 1 &&
properties.int_p_sign_posn !== 2 &&
properties.int_p_sign_posn !== 3 &&
properties.int_p_sign_posn !== 4)
throw "Error: Invalid/missing int_p_sign_posn property, must be 0, 1, 2, 3 or 4";
this.int_p_sign_posn = properties.int_p_sign_posn;
if (properties.int_n_sign_posn !== 0 &&
properties.int_n_sign_posn !== 1 &&
properties.int_n_sign_posn !== 2 &&
properties.int_n_sign_posn !== 3 &&
properties.int_n_sign_posn !== 4)
throw "Error: Invalid/missing int_n_sign_posn property, must be 0, 1, 2, 3 or 4";
this.int_n_sign_posn = properties.int_n_sign_posn;
// LC_TIME
if (properties == null || typeof properties != "object")
throw "Error: Invalid/missing time locale properties";
// parse the supported POSIX LC_TIME properties
// abday
try {
this.abday = this._parseList(properties.abday, 7);
}
catch (error) {
throw "Error: Invalid abday property: " + error;
}
}