Skip to content

Commit fc4ead0

Browse files
committed
Modify member/function branch termination
This commit attempts to avoid possible deadlocks when matching functions vs. variable assignments. Just a shot into the blue.
1 parent 3c9dfe0 commit fc4ead0

1 file changed

Lines changed: 10 additions & 15 deletions

File tree

CoffeeScript.sublime-syntax

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -196,16 +196,13 @@ contexts:
196196

197197
function-name:
198198
- meta_include_prototype: false
199-
- meta_scope: meta.function.identifier.coffee
200199
- match: '{{identifier}}'
201-
scope: entity.name.function.coffee
202-
set:
200+
scope: meta.function.identifier.coffee entity.name.function.coffee
201+
push:
203202
- function-body
204203
- function-parameter-list
205204
- function-assignment
206-
# any non-whitespace char or end of file
207-
- match: \S|\Z
208-
fail: function
205+
- include: immediately-pop
209206

210207
function-assignment:
211208
- meta_include_prototype: false
@@ -246,9 +243,9 @@ contexts:
246243
- meta_content_scope: meta.function.coffee
247244
- match: '[=-]>'
248245
scope: meta.function.coffee keyword.declaration.function.coffee
249-
pop: 1
246+
pop: 2
250247
# any non-whitespace char or end of file
251-
- match: \S|\Z
248+
- match: (?=\S|\Z)
252249
fail: function
253250

254251
###[ FUNCTION CALLS ]#########################################################
@@ -918,22 +915,20 @@ contexts:
918915

919916
member-function:
920917
- meta_include_prototype: false
921-
- meta_scope: meta.function.identifier.coffee meta.path.coffee
922918
- match: '{{identifier}}'
923-
scope: entity.name.function.coffee
924-
set:
919+
scope: meta.function.identifier.coffee meta.path.coffee entity.name.function.coffee
920+
push:
925921
- member-function-body
926922
- function-parameter-list
927923
- function-assignment
928-
- match: ''
929-
fail: member
924+
- include: immediately-pop
930925

931926
member-function-body:
932927
- meta_content_scope: meta.function.coffee
933928
- match: '[=-]>'
934929
scope: meta.function.coffee keyword.declaration.function.coffee
935-
pop: 1
936-
- match: (?=\S)
930+
pop: 2
931+
- match: (?=\S|\Z)
937932
fail: member
938933

939934
member-variable:

0 commit comments

Comments
 (0)