2013-02-04 04:13:08 +00:00
|
|
|
/*! Char !*/
|
|
|
|
|
|
|
|
/*[Classification]*/
|
|
|
|
|
|
|
|
/** isUpper : Char -> Bool
|
|
|
|
Selects upper case letters.
|
|
|
|
**/
|
|
|
|
/** isLower : Char -> Bool
|
|
|
|
Selects lower case letters.
|
|
|
|
**/
|
|
|
|
/** isDigit : Char -> Bool
|
|
|
|
Selects ASCII digits (0..9).
|
|
|
|
**/
|
|
|
|
/** isOctDigit : Char -> Bool
|
|
|
|
Selects ASCII octal digits (0..7).
|
|
|
|
**/
|
|
|
|
/** isHexDigit : Char -> Bool
|
|
|
|
Selects ASCII hexadecimal digits (0..9a..fA..F).
|
|
|
|
**/
|
|
|
|
|
|
|
|
/*[Conversion]*/
|
|
|
|
|
|
|
|
/** toUpper : Char -> Char
|
|
|
|
Convert to upper case.
|
|
|
|
**/
|
|
|
|
/** toLower : Char -> Char
|
|
|
|
Convert to lower case.
|
|
|
|
**/
|
|
|
|
/** toLocaleUpper : Char -> Char
|
|
|
|
Convert to upper case, according to any locale-specific case mappings.
|
|
|
|
**/
|
|
|
|
/** toLocaleLower : Char -> Char
|
|
|
|
Convert to lower case, according to any locale-specific case mappings.
|
|
|
|
**/
|
|
|
|
/** toCode : Char -> Int
|
|
|
|
Convert to unicode.
|
|
|
|
**/
|
|
|
|
/** fromCode : Int -> Char
|
|
|
|
Convert from unicode.
|
|
|
|
**/
|
2012-10-16 06:03:14 +00:00
|
|
|
|
|
|
|
Elm.Char = function() {
|
|
|
|
function isBetween(lo,hi) { return function(chr) {
|
|
|
|
var c = chr.charCodeAt(0);
|
|
|
|
return lo <= c && c <= hi;
|
|
|
|
};
|
|
|
|
}
|
|
|
|
var isDigit = isBetween('0'.charCodeAt(0),'9'.charCodeAt(0));
|
|
|
|
var chk1 = isBetween('a'.charCodeAt(0),'f'.charCodeAt(0));
|
|
|
|
var chk2 = isBetween('A'.charCodeAt(0),'F'.charCodeAt(0));
|
|
|
|
|
|
|
|
return {fromCode : function(c) { return String.fromCharCode(c); },
|
|
|
|
toCode : function(c) { return c.charCodeAt(0); },
|
|
|
|
toUpper : function(c) { return c.toUpperCase(); },
|
|
|
|
toLower : function(c) { return c.toLowerCase(); },
|
|
|
|
toLocaleUpper : function(c) { return c.toLocaleUpperCase(); },
|
|
|
|
toLocaleLower : function(c) { return c.toLocaleLowerCase(); },
|
|
|
|
isLower : isBetween('a'.charCodeAt(0),'z'.charCodeAt(0)),
|
|
|
|
isUpper : isBetween('A'.charCodeAt(0),'Z'.charCodeAt(0)),
|
|
|
|
isDigit : isDigit,
|
|
|
|
isOctDigit : isBetween('0'.charCodeAt(0),'7'.charCodeAt(0)),
|
|
|
|
isHexDigit : function(c) { return isDigit(c) || chk1(c) || chk2(c); }
|
|
|
|
};
|
|
|
|
}();
|