- checkArgsAtLeast(args, n);
- checkArgsAtMost(args, n);
+ checkArgsAtLeast(args, n);
+ checkArgsAtMost(args, n);
- if (arguments.length == 1)
- return arguments[0];
- else {
- var i = arguments.length-1;
- var r = arguments[i--];
- for (; i>=0; i--){
- r = {car: arguments[i], cdr: r};
- }
- return r;
+ if (arguments.length == 1)
+ return arguments[0];
+ else {
+ var i = arguments.length-1;
+ var r = arguments[i--];
+ for (; i>=0; i--){
+ r = {car: arguments[i], cdr: r};
}
// Return a new Array of strings, each either length-1, or length-2 (a UTF-16 surrogate pair).
function codepoints(string) {
}
// Return a new Array of strings, each either length-1, or length-2 (a UTF-16 surrogate pair).
function codepoints(string) {
}
// Create and return a lisp string for the Javascript string STRING.
function make_lisp_string (string){
}
// Create and return a lisp string for the Javascript string STRING.
function make_lisp_string (string){
- if (ch.length == 1) {
- return ch.charCodeAt(0);
- } else {
- var xh = ch.charCodeAt(0) - 0xD800;
- var xl = ch.charCodeAt(1) - 0xDC00;
- return 0x10000 + (xh << 10) + (xl);
- }
+ if (ch.length == 1) {
+ return ch.charCodeAt(0);
+ } else {
+ var xh = ch.charCodeAt(0) - 0xD800;
+ var xl = ch.charCodeAt(1) - 0xDC00;
+ return 0x10000 + (xh << 10) + (xl);
+ }
- if (x <= 0xFFFF) {
- return String.fromCharCode(x);
- } else {
- x -= 0x10000;
- var xh = x >> 10;
- var xl = x & 0x3FF;
- return String.fromCharCode(0xD800 + xh) + String.fromCharCode(0xDC00 + xl);
- }
+ if (x <= 0xFFFF) {
+ return String.fromCharCode(x);
+ } else {
+ x -= 0x10000;
+ var xh = x >> 10;
+ var xl = x & 0x3FF;
+ return String.fromCharCode(0xD800 + xh) + String.fromCharCode(0xDC00 + xl);
+ }
}
// if a char (JS string) has the same number of codepoints after .toUpperCase(), return that, else the original.
function safe_char_upcase(x) {
}
// if a char (JS string) has the same number of codepoints after .toUpperCase(), return that, else the original.
function safe_char_upcase(x) {
}
function xstring(x){ return x.join(''); }
function Symbol(name, package_name){
}
function xstring(x){ return x.join(''); }
function Symbol(name, package_name){
- if (typeof x == 'object' && 'length' in x && x.stringp == 1)
- return xstring(x);
- else if (x === t)
- return true;
- else if (x === nil)
- return false;
- else if (typeof x == 'function'){
- // Trampoline calling the Lisp function
- return (function(){
- var args = Array.prototype.slice.call(arguments);
- for (var i in args)
- args[i] = js_to_lisp(args[i]);
- return lisp_to_js(x.apply(this, [pv, arguments.length].concat(args)));
- });
- }
- else return x;
+ if (typeof x == 'object' && 'length' in x && x.stringp == 1)
+ return xstring(x);
+ else if (x === t)
+ return true;
+ else if (x === nil)
+ return false;
+ else if (typeof x == 'function'){
+ // Trampoline calling the Lisp function
+ return (function(){
+ var args = Array.prototype.slice.call(arguments);
+ for (var i in args)
+ args[i] = js_to_lisp(args[i]);
+ return lisp_to_js(x.apply(this, [pv, arguments.length].concat(args)));
+ });
+ }
+ else return x;
- if (typeof x == 'string')
- return make_lisp_string(x);
- else if (x === true)
- return t;
- else if (x === false)
- return nil;
- else if (typeof x == 'function'){
- // Trampoline calling the JS function
- return (function(values, nargs){
- var args = Array.prototype.slice.call(arguments, 2);
- for (var i in args)
- args[i] = lisp_to_js(args[i]);
- return values(js_to_lisp(x.apply(this, args)));
- });
- } else return x;
+ if (typeof x == 'string')
+ return make_lisp_string(x);
+ else if (x === true)
+ return t;
+ else if (x === false)
+ return nil;
+ else if (typeof x == 'function'){
+ // Trampoline calling the JS function
+ return (function(values, nargs){
+ var args = Array.prototype.slice.call(arguments, 2);
+ for (var i in args)
+ args[i] = lisp_to_js(args[i]);
+ return values(js_to_lisp(x.apply(this, args)));
+ });
+ } else return x;