mirror of
https://github.com/atom/atom.git
synced 2026-04-28 03:01:47 -04:00
Memoize Rule.prototype.getIncludedPatterns to shave a cheap 2% off profile
This commit is contained in:
@@ -76,12 +76,14 @@ class Rule
|
||||
|
||||
getIncludedPatterns: (included=[]) ->
|
||||
return [] if _.include(included, this)
|
||||
included.push(this)
|
||||
allPatterns = []
|
||||
|
||||
return @allPatterns if @allPatterns
|
||||
|
||||
included = included.concat([this])
|
||||
@allPatterns = []
|
||||
for pattern in @patterns
|
||||
allPatterns.push(pattern.getIncludedPatterns(included)...)
|
||||
allPatterns
|
||||
@allPatterns.push(pattern.getIncludedPatterns(included)...)
|
||||
@allPatterns
|
||||
|
||||
getNextTokens: (stack, line, position) ->
|
||||
patterns = @getIncludedPatterns()
|
||||
|
||||
Reference in New Issue
Block a user