From 371282fe7aec4c9d6e9856f8907847df1e91b5fd Mon Sep 17 00:00:00 2001 From: satyr Date: Tue, 26 Oct 2010 19:13:55 +0900 Subject: [PATCH] defarg: `(options = {})` where possible --- lib/browser.js | 5 ++--- lib/coffee-script.js | 2 +- lib/lexer.js | 9 +++++---- src/browser.coffee | 4 ++-- src/coffee-script.coffee | 3 +-- src/lexer.coffee | 7 +++---- 6 files changed, 14 insertions(+), 16 deletions(-) diff --git a/lib/browser.js b/lib/browser.js index 075f6b43..33a0b583 100644 --- a/lib/browser.js +++ b/lib/browser.js @@ -6,9 +6,8 @@ return eval(CoffeeScript.compile(code, options)); }; CoffeeScript.run = function(code, options) { - if (options != null) { - options.bare = true; - } + options != null ? options : options = {}; + options.bare = true; return Function(CoffeeScript.compile(code, options))(); }; if (!(typeof window !== "undefined" && window !== null)) { diff --git a/lib/coffee-script.js b/lib/coffee-script.js index dc9e65c4..4b7319e1 100755 --- a/lib/coffee-script.js +++ b/lib/coffee-script.js @@ -18,7 +18,7 @@ exports.VERSION = '0.9.4'; exports.helpers = require('./helpers'); exports.compile = compile = function(code, options) { - options || (options = {}); + options != null ? options : options = {}; try { return (parser.parse(lexer.tokenize(code))).compile(options); } catch (err) { diff --git a/lib/lexer.js b/lib/lexer.js index 6eb6053e..e641d380 100644 --- a/lib/lexer.js +++ b/lib/lexer.js @@ -438,7 +438,7 @@ }; Lexer.prototype.balancedString = function(str, delimited, options) { var _i, _len, close, i, levels, open, pair, slen; - options || (options = {}); + options != null ? options : options = {}; levels = []; i = 0; slen = str.length; @@ -475,8 +475,9 @@ return i && str.slice(0, i); }; Lexer.prototype.interpolateString = function(str, options) { - var _len, _ref2, _ref3, _this, expr, heredoc, i, inner, interpolated, letter, nested, pi, regex, tag, tokens, value; - _ref2 = options || (options = {}), heredoc = _ref2.heredoc, regex = _ref2.regex; + var _len, _ref2, _this, expr, heredoc, i, inner, interpolated, letter, nested, pi, regex, tag, tokens, value; + options != null ? options : options = {}; + heredoc = options.heredoc, regex = options.regex; tokens = []; pi = 0; i = -1; @@ -523,7 +524,7 @@ this.token('(', '('); } for (i = 0, _len = tokens.length; i < _len; i++) { - _ref3 = tokens[i], tag = _ref3[0], value = _ref3[1]; + _ref2 = tokens[i], tag = _ref2[0], value = _ref2[1]; if (i) { this.token('+', '+'); } diff --git a/src/browser.coffee b/src/browser.coffee index 05c6e018..695c8dbc 100644 --- a/src/browser.coffee +++ b/src/browser.coffee @@ -8,8 +8,8 @@ CoffeeScript.eval = (code, options) -> eval CoffeeScript.compile code, options # Running code does not provide access to this scope. -CoffeeScript.run = (code, options) -> - options?.bare = on +CoffeeScript.run = (code, options = {}) -> + options.bare = on Function(CoffeeScript.compile code, options)() # If we're not in a browser environment, we're finished with the public API. diff --git a/src/coffee-script.coffee b/src/coffee-script.coffee index dc26a5fe..74fa88c0 100755 --- a/src/coffee-script.coffee +++ b/src/coffee-script.coffee @@ -27,8 +27,7 @@ exports.helpers = require './helpers' # Compile a string of CoffeeScript code to JavaScript, using the Coffee/Jison # compiler. -exports.compile = compile = (code, options) -> - options or= {} +exports.compile = compile = (code, options = {}) -> try (parser.parse lexer.tokenize code).compile options catch err diff --git a/src/lexer.coffee b/src/lexer.coffee index 6f1fca80..83c3ad05 100644 --- a/src/lexer.coffee +++ b/src/lexer.coffee @@ -386,8 +386,7 @@ exports.Lexer = class Lexer # a series of delimiters, all of which must be nested correctly within the # contents of the string. This method allows us to have strings within # interpolations within strings, ad infinitum. - balancedString: (str, delimited, options) -> - options or= {} + balancedString: (str, delimited, options = {}) -> levels = [] i = 0 slen = str.length @@ -420,8 +419,8 @@ exports.Lexer = class Lexer # If it encounters an interpolation, this method will recursively create a # new Lexer, tokenize the interpolated contents, and merge them into the # token stream. - interpolateString: (str, options) -> - {heredoc, regex} = options or= {} + interpolateString: (str, options = {}) -> + {heredoc, regex} = options tokens = [] pi = 0 i = -1