File worker-html.js
has 10540 lines of code (exceeds 250 allowed). Consider refactoring. Open
"no use strict";
;(function(window) {
if (typeof window.window != "undefined" && window.document) {
return;
}
Function 6
has 2537 lines of code (exceeds 25 allowed). Consider refactoring. Open
6:[function(_dereq_,module,exports){
var assert = _dereq_('assert');
var messages = _dereq_('./messages.json');
var constants = _dereq_('./constants');
Function 12
has 2233 lines of code (exceeds 25 allowed). Consider refactoring. Open
12:[function(_dereq_,module,exports){
module.exports = {
"Aacute;": "\u00C1",
"Aacute": "\u00C1",
"aacute;": "\u00E1",
Function TreeBuilder
has 2018 lines of code (exceeds 25 allowed). Consider refactoring. Open
function TreeBuilder() {
this.tokenizer = null;
this.errorHandler = null;
this.scriptingEnabled = false;
this.document = null;
Function 5
has 1431 lines of code (exceeds 25 allowed). Consider refactoring. Open
5:[function(_dereq_,module,exports){
var InputStream = _dereq_('./InputStream').InputStream;
var EntityParser = _dereq_('./EntityParser').EntityParser;
function isWhitespace(c){
Function tokenize
has 1370 lines of code (exceeds 25 allowed). Consider refactoring. Open
Tokenizer.prototype.tokenize = function(source) {
Tokenizer.DATA = data_state;
Tokenizer.RCDATA = rcdata_state;
Tokenizer.RAWTEXT = rawtext_state;
Tokenizer.SCRIPT_DATA = script_data_state;
Function 15
has 431 lines of code (exceeds 25 allowed). Consider refactoring. Open
15:[function(_dereq_,module,exports){
(function (process,global){
var formatRegExp = /%[sdj%]/g;
exports.format = function(f) {
Function 10
has 371 lines of code (exceeds 25 allowed). Consider refactoring. Open
10:[function(_dereq_,module,exports){
var util = _dereq_('util');
var TreeBuilder = _dereq_('../TreeBuilder').TreeBuilder;
function SAXTreeBuilder() {
Consider simplifying this complex logical expression. Open
} else if ((c >= 0x0001 && c <= 0x0008) || (c >= 0x000E && c <= 0x001F) ||
(c >= 0x007F && c <= 0x009F) || (c >= 0xFDD0 && c <= 0xFDEF) ||
c == 0x000B || c == 0xFFFE || c == 0x1FFFE || c == 0x2FFFFE ||
c == 0x2FFFF || c == 0x3FFFE || c == 0x3FFFF || c == 0x4FFFE ||
c == 0x4FFFF || c == 0x5FFFE || c == 0x5FFFF || c == 0x6FFFE ||
Function 8
has 258 lines of code (exceeds 25 allowed). Consider refactoring. Open
8:[function(_dereq_,module,exports){
module.exports={
"null-character":
"Null character in input stream, replaced with U+FFFD.",
"invalid-codepoint":
Function 16
has 211 lines of code (exceeds 25 allowed). Consider refactoring. Open
16:[function(_dereq_,module,exports){
function EventEmitter() {
this._events = this._events || {};
this._maxListeners = this._maxListeners || undefined;
Function 13
has 209 lines of code (exceeds 25 allowed). Consider refactoring. Open
13:[function(_dereq_,module,exports){
var util = _dereq_('util/');
var pSlice = Array.prototype.slice;
var hasOwn = Object.prototype.hasOwnProperty;
Function 1
has 173 lines of code (exceeds 25 allowed). Consider refactoring. Open
1:[function(_dereq_,module,exports){
function isScopeMarker(node) {
if (node.namespaceURI === "http://www.w3.org/1999/xhtml") {
return node.localName === "applet"
|| node.localName === "caption"
Function 2
has 170 lines of code (exceeds 25 allowed). Consider refactoring. Open
2:[function(_dereq_,module,exports){
var entities = _dereq_('html5-entities');
var InputStream = _dereq_('./InputStream').InputStream;
var namedEntityPrefixes = {};
Function 4
has 168 lines of code (exceeds 25 allowed). Consider refactoring. Open
4:[function(_dereq_,module,exports){
var SpecialElements = {
"http://www.w3.org/1999/xhtml": [
'address',
'applet',
Function 11
has 131 lines of code (exceeds 25 allowed). Consider refactoring. Open
11:[function(_dereq_,module,exports){
function TreeParser(contentHandler, lexicalHandler){
this.contentHandler;
this.lexicalHandler;
this.locatorDelegate;
Function 7
has 119 lines of code (exceeds 25 allowed). Consider refactoring. Open
7:[function(_dereq_,module,exports){
exports.SVGTagMap = {
"altglyph": "altGlyph",
"altglyphdef": "altGlyphDef",
"altglyphitem": "altGlyphItem",
Function processDoctype
has 108 lines of code (exceeds 25 allowed). Consider refactoring. Open
modes.initial.processDoctype = function(name, publicId, systemId, forceQuirks) {
tree.insertDoctype(name || '', publicId || '', systemId || '');
if (forceQuirks || name != 'html' || (publicId != null && ([
"+//silmaril//dtd html pro v0r11 19970101//",
Function 3
has 105 lines of code (exceeds 25 allowed). Consider refactoring. Open
3:[function(_dereq_,module,exports){
function InputStream() {
this.data = '';
this.start = 0;
this.committed = 0;
Function consumeEntity
has 95 lines of code (exceeds 25 allowed). Consider refactoring. Open
EntityParser.consumeEntity = function(buffer, tokenizer, additionalAllowedCharacter) {
var decodedCharacter = '';
var consumedCharacters = '';
var ch = buffer.char();
if (ch === InputStream.EOF)
Function formatValue
has 78 lines of code (exceeds 25 allowed). Consider refactoring. Open
function formatValue(ctx, value, recurseTimes) {
if (ctx.customInspect &&
value &&
isFunction(value.inspect) &&
value.inspect !== exports.inspect &&
Consider simplifying this complex logical expression. Open
if (!currentNode || !currentNode.isForeign() ||
(currentNode.isMathMLTextIntegrationPoint() &&
((token.type == 'StartTag' &&
!(token.name in {mglyph:0, malignmark:0})) ||
(token.type === 'Characters'))
Function adoptionAgencyEndTag
has 73 lines of code (exceeds 25 allowed). Consider refactoring. Open
TreeBuilder.prototype.adoptionAgencyEndTag = function(name) {
var outerIterationLimit = 8;
var innerIterationLimit = 3;
var formattingElement;
Function onChange
has 55 lines of code (exceeds 25 allowed). Consider refactoring. Open
this.onChange = function(e) {
var delta = e.data;
var range = delta.range;
if (range.start.row == range.end.row && range.start.row != this.row)
Function formatProperty
has 54 lines of code (exceeds 25 allowed). Consider refactoring. Open
function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {
var name, str, desc;
desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };
if (desc.get) {
if (desc.set) {
Function replaceEntityNumbers
has 52 lines of code (exceeds 25 allowed). Consider refactoring. Open
EntityParser.replaceEntityNumbers = function(c) {
switch(c) {
case 0x00: return 0xFFFD; // REPLACEMENT CHARACTER
case 0x13: return 0x0010; // Carriage return
case 0x80: return 0x20AC; // EURO SIGN
Consider simplifying this complex logical expression. Open
if ((publicId == "-//W3C//DTD HTML 4.0//EN" && (systemId == null || systemId == "http://www.w3.org/TR/REC-html40/strict.dtd"))
|| (publicId == "-//W3C//DTD HTML 4.01//EN" && (systemId == null || systemId == "http://www.w3.org/TR/html4/strict.dtd"))
|| (publicId == "-//W3C//DTD XHTML 1.0 Strict//EN" && (systemId == "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"))
|| (publicId == "-//W3C//DTD XHTML 1.1//EN" && (systemId == "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"))
) {
Function emit
has 47 lines of code (exceeds 25 allowed). Consider refactoring. Open
EventEmitter.prototype.emit = function(type) {
var er, handler, len, args, i, listeners;
if (!this._events)
this._events = {};
Function 18
has 47 lines of code (exceeds 25 allowed). Consider refactoring. Open
18:[function(_dereq_,module,exports){
var process = module.exports = {};
process.nextTick = (function () {
Function after_doctype_name_state
has 46 lines of code (exceeds 25 allowed). Consider refactoring. Open
function after_doctype_name_state(buffer) {
var data = buffer.char();
if (data === InputStream.EOF) {
tokenizer._currentToken.forceQuirks = true;
buffer.unget(data);
Function attribute_name_state
has 46 lines of code (exceeds 25 allowed). Consider refactoring. Open
function attribute_name_state(buffer) {
var data = buffer.char();
var leavingThisState = true;
var shouldEmit = false;
if (data === InputStream.EOF) {
Function 9
has 44 lines of code (exceeds 25 allowed). Consider refactoring. Open
9:[function(_dereq_,module,exports){
var SAXTreeBuilder = _dereq_('./SAXTreeBuilder').SAXTreeBuilder;
var Tokenizer = _dereq_('../Tokenizer').Tokenizer;
var TreeParser = _dereq_('./TreeParser').TreeParser;
Function splice
has 44 lines of code (exceeds 25 allowed). Consider refactoring. Open
Array.prototype.splice = function(pos, removeCount){
var length = this.length;
if (pos > 0) {
if (pos > length)
pos = length;
Function processToken
has 43 lines of code (exceeds 25 allowed). Consider refactoring. Open
TreeBuilder.prototype.processToken = function(token) {
this.selfClosingFlagAcknowledged = false;
var currentNode = this.openElements.top || null;
var insertionMode;
Consider simplifying this complex logical expression. Open
if (forceQuirks || name != 'html' || (publicId != null && ([
"+//silmaril//dtd html pro v0r11 19970101//",
"-//advasoft ltd//dtd html 3.0 aswedit + extensions//",
"-//as//dtd html 3.0 aswedit + extensions//",
"-//ietf//dtd html 2.0 level 1//",
Function resetInsertionMode
has 39 lines of code (exceeds 25 allowed). Consider refactoring. Open
TreeBuilder.prototype.resetInsertionMode = function() {
var last = false;
var node = null;
for (var i = this.openElements.length - 1; i >= 0; i--) {
node = this.openElements.item(i);
Function startTokenization
has 36 lines of code (exceeds 25 allowed). Consider refactoring. Open
TreeBuilder.prototype.startTokenization = function(tokenizer) {
this.tokenizer = tokenizer;
this.compatMode = "no quirks";
this.originalInsertionMode = "initial";
this.framesetOk = true;
Function define
has 35 lines of code (exceeds 25 allowed). Consider refactoring. Open
window.define = function(id, deps, factory) {
if (arguments.length == 2) {
factory = deps;
if (typeof id != "string") {
deps = id;
Function ensureNoahsArkCondition
has 34 lines of code (exceeds 25 allowed). Consider refactoring. Open
TreeBuilder.prototype.ensureNoahsArkCondition = function(item) {
var kNoahsArkCapacity = 3;
if (this.activeFormattingElements.length < kNoahsArkCapacity)
return;
var candidates = [];
Function format
has 34 lines of code (exceeds 25 allowed). Consider refactoring. Open
exports.format = function(f) {
if (!isString(f)) {
var objects = [];
for (var i = 0; i < arguments.length; i++) {
objects.push(inspect(arguments[i]));
Function removeListener
has 33 lines of code (exceeds 25 allowed). Consider refactoring. Open
EventEmitter.prototype.removeListener = function(type, listener) {
var list, position, length, i;
if (!isFunction(listener))
throw TypeError('listener must be a function');
Function addListener
has 32 lines of code (exceeds 25 allowed). Consider refactoring. Open
EventEmitter.prototype.addListener = function(type, listener) {
var m;
if (!isFunction(listener))
throw TypeError('listener must be a function');
Function startTagIsindex
has 32 lines of code (exceeds 25 allowed). Consider refactoring. Open
modes.inBody.startTagIsindex = function(name, attributes) {
tree.parseError('deprecated-tag', {name: 'isindex'});
tree.selfClosingFlagAcknowledged = true;
if (tree.form)
return;
Function reduce
has 32 lines of code (exceeds 25 allowed). Consider refactoring. Open
Array.prototype.reduce = function reduce(fun /*, initial*/) {
var object = toObject(this),
self = splitString && _toString(this) == "[object String]" ?
this.split("") :
object,
Function defineProperty
has 31 lines of code (exceeds 25 allowed). Consider refactoring. Open
Object.defineProperty = function defineProperty(object, property, descriptor) {
if ((typeof object != "object" && typeof object != "function") || object === null)
throw new TypeError(ERR_NON_OBJECT_TARGET + object);
if ((typeof descriptor != "object" && typeof descriptor != "function") || descriptor === null)
throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR + descriptor);
Function reduceRight
has 31 lines of code (exceeds 25 allowed). Consider refactoring. Open
Array.prototype.reduceRight = function reduceRight(fun /*, initial*/) {
var object = toObject(this),
self = splitString && _toString(this) == "[object String]" ?
this.split("") :
object,
Function objEquiv
has 31 lines of code (exceeds 25 allowed). Consider refactoring. Open
function objEquiv(a, b) {
if (util.isNullOrUndefined(a) || util.isNullOrUndefined(b))
return false;
if (a.prototype !== b.prototype) return false;
if (isArguments(a)) {
Function attribute_value_unquoted_state
has 29 lines of code (exceeds 25 allowed). Consider refactoring. Open
function attribute_value_unquoted_state(buffer) {
var data = buffer.char();
if (data === InputStream.EOF) {
tokenizer._parseError("eof-after-attribute-value");
buffer.unget(data);
Function before_attribute_value_state
has 29 lines of code (exceeds 25 allowed). Consider refactoring. Open
function before_attribute_value_state(buffer) {
var data = buffer.char();
if (data === InputStream.EOF) {
tokenizer._parseError("expected-attribute-value-but-got-eof");
buffer.unget(data);
Function tag_open_state
has 28 lines of code (exceeds 25 allowed). Consider refactoring. Open
function tag_open_state(buffer) {
var data = buffer.char();
if (data === InputStream.EOF) {
tokenizer._parseError("bare-less-than-sign-at-eof");
tokenizer._emitToken({type: 'Characters', data: '<'});
Function AssertionError
has 28 lines of code (exceeds 25 allowed). Consider refactoring. Open
assert.AssertionError = function AssertionError(options) {
this.name = 'AssertionError';
this.actual = options.actual;
this.expected = options.expected;
this.operator = options.operator;
Function removeAllListeners
has 28 lines of code (exceeds 25 allowed). Consider refactoring. Open
EventEmitter.prototype.removeAllListeners = function(type) {
var key, listeners;
if (!this._events)
return this;
Function nextTick
has 28 lines of code (exceeds 25 allowed). Consider refactoring. Open
process.nextTick = (function () {
var canSetImmediate = typeof window !== 'undefined'
&& window.setImmediate;
var canPost = typeof window !== 'undefined'
&& window.postMessage && window.addEventListener
Function bind
has 28 lines of code (exceeds 25 allowed). Consider refactoring. Open
Function.prototype.bind = function bind(that) { // .length is 1
var target = this;
if (typeof target != "function") {
throw new TypeError("Function.prototype.bind called on incompatible " + target);
}
Function after_attribute_name_state
has 28 lines of code (exceeds 25 allowed). Consider refactoring. Open
function after_attribute_name_state(buffer) {
var data = buffer.char();
if (data === InputStream.EOF) {
tokenizer._parseError("expected-end-of-tag-but-got-eof");
buffer.unget(data);
Function onUpdate
has 28 lines of code (exceeds 25 allowed). Consider refactoring. Open
this.onUpdate = function() {
var value = this.doc.getValue();
if (!value)
return;
var parser = new SAXParser();
Function after_doctype_public_identifier_state
has 26 lines of code (exceeds 25 allowed). Consider refactoring. Open
function after_doctype_public_identifier_state(buffer) {
var data = buffer.char();
if (data === InputStream.EOF) {
tokenizer._parseError("eof-in-doctype");
tokenizer._currentToken.forceQuirks = true;
Function delayedCall
has 26 lines of code (exceeds 25 allowed). Consider refactoring. Open
exports.delayedCall = function(fcn, defaultTimeout) {
var timer = null;
var callback = function() {
timer = null;
fcn();
Function before_attribute_name_state
has 26 lines of code (exceeds 25 allowed). Consider refactoring. Open
function before_attribute_name_state(buffer) {
var data = buffer.char();
if (data === InputStream.EOF) {
tokenizer._parseError("expected-attribute-name-but-got-eof");
buffer.unget(data);
Consider simplifying this complex logical expression. Open
if (node.namespaceURI === "http://www.w3.org/1999/xhtml") {
return node.localName === "applet"
|| node.localName === "caption"
|| node.localName === "marquee"
|| node.localName === "object"
Function Element
has 6 arguments (exceeds 4 allowed). Consider refactoring. Open
function Element(locator, uri, localName, qName, atts, prefixMappings) {
Function formatProperty
has 6 arguments (exceeds 4 allowed). Consider refactoring. Open
function formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {
Avoid deeply nested control flow statements. Open
if (end.column >= column)
column = start.column;
else
column = Math.max(0, column - (end.column - start.column));
Avoid deeply nested control flow statements. Open
if (start.row <= row) {
if (end.row <= row)
row -= end.row - start.row;
else {
row = start.row;
Avoid deeply nested control flow statements. Open
for (i = 0; i < add; ++i) {
this[pos+i] = insert[i];
}
Avoid deeply nested control flow statements. Open
for (var i = 0; i < tailCount; ++i) {
this[tailNewPos+i] = this[tailOldPos+i];
}
Avoid deeply nested control flow statements. Open
} else if (start.row !== end.row && start.row < row) {
if (end.row === row)
column = Math.max(0, column - end.column) + start.column;
row -= (end.row - start.row);
} else if (end.row === row) {
Avoid deeply nested control flow statements. Open
} else if (tailNewPos > tailOldPos) { // case B
for (i = tailCount; i--; ) {
this[tailNewPos+i] = this[tailOldPos+i];
}
} // else, add == remove (nothing to do)
Consider simplifying this complex logical expression. Open
if ((shouldThrow && actual && expected &&
!expectedException(actual, expected)) || (!shouldThrow && actual)) {
throw actual;
}
Consider simplifying this complex logical expression. Open
if (ctx.customInspect &&
value &&
isFunction(value.inspect) &&
value.inspect !== exports.inspect &&
!(value.constructor && value.constructor.prototype === value)) {
Consider simplifying this complex logical expression. Open
if (insertionModeName == 'inTable' ||
insertionModeName == 'inCaption' ||
insertionModeName == 'inColumnGroup' ||
insertionModeName == 'inTableBody' ||
insertionModeName == 'inRow' ||
Consider simplifying this complex logical expression. Open
if (ch == '\t' || ch == '\n' || ch == '\v' || ch == ' ' || ch == '<' || ch == '&') {
buffer.unget(consumedCharacters);
return false;
}
Consider simplifying this complex logical expression. Open
if (node.namespaceURI === "http://www.w3.org/1998/Math/MathML") {
return node.localName === "mi"
|| node.localName === "mo"
|| node.localName === "mn"
|| node.localName === "ms"
Consider simplifying this complex logical expression. Open
} else if (util.isRegExp(actual) && util.isRegExp(expected)) {
return actual.source === expected.source &&
actual.global === expected.global &&
actual.multiline === expected.multiline &&
actual.lastIndex === expected.lastIndex &&
Consider simplifying this complex logical expression. Open
if (this.namespaceURI === "http://www.w3.org/1999/xhtml") {
return this.localName === 'h1' ||
this.localName === 'h2' ||
this.localName === 'h3' ||
this.localName === 'h4' ||
Function formatArray
has 5 arguments (exceeds 4 allowed). Consider refactoring. Open
function formatArray(ctx, value, recurseTimes, visibleKeys, keys) {
Function startElement
has 5 arguments (exceeds 4 allowed). Consider refactoring. Open
TreeParser.prototype.startElement = function(uri, localName, qName, atts, locator) {
Function fail
has 5 arguments (exceeds 4 allowed). Consider refactoring. Open
function fail(actual, expected, message, operator, stackStartFunction) {
Function onerror
has 5 arguments (exceeds 4 allowed). Consider refactoring. Open
window.onerror = function(message, file, line, col, err) {
Avoid too many return
statements within this function. Open
return this.setInsertionMode('inCaption');
Avoid too many return
statements within this function. Open
return actual.getTime() === expected.getTime();
Avoid too many return
statements within this function. Open
if (!_deepEqual(a[key], b[key])) return false;
Avoid too many return
statements within this function. Open
return this.setInsertionMode('inBody');
Avoid too many return
statements within this function. Open
return objEquiv(actual, expected);
Avoid too many return
statements within this function. Open
return braces[0] + base + braces[1];
Avoid too many return
statements within this function. Open
return 0;
Avoid too many return
statements within this function. Open
return false;
Avoid too many return
statements within this function. Open
return decodedCharacter;
Avoid too many return
statements within this function. Open
return false;
Avoid too many return
statements within this function. Open
return formatError(value);
Avoid too many return
statements within this function. Open
return actual == expected;
Avoid too many return
statements within this function. Open
return false;
Avoid too many return
statements within this function. Open
return this.setInsertionMode('inTable');
Avoid too many return
statements within this function. Open
return 42;
Avoid too many return
statements within this function. Open
return false;
Avoid too many return
statements within this function. Open
return this.setInsertionMode('inBody');
Avoid too many return
statements within this function. Open
return false;
Avoid too many return
statements within this function. Open
return ctx.stylize('null', 'null');
Avoid too many return
statements within this function. Open
return 0;
Avoid too many return
statements within this function. Open
return actual.source === expected.source &&
actual.global === expected.global &&
actual.multiline === expected.multiline &&
actual.lastIndex === expected.lastIndex &&
actual.ignoreCase === expected.ignoreCase;
Avoid too many return
statements within this function. Open
return this.setInsertionMode('inColumnGroup');
Avoid too many return
statements within this function. Open
return this.setInsertionMode('inHead');
Avoid too many return
statements within this function. Open
return this.setInsertionMode('inFrameset');
Avoid too many return
statements within this function. Open
return true;
Avoid too many return
statements within this function. Open
return column <= this.end.column ? 0 : 1;
Avoid too many return
statements within this function. Open
return this.setInsertionMode('afterHead');
Avoid too many return
statements within this function. Open
return false;
Avoid too many return
statements within this function. Open
return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');
Avoid too many return
statements within this function. Open
return -1;
Avoid too many return
statements within this function. Open
return false;
Avoid too many return
statements within this function. Open
return ctx.stylize('[Object]', 'special');
Avoid too many return
statements within this function. Open
return reduceToSingleString(output, base, braces);
Avoid too many return
statements within this function. Open
return decodedCharacter;
Avoid too many return
statements within this function. Open
return false;
Avoid too many return
statements within this function. Open
return this.setInsertionMode('beforeHead');
Avoid too many return
statements within this function. Open
return false;
Avoid too many return
statements within this function. Open
return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');
Avoid too many return
statements within this function. Open
return ctx.stylize(Date.prototype.toString.call(value), 'date');
Similar blocks of code found in 2 locations. Consider refactoring. Open
ace.define("ace/mode/html/saxparser",["require","exports","module"], function(require, exports, module) {
module.exports = (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({
1:[function(_dereq_,module,exports){
function isScopeMarker(node) {
if (node.namespaceURI === "http://www.w3.org/1999/xhtml") {
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 76428.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76
Similar blocks of code found in 7 locations. Consider refactoring. Open
ace.define("ace/lib/es5-shim",["require","exports","module"], function(require, exports, module) {
function Empty() {}
if (!Function.prototype.bind) {
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 5921.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76
Similar blocks of code found in 7 locations. Consider refactoring. Open
ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/range","ace/anchor"], function(require, exports, module) {
"use strict";
var oop = require("./lib/oop");
var EventEmitter = require("./lib/event_emitter").EventEmitter;
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 4012.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76
Similar blocks of code found in 7 locations. Consider refactoring. Open
ace.define("ace/range",["require","exports","module"], function(require, exports, module) {
"use strict";
var comparePoints = function(p1, p2) {
return p1.row - p2.row || p1.column - p2.column;
};
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 2572.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76
Identical blocks of code found in 14 locations. Consider refactoring. Open
;(function(window) {
if (typeof window.window != "undefined" && window.document) {
return;
}
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 1584.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76
Similar blocks of code found in 7 locations. Consider refactoring. Open
ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"], function(require, exports, module) {
"use strict";
var oop = require("./lib/oop");
var EventEmitter = require("./lib/event_emitter").EventEmitter;
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 1571.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76
Identical blocks of code found in 7 locations. Consider refactoring. Open
ace.define("ace/lib/lang",["require","exports","module"], function(require, exports, module) {
"use strict";
exports.last = function(a) {
return a[a.length - 1];
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 1357.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76
Similar blocks of code found in 7 locations. Consider refactoring. Open
ace.define("ace/lib/event_emitter",["require","exports","module"], function(require, exports, module) {
"use strict";
var EventEmitter = {};
var stopPropagation = function() { this.propagationStopped = true; };
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 1149.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76
Similar blocks of code found in 2 locations. Consider refactoring. Open
ace.define("ace/mode/html_worker",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/worker/mirror","ace/mode/html/saxparser"], function(require, exports, module) {
"use strict";
var oop = require("../lib/oop");
var lang = require("../lib/lang");
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 428.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76
Identical blocks of code found in 7 locations. Consider refactoring. Open
ace.define("ace/worker/mirror",["require","exports","module","ace/document","ace/lib/lang"], function(require, exports, module) {
"use strict";
var Document = require("../document").Document;
var lang = require("../lib/lang");
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 402.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76
Identical blocks of code found in 7 locations. Consider refactoring. Open
ace.define("ace/lib/oop",["require","exports","module"], function(require, exports, module) {
"use strict";
exports.inherits = function(ctor, superCtor) {
ctor.super_ = superCtor;
- Read upRead up
Duplicated Code
Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:
Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.
When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).
Tuning
This issue has a mass of 183.
We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.
The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.
If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.
See codeclimate-duplication
's documentation for more information about tuning the mass threshold in your .codeclimate.yml
.
Refactorings
- Extract Method
- Extract Class
- Form Template Method
- Introduce Null Object
- Pull Up Method
- Pull Up Field
- Substitute Algorithm
Further Reading
- Don't Repeat Yourself on the C2 Wiki
- Duplicated Code on SourceMaking
- Refactoring: Improving the Design of Existing Code by Martin Fowler. Duplicated Code, p76