From c43c183aaaa740e97dfd6e026ce83174d87b3c2c Mon Sep 17 00:00:00 2001 From: Jeff Williams Date: Fri, 6 Jul 2012 07:40:24 -0700 Subject: [PATCH] disable JSHint's "asi" relaxing option --- .jshintrc | 2 +- jsdoc.js | 4 +-- plugins/markdown.js | 2 +- rhino_modules/jsdoc/augment.js | 2 +- rhino_modules/jsdoc/borrow.js | 2 +- rhino_modules/jsdoc/config.js | 3 +- rhino_modules/jsdoc/doclet.js | 20 ++++++------- rhino_modules/jsdoc/name.js | 10 +++---- rhino_modules/jsdoc/opts/parser.js | 6 ++-- rhino_modules/jsdoc/package.js | 3 +- rhino_modules/jsdoc/readme.js | 2 +- rhino_modules/jsdoc/src/filter.js | 4 +-- rhino_modules/jsdoc/src/parser.js | 30 +++++++++---------- rhino_modules/jsdoc/src/scanner.js | 5 ++-- rhino_modules/jsdoc/tag.js | 2 +- rhino_modules/jsdoc/tag/dictionary.js | 2 +- .../jsdoc/tag/dictionary/definitions.js | 8 ++--- rhino_modules/jsdoc/tag/type.js | 2 +- rhino_modules/jsdoc/tag/validator.js | 2 +- rhino_modules/jsdoc/tutorial/resolver.js | 2 +- rhino_modules/jsdoc/util/dumper.js | 10 +++---- rhino_modules/jsdoc/util/templateHelper.js | 8 ++--- templates/default/publish.js | 12 ++++---- templates/haruki/publish.js | 2 +- 24 files changed, 71 insertions(+), 74 deletions(-) diff --git a/.jshintrc b/.jshintrc index 8d076fa4..db546a74 100644 --- a/.jshintrc +++ b/.jshintrc @@ -15,7 +15,7 @@ "strict": false, "trailing": true, - "asi": true, + "asi": false, "boss": true, "debug": true, "eqnull": true, diff --git a/jsdoc.js b/jsdoc.js index b5408f33..21eaa02c 100644 --- a/jsdoc.js +++ b/jsdoc.js @@ -89,7 +89,7 @@ include.resolve = function(filepath) { } return env.dirname + '/' + filepath; -} +}; /** Print string/s out to the console. @param {string} ... String/s to print out to console. @@ -172,7 +172,7 @@ app = { parser: new (require('jsdoc/src/parser').Parser)(), name: require('jsdoc/name') } -} +}; //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// diff --git a/plugins/markdown.js b/plugins/markdown.js index a4736628..20eab22f 100644 --- a/plugins/markdown.js +++ b/plugins/markdown.js @@ -39,7 +39,7 @@ function getParser(parser, conf) { return function(source) { return parser.renderJsonML(parser.toHTMLTree(source, conf.dialect)); - } + }; } else { throw "unknown Markdown parser: '" + parser + "'"; } diff --git a/rhino_modules/jsdoc/augment.js b/rhino_modules/jsdoc/augment.js index bff28a1e..ee476fcf 100644 --- a/rhino_modules/jsdoc/augment.js +++ b/rhino_modules/jsdoc/augment.js @@ -18,7 +18,7 @@ var doop = require("jsdoc/util/doop").doop; docs.push(doc); }); }); - } + }; function mapDependencies(index) { var doclets, doc, len, dependencies = {}; diff --git a/rhino_modules/jsdoc/borrow.js b/rhino_modules/jsdoc/borrow.js index 44dba578..b8674486 100644 --- a/rhino_modules/jsdoc/borrow.js +++ b/rhino_modules/jsdoc/borrow.js @@ -48,4 +48,4 @@ exports.resolveBorrows = function(docs) { delete doc.borrowed; } }); -} +}; diff --git a/rhino_modules/jsdoc/config.js b/rhino_modules/jsdoc/config.js index 9b5bcb0d..df09691e 100644 --- a/rhino_modules/jsdoc/config.js +++ b/rhino_modules/jsdoc/config.js @@ -39,5 +39,4 @@ module.exports = Config; */ Config.prototype.get = function() { return this._config; -} - +}; diff --git a/rhino_modules/jsdoc/doclet.js b/rhino_modules/jsdoc/doclet.js index 66711e54..af97491f 100644 --- a/rhino_modules/jsdoc/doclet.js +++ b/rhino_modules/jsdoc/doclet.js @@ -144,7 +144,7 @@ exports.Doclet = function(docletSrc, meta) { } this.postProcess(); -} +}; /** Called once after all tags have been added. */ exports.Doclet.prototype.postProcess = function() { @@ -172,7 +172,7 @@ exports.Doclet.prototype.postProcess = function() { } } } -} +}; /** Add a tag to this doclet. @param {string} title - The title of the tag being added. @@ -183,7 +183,7 @@ exports.Doclet.prototype.addTag = function(title, text) { newTag = new jsdoc.tag.Tag(title, text, this.meta); if (tagDef && tagDef.onTagged) { - tagDef.onTagged(this, newTag) + tagDef.onTagged(this, newTag); } if (!tagDef) { @@ -192,7 +192,7 @@ exports.Doclet.prototype.addTag = function(title, text) { } applyTag.call(this, newTag); -} +}; /** Set the `memberof` property of this doclet. @param {string} sid - The longname of the symbol that this doclet is a member of. @@ -204,7 +204,7 @@ exports.Doclet.prototype.setMemberof = function(sid) { @type string */ this.memberof = sid.replace(/\.prototype/g, '#'); -} +}; /** Set the `longname` property of this doclet. @param {string} name @@ -220,7 +220,7 @@ exports.Doclet.prototype.setLongname = function(name) { if (jsdoc.tag.dictionary.isNamespace(this.kind)) { this.longname = jsdoc.name.applyNamespace(this.longname, this.kind); } -} +}; /** Add a symbol to this doclet's `borrowed` array. @param {string} source - The longname of the symbol that is the source. @@ -238,7 +238,7 @@ exports.Doclet.prototype.borrow = function(source, target) { this.borrowed = []; } this.borrowed.push(about); -} +}; exports.Doclet.prototype.mix = function(source) { if (!this.mixes) { @@ -249,7 +249,7 @@ exports.Doclet.prototype.mix = function(source) { this.mixes = []; } this.mixes.push(source); -} +}; /** Add a symbol to this doclet's `augments` array. @param {string} base - The longname of the base symbol. @@ -263,7 +263,7 @@ exports.Doclet.prototype.augment = function(base) { this.augments = []; } this.augments.push(base); -} +}; /** Set the `meta` property of this doclet. @@ -329,4 +329,4 @@ exports.Doclet.prototype.setMeta = function(meta) { this.meta.code.paramnames = meta.code.paramnames.concat([]); } } -} +}; diff --git a/rhino_modules/jsdoc/name.js b/rhino_modules/jsdoc/name.js index c5dc8b38..5c8f2dc7 100644 --- a/rhino_modules/jsdoc/name.js +++ b/rhino_modules/jsdoc/name.js @@ -91,7 +91,7 @@ exports.resolve = function(doclet) { if (about.variation) { doclet.variation = about.variation; } -} +}; /** @inner @@ -113,7 +113,7 @@ function quoteUnsafe(name, kind) { // docspaced names may have unsafe characters RegExp.escape = RegExp.escape || function(str) { var specials = new RegExp("[.*+?|()\\[\\]{}\\\\]", "g"); // .*+?|()[]{}\ return str.replace(specials, "\\$&"); -} +}; /** @method module:jsdoc/name.applyNamespace @@ -131,7 +131,7 @@ exports.applyNamespace = function(longname, ns) { } return longname; -} +}; /** Given a longname like "a.b#c(2)", slice it up into ["a.b", "#", 'c', '2'], @@ -198,7 +198,7 @@ exports.shorten = function(longname, forcedMemberof) { //// return {longname: longname, memberof: memberof, scope: scope, name: name, variation: variation}; -} +}; /** Split a string that starts with a name and ends with a description, into its parts. @@ -241,4 +241,4 @@ exports.splitName = function(nameDesc) { } return { name: name, description: desc }; -} \ No newline at end of file +}; diff --git a/rhino_modules/jsdoc/opts/parser.js b/rhino_modules/jsdoc/opts/parser.js index c1cbefc4..b261d911 100644 --- a/rhino_modules/jsdoc/opts/parser.js +++ b/rhino_modules/jsdoc/opts/parser.js @@ -51,14 +51,14 @@ exports.parse = function(args) { ourOptions = argParser.parse(args, defaults); return ourOptions; -} +}; /** Display help message for options. */ exports.help = function() { return argParser.help(); -} +}; /** Get a named option. @@ -75,4 +75,4 @@ exports.get = function(name) { else { return ourOptions[name]; } -} +}; diff --git a/rhino_modules/jsdoc/package.js b/rhino_modules/jsdoc/package.js index 3c645817..9b9cf99d 100644 --- a/rhino_modules/jsdoc/package.js +++ b/rhino_modules/jsdoc/package.js @@ -66,5 +66,4 @@ exports.Package = function(json) { * ] */ this.licenses = json.licenses; -} - +}; diff --git a/rhino_modules/jsdoc/readme.js b/rhino_modules/jsdoc/readme.js index ee09395a..aba292d9 100644 --- a/rhino_modules/jsdoc/readme.js +++ b/rhino_modules/jsdoc/readme.js @@ -33,7 +33,7 @@ function getParser(parser, conf) { return function(source) { return parser.renderJsonML(parser.toHTMLTree(source, conf.dialect)); - } + }; } else { throw 'unknown Markdown parser: "' + parser + '"'; diff --git a/rhino_modules/jsdoc/src/filter.js b/rhino_modules/jsdoc/src/filter.js index 573d9a54..091b37c8 100644 --- a/rhino_modules/jsdoc/src/filter.js +++ b/rhino_modules/jsdoc/src/filter.js @@ -20,7 +20,7 @@ exports.Filter = function(opts) { this.excludePattern = opts.excludePattern? typeof opts.excludePattern === 'string'? new RegExp(opts.excludePattern) : opts.excludePattern : null; -} +}; /** @param {string} filepath - The filepath to check. @@ -40,4 +40,4 @@ exports.Filter.prototype.isIncluded = function(filepath) { } return true; -} \ No newline at end of file +}; diff --git a/rhino_modules/jsdoc/src/parser.js b/rhino_modules/jsdoc/src/parser.js index c128c9c8..a87278b0 100644 --- a/rhino_modules/jsdoc/src/parser.js +++ b/rhino_modules/jsdoc/src/parser.js @@ -83,14 +83,14 @@ exports.Parser.prototype.parse = function(sourceFiles, encoding) { */ exports.Parser.prototype.results = function() { return this._resultBuffer; -} +}; /** * @param {Object} o The parse result to add to the result buffer. */ exports.Parser.prototype.addResult = function(o) { this._resultBuffer.push(o); -} +}; /** * Empty any accumulated results of calls to parse. @@ -99,21 +99,21 @@ exports.Parser.prototype.clear = function() { currentParser = null; currentSourceName = ''; this._resultBuffer = []; -} +}; /** * Adds a node visitor to use in parsing */ exports.Parser.prototype.addNodeVisitor = function(visitor) { this._visitors.push(visitor); -} +}; /** * Get the node visitors used in parsing */ exports.Parser.prototype.getVisitors = function() { return this._visitors; -} +}; function pretreat(code) { return code @@ -168,7 +168,7 @@ function nodeToString(node) { str = [nodeToString(node.target), node.property.string].join('.'); } else if (node.type === Token.VAR) { - str = nodeToString(node.target) + str = nodeToString(node.target); } else if (node.type === Token.NAME) { str = node.string; @@ -281,7 +281,7 @@ function makeVarsFinisher(funcDoc) { if (funcDoc && e.doclet && e.doclet.alias) { funcDoc.meta.vars[e.code.name] = e.doclet.longname; } - } + }; return func; } @@ -425,7 +425,7 @@ function visitNode(node) { e.finishers.push(makeVarsFinisher(funcDoc)); } - var basename = getBasename(e.code.name) + var basename = getBasename(e.code.name); e.code.funcscope = currentParser.resolveVar(node, basename); } @@ -470,7 +470,7 @@ exports.Parser.prototype._parseSourceCode = function(sourceCode, sourceName) { this.fire('fileComplete', e); currentSourceName = ''; -} +}; /** * Given a node, determine what the node is a member of. @@ -523,7 +523,7 @@ exports.Parser.prototype.astnodeToMemberof = function(node) { } return doclet.longname||doclet.name; } -} +}; /** * Resolve what "this" refers too, relative to a node. @@ -579,7 +579,7 @@ exports.Parser.prototype.resolveThis = function(node) { else { return ''; // global? } -} +}; /** Given: foo = { x:1 }, find foo from x. @@ -598,7 +598,7 @@ exports.Parser.prototype.resolvePropertyParent = function(node) { if (memberof.doclet) { return memberof; } } -} +}; /** * Resolve what function a var is limited to. @@ -617,7 +617,7 @@ exports.Parser.prototype.resolveVar = function(node, basename) { } return this.resolveVar(enclosingFunction, basename); -} +}; exports.Parser.prototype.addDocletRef = function(e) { var node = e.code.node; @@ -630,7 +630,7 @@ exports.Parser.prototype.addDocletRef = function(e) { meta: { code: e.code } }; } -} +}; exports.Parser.prototype.resolveEnum = function(e) { var doop = require("jsdoc/util/doop").doop, @@ -645,7 +645,7 @@ exports.Parser.prototype.resolveEnum = function(e) { // use a copy of the doclet to avoid circular references parent.doclet.properties.push( doop(e.doclet) ); } -} +}; /** Fired whenever the parser encounters a JSDoc comment in the current source code. diff --git a/rhino_modules/jsdoc/src/scanner.js b/rhino_modules/jsdoc/src/scanner.js index 2c5ad30a..3b73e94a 100644 --- a/rhino_modules/jsdoc/src/scanner.js +++ b/rhino_modules/jsdoc/src/scanner.js @@ -19,7 +19,7 @@ var fs = require('fs'); @mixes module:common.events */ exports.Scanner = function() { -} +}; common.mixin(exports.Scanner.prototype, common.events); /** @@ -56,5 +56,4 @@ exports.Scanner.prototype.scan = function(searchPaths, depth, filter) { }); return filePaths; -} - +}; diff --git a/rhino_modules/jsdoc/tag.js b/rhino_modules/jsdoc/tag.js index f4a83c50..56caa3a7 100644 --- a/rhino_modules/jsdoc/tag.js +++ b/rhino_modules/jsdoc/tag.js @@ -137,4 +137,4 @@ exports.Tag = function(tagTitle, tagBody, meta) { throw e; } } -} +}; diff --git a/rhino_modules/jsdoc/tag/dictionary.js b/rhino_modules/jsdoc/tag/dictionary.js index a93b9dba..033e6134 100644 --- a/rhino_modules/jsdoc/tag/dictionary.js +++ b/rhino_modules/jsdoc/tag/dictionary.js @@ -27,7 +27,7 @@ function TagDefinition(title, etc) { TagDefinition.prototype.synonym = function(synonymName) { _synonyms[synonymName.toLowerCase()] = this.title; return this; // chainable -} +}; /** @exports jsdoc/tag/dictionary */ dictionary = { diff --git a/rhino_modules/jsdoc/tag/dictionary/definitions.js b/rhino_modules/jsdoc/tag/dictionary/definitions.js index e19e52d6..5eee47fd 100644 --- a/rhino_modules/jsdoc/tag/dictionary/definitions.js +++ b/rhino_modules/jsdoc/tag/dictionary/definitions.js @@ -66,7 +66,7 @@ function setDocletNameToFilename(doclet, tag) { for (var i = 0, len = env.opts._.length; i < len; i++) { if (name.indexOf(env.opts._[i]) === 0) { name = name.replace(env.opts._[0], ''); - break + break; } } doclet.name = name; @@ -234,7 +234,7 @@ exports.defineTags = function(dictionary) { doclet.defaultvalue = doclet.meta.code.value; if (doclet.meta.code.type === 'STRING') { // TODO: handle escaped quotes in values - doclet.defaultvalue = '"'+doclet.defaultvalue.replace(/"/g, '\\"')+'"' + doclet.defaultvalue = '"'+doclet.defaultvalue.replace(/"/g, '\\"')+'"'; } if (doclet.defaultvalue === 'TRUE' || doclet.defaultvalue == 'FALSE') { @@ -243,7 +243,7 @@ exports.defineTags = function(dictionary) { } else if (doclet.meta.code.type === 'NULL') { // TODO: handle escaped quotes in values - doclet.defaultvalue = 'null' + doclet.defaultvalue = 'null'; } } } @@ -644,4 +644,4 @@ exports.defineTags = function(dictionary) { doclet.version = tag.value; } }); -} +}; diff --git a/rhino_modules/jsdoc/tag/type.js b/rhino_modules/jsdoc/tag/type.js index 2c73a098..02d78bdf 100644 --- a/rhino_modules/jsdoc/tag/type.js +++ b/rhino_modules/jsdoc/tag/type.js @@ -130,4 +130,4 @@ exports.parse = function(tagValue) { nullable: nullable.nullable, variable: variable.variable }; -} +}; diff --git a/rhino_modules/jsdoc/tag/validator.js b/rhino_modules/jsdoc/tag/validator.js index 13dfb326..928bfdd7 100644 --- a/rhino_modules/jsdoc/tag/validator.js +++ b/rhino_modules/jsdoc/tag/validator.js @@ -48,4 +48,4 @@ exports.validate = function(tag, meta) { throw new TagValueNotPermittedError(tag.title, meta); } } -} +}; diff --git a/rhino_modules/jsdoc/tutorial/resolver.js b/rhino_modules/jsdoc/tutorial/resolver.js index e587e64f..3cbc05d3 100644 --- a/rhino_modules/jsdoc/tutorial/resolver.js +++ b/rhino_modules/jsdoc/tutorial/resolver.js @@ -108,7 +108,7 @@ exports.resolve = function() { } item = conf[name]; - current = tutorials[name] + current = tutorials[name]; // set title if (item.title) { diff --git a/rhino_modules/jsdoc/util/dumper.js b/rhino_modules/jsdoc/util/dumper.js index 230fecae..91baeb12 100644 --- a/rhino_modules/jsdoc/util/dumper.js +++ b/rhino_modules/jsdoc/util/dumper.js @@ -48,7 +48,7 @@ seen.has = function(object) { if (seen[i] === object) { return true; } } return false; -} +}; function stringify(o) { return JSON.stringify(o); @@ -96,13 +96,13 @@ function walk(object) { output += value + ',\n'; } else if ( isUnwalkable(object) ) { - output += ',\n' + output += ',\n'; } else if ( isRegExp(object) ) { - output += ',\n' + output += ',\n'; } else if ( isDate(object) ) { - output += ',\n' + output += ',\n'; } else if ( isFunction(object) ) { output += ',\n'; @@ -153,4 +153,4 @@ exports.dump = function(object) { walk(object); outdent(false); return output; -} +}; diff --git a/rhino_modules/jsdoc/util/templateHelper.js b/rhino_modules/jsdoc/util/templateHelper.js index 036a50d8..0a1447f6 100644 --- a/rhino_modules/jsdoc/util/templateHelper.js +++ b/rhino_modules/jsdoc/util/templateHelper.js @@ -61,7 +61,7 @@ var linkMap = { exports.registerLink = function(longname, url) { linkMap.longnameToUrl[longname] = url; linkMap.urlToLongname[url] = longname; -} +}; function toLink(longname, content) { if (!longname) { @@ -108,7 +108,7 @@ var toTutorial = exports.toTutorial = function(tutorial, content) { content = content || node.title; return ''+content+''; -} +}; /** Find symbol {@link ...} and {@tutorial ...} strings in text and turn into html links */ exports.resolveLinks = function(str) { @@ -125,7 +125,7 @@ exports.resolveLinks = function(str) { ); return str; -} +}; /** Turn a doclet into a URL. */ exports.createLink = function(doclet) { @@ -145,7 +145,7 @@ exports.createLink = function(doclet) { } return url; -} +}; exports.longnameToUrl = linkMap.longnameToUrl; diff --git a/templates/default/publish.js b/templates/default/publish.js index 58a0ba12..c9e97bc2 100644 --- a/templates/default/publish.js +++ b/templates/default/publish.js @@ -222,7 +222,7 @@ addSignatureReturns(doclet); addAttribs(doclet); } - }) + }); // do this after the urls have all been generated data.forEach(function(doclet) { @@ -232,12 +232,12 @@ if (doclet.kind === 'member') { addSignatureType(doclet); - addAttribs(doclet) + addAttribs(doclet); } if (doclet.kind === 'constant') { addSignatureType(doclet); - addAttribs(doclet) + addAttribs(doclet); } }); @@ -392,7 +392,7 @@ html = helper.resolveLinks(html); // turn {@link foo} into foo - fs.writeFileSync(path, html) + fs.writeFileSync(path, html); } for (var longname in helper.longnameToUrl) { @@ -444,7 +444,7 @@ // yes, you can use {@link} in tutorials too! html = helper.resolveLinks(html); // turn {@link foo} into foo - fs.writeFileSync(path, html) + fs.writeFileSync(path, html); } // tutorials can have only one parent so there is no risk for loops @@ -455,7 +455,7 @@ }); } saveChildren(tutorials); - } + }; function hashToLink(doclet, hash) { if ( !/^(#.+)/.test(hash) ) { return hash; } diff --git a/templates/haruki/publish.js b/templates/haruki/publish.js index fcfc8e1a..706eae75 100644 --- a/templates/haruki/publish.js +++ b/templates/haruki/publish.js @@ -36,7 +36,7 @@ console.log('The only -d destination option currently supported is "console"!'); } - } + }; function graft(parentNode, childNodes, parentLongname, parentName) { childNodes