From 84b71ae98394e789269db4c4029a2314ee4ebd41 Mon Sep 17 00:00:00 2001 From: Jakub Pawlowicz Date: Fri, 20 Jan 2017 11:20:20 +0100 Subject: [PATCH] Renames 'star' to 'asterisk'. Why: * This is the character's name. --- lib/optimizer/hack.js | 2 +- lib/optimizer/level-1/optimize.js | 2 +- lib/optimizer/level-1/tidy-rules.js | 8 ++++---- lib/optimizer/restore-from-optimizing.js | 6 +++--- lib/optimizer/wrap-for-optimizing.js | 8 ++++---- lib/tokenizer/marker.js | 2 +- lib/tokenizer/tokenize.js | 8 ++++---- test/integration-test.js | 12 ++++++------ test/optimizer/level-1/optimize-test.js | 8 ++++---- test/optimizer/wrap-for-optimizing-test.js | 2 +- 10 files changed, 29 insertions(+), 29 deletions(-) diff --git a/lib/optimizer/hack.js b/lib/optimizer/hack.js index 0e769e4e..812b5d5e 100644 --- a/lib/optimizer/hack.js +++ b/lib/optimizer/hack.js @@ -1,7 +1,7 @@ var Hack = { + ASTERISK: 'asterisk', BANG: 'bang', BACKSLASH: 'backslash', - STAR: 'star', UNDERSCORE: 'underscore' }; diff --git a/lib/optimizer/level-1/optimize.js b/lib/optimizer/level-1/optimize.js index b3288eda..01dce3f0 100644 --- a/lib/optimizer/level-1/optimize.js +++ b/lib/optimizer/level-1/optimize.js @@ -445,7 +445,7 @@ function optimizeBody(properties, context) { } if (property.hack && ( - (property.hack == Hack.STAR || property.hack == Hack.UNDERSCORE) && !options.compatibility.properties.iePrefixHack || + (property.hack == Hack.ASTERISK || property.hack == Hack.UNDERSCORE) && !options.compatibility.properties.iePrefixHack || property.hack == Hack.BACKSLASH && !options.compatibility.properties.ieSuffixHack || property.hack == Hack.BANG && !options.compatibility.properties.ieBangHack)) { property.unused = true; diff --git a/lib/optimizer/level-1/tidy-rules.js b/lib/optimizer/level-1/tidy-rules.js index b654d303..d94db65b 100644 --- a/lib/optimizer/level-1/tidy-rules.js +++ b/lib/optimizer/level-1/tidy-rules.js @@ -6,9 +6,9 @@ var HTML_COMMENT_PATTERN = /^(?:(?:)\s*)+/; var RELATION_PATTERN = /[>\+~]/; var WHITESPACE_PATTERN = /\s/; +var ASTERISK_PLUS_HTML_HACK = '*+html '; +var ASTERISK_FIRST_CHILD_PLUS_HTML_HACK = '*:first-child+html '; var LESS_THAN = '<'; -var STAR_PLUS_HTML_HACK = '*+html '; -var STAR_FIRST_CHILD_PLUS_HTML_HACK = '*:first-child+html '; function hasInvalidCharacters(value) { var isEscaped; @@ -164,11 +164,11 @@ function tidyRules(rules, removeUnsupported, adjacentSpace, format, warnings) { reduced = reduced.replace(/\+nav(\S|$)/, '+ nav$1'); } - if (removeUnsupported && reduced.indexOf(STAR_PLUS_HTML_HACK) > -1) { + if (removeUnsupported && reduced.indexOf(ASTERISK_PLUS_HTML_HACK) > -1) { continue; } - if (removeUnsupported && reduced.indexOf(STAR_FIRST_CHILD_PLUS_HTML_HACK) > -1) { + if (removeUnsupported && reduced.indexOf(ASTERISK_FIRST_CHILD_PLUS_HTML_HACK) > -1) { continue; } diff --git a/lib/optimizer/restore-from-optimizing.js b/lib/optimizer/restore-from-optimizing.js index 73160c87..fd8b8877 100644 --- a/lib/optimizer/restore-from-optimizing.js +++ b/lib/optimizer/restore-from-optimizing.js @@ -2,9 +2,9 @@ var Hack = require('./hack'); var Marker = require('../tokenizer/marker'); +var ASTERISK_HACK = '*'; var BACKSLASH_HACK = '\\9'; var IMPORTANT_TOKEN = '!important'; -var STAR_HACK = '*'; var UNDERSCORE_HACK = '_'; var BANG_HACK = '!ie'; @@ -57,8 +57,8 @@ function restoreImportant(property) { function restoreHack(property) { if (property.hack == Hack.UNDERSCORE) { property.name = UNDERSCORE_HACK + property.name; - } else if (property.hack == Hack.STAR) { - property.name = STAR_HACK + property.name; + } else if (property.hack == Hack.ASTERISK) { + property.name = ASTERISK_HACK + property.name; } else if (property.hack == Hack.BACKSLASH) { property.value[property.value.length - 1][1] += BACKSLASH_HACK; } else if (property.hack == Hack.BANG) { diff --git a/lib/optimizer/wrap-for-optimizing.js b/lib/optimizer/wrap-for-optimizing.js index 09dd5685..2214765f 100644 --- a/lib/optimizer/wrap-for-optimizing.js +++ b/lib/optimizer/wrap-for-optimizing.js @@ -4,6 +4,7 @@ var Marker = require('../tokenizer/marker'); var Token = require('../tokenizer/token'); var Match = { + ASTERISK: '*', BACKSLASH: '\\', BANG: '!', BANG_SUFFIX_PATTERN: /!\w+$/, @@ -11,7 +12,6 @@ var Match = { IMPORTANT_TOKEN_PATTERN: new RegExp('!important$', 'i'), IMPORTANT_WORD: 'important', IMPORTANT_WORD_PATTERN: new RegExp('important$', 'i'), - STAR: '*', SUFFIX_BANG_PATTERN: /!$/, UNDERSCORE: '_', VARIABLE_REFERENCE_PATTERN: /var\(--.+\)$/ @@ -89,8 +89,8 @@ function hackType(property) { if (name[0] == Match.UNDERSCORE) { type = Hack.UNDERSCORE; - } else if (name[0] == Match.STAR) { - type = Hack.STAR; + } else if (name[0] == Match.ASTERISK) { + type = Hack.ASTERISK; } else if (lastValue[1][0] == Match.BANG && !lastValue[1].match(Match.IMPORTANT_WORD_PATTERN)) { type = Hack.BANG; } else if (lastValue[1].indexOf(Match.BANG) > 0 && !lastValue[1].match(Match.IMPORTANT_WORD_PATTERN) && Match.BANG_SUFFIX_PATTERN.test(lastValue[1])) { @@ -160,7 +160,7 @@ function wrapSingle(property) { } var hackProperty = hackType(property); - if (hackProperty == Hack.STAR || hackProperty == Hack.UNDERSCORE) { + if (hackProperty == Hack.ASTERISK || hackProperty == Hack.UNDERSCORE) { stripPrefixHack(property); } else if (hackProperty == Hack.BACKSLASH || hackProperty == Hack.BANG) { stripSuffixHack(property, hackProperty); diff --git a/lib/tokenizer/marker.js b/lib/tokenizer/marker.js index a99e82cb..c3f6805a 100644 --- a/lib/tokenizer/marker.js +++ b/lib/tokenizer/marker.js @@ -1,4 +1,5 @@ var Marker = { + ASTERISK: '*', AT: '@', BACK_SLASH: '\\', CLOSE_CURLY_BRACKET: '}', @@ -17,7 +18,6 @@ var Marker = { SEMICOLON: ';', SINGLE_QUOTE: '\'', SPACE: ' ', - STAR: '*', TAB: '\t', UNDERSCORE: '_' }; diff --git a/lib/tokenizer/tokenize.js b/lib/tokenizer/tokenize.js index cbb4f884..7ba9282c 100644 --- a/lib/tokenizer/tokenize.js +++ b/lib/tokenizer/tokenize.js @@ -79,8 +79,8 @@ function intoTokens(source, externalContext, internalContext, isNested) { isSpace = character == Marker.SPACE || character == Marker.TAB; isNewLineNix = character == Marker.NEW_LINE_NIX; isNewLineWin = character == Marker.NEW_LINE_NIX && source[position.index - 1] == Marker.NEW_LINE_WIN; - isCommentStart = !wasCommentEnd && level != Level.COMMENT && !isQuoted && character == Marker.STAR && source[position.index - 1] == Marker.FORWARD_SLASH; - isCommentEnd = !wasCommentStart && level == Level.COMMENT && character == Marker.FORWARD_SLASH && source[position.index - 1] == Marker.STAR; + isCommentStart = !wasCommentEnd && level != Level.COMMENT && !isQuoted && character == Marker.ASTERISK && source[position.index - 1] == Marker.FORWARD_SLASH; + isCommentEnd = !wasCommentStart && level == Level.COMMENT && character == Marker.FORWARD_SLASH && source[position.index - 1] == Marker.ASTERISK; metadata = buffer.length === 0 ? [position.line, position.column, position.source] : @@ -347,14 +347,14 @@ function intoTokens(source, externalContext, internalContext, isNested) { // round close bracket within other brackets, e.g. a{width:calc((10rem / 2)<-- buffer.push(character); roundBracketLevel--; - } else if (character == Marker.FORWARD_SLASH && source[position.index + 1] != Marker.STAR && level == Level.RULE && seekingValue && buffer.length > 0) { + } else if (character == Marker.FORWARD_SLASH && source[position.index + 1] != Marker.ASTERISK && level == Level.RULE && seekingValue && buffer.length > 0) { // forward slash within a property, e.g. a{background:url(image.png) 0 0/<-- serializedBuffer = buffer.join('').trim(); propertyToken.push([Token.PROPERTY_VALUE, serializedBuffer, [originalMetadata(metadata, serializedBuffer, externalContext)]]); propertyToken.push([Token.PROPERTY_VALUE, character, [[position.line, position.column, position.source]]]); buffer = []; - } else if (character == Marker.FORWARD_SLASH && source[position.index + 1] != Marker.STAR && level == Level.RULE && seekingValue) { + } else if (character == Marker.FORWARD_SLASH && source[position.index + 1] != Marker.ASTERISK && level == Level.RULE && seekingValue) { // forward slash within a property after space, e.g. a{background:url(image.png) 0 0 /<-- propertyToken.push([Token.PROPERTY_VALUE, character, [[position.line, position.column, position.source]]]); diff --git a/test/integration-test.js b/test/integration-test.js index b182be43..ff454eee 100644 --- a/test/integration-test.js +++ b/test/integration-test.js @@ -1504,7 +1504,7 @@ vows.describe('integration tests') ) .addBatch( optimizerContext('IE 8 hacks', { - 'star': [ + 'asterisk': [ 'a{*color:#fff}', 'a{*color:#fff}' ], @@ -1516,23 +1516,23 @@ vows.describe('integration tests') 'a{color:#fff\\9}', 'a{color:#fff\\9}' ], - 'overriding by a star': [ + 'overriding by an asterisk': [ 'a{color:red;display:block;*color:#fff}', 'a{color:red;display:block;*color:#fff}' ], - 'overriding by a unserscore': [ + 'overriding by an underscore': [ 'a{color:red;display:block;_color:#fff}', 'a{color:red;display:block;_color:#fff}' ], - 'overriding by a backslash': [ + 'overriding by an backslash': [ 'a{color:red;display:block;color:#fff\\9}', 'a{color:red;display:block;color:#fff\\9}' ], - 'overriding a star': [ + 'overriding an asterisk': [ 'a{*color:red;display:block;*color:#fff}', 'a{display:block;*color:#fff}' ], - 'overriding a unserscore': [ + 'overriding an underscore': [ 'a{_color:red;display:block;_color:#fff}', 'a{display:block;_color:#fff}' ], diff --git a/test/optimizer/level-1/optimize-test.js b/test/optimizer/level-1/optimize-test.js index 981530bb..399ea1dc 100644 --- a/test/optimizer/level-1/optimize-test.js +++ b/test/optimizer/level-1/optimize-test.js @@ -493,7 +493,7 @@ vows.describe('level 1 optimizations') 'a{_width:101px}', '' ], - 'star': [ + 'asterisk': [ 'a{*width:101px}', '' ], @@ -517,7 +517,7 @@ vows.describe('level 1 optimizations') 'a{_width:101px}', '' ], - 'star': [ + 'asterisk': [ 'a{*width:101px}', '' ], @@ -537,7 +537,7 @@ vows.describe('level 1 optimizations') 'a{_width:101px}', 'a{_width:101px}' ], - 'star': [ + 'asterisk': [ 'a{*width:101px}', 'a{*width:101px}' ], @@ -557,7 +557,7 @@ vows.describe('level 1 optimizations') 'a{_width:101px}', 'a{_width:101px}' ], - 'star': [ + 'asterisk': [ 'a{*width:101px}', 'a{*width:101px}' ], diff --git a/test/optimizer/wrap-for-optimizing-test.js b/test/optimizer/wrap-for-optimizing-test.js index f18229dc..904ea271 100644 --- a/test/optimizer/wrap-for-optimizing-test.js +++ b/test/optimizer/wrap-for-optimizing-test.js @@ -366,7 +366,7 @@ vows.describe(wrapForOptimizing) assert.deepEqual(wrapped[0].name, 'color'); }, 'is a hack': function (wrapped) { - assert.equal(wrapped[0].hack, 'star'); + assert.equal(wrapped[0].hack, 'asterisk'); } }, 'backslash hack': { -- 2.34.1