-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsyntax_test_lambda.yaml
More file actions
102 lines (80 loc) · 2.77 KB
/
Copy pathsyntax_test_lambda.yaml
File metadata and controls
102 lines (80 loc) · 2.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# SYNTAX TEST "Packages/ESPHome/YAML (esphome).sublime-syntax"
# <- source.yaml-esphome comment
## Lambda mappings
lambda: return id(uri) == "";
# <- meta.mapping.key meta.string string.unquoted.plain.out
#^^^^^ meta.mapping.key meta.string string.unquoted.plain.out
# ^ - source.c++
# ^^^^^^^^^^^^^^^^^^^^^ source.c++
lambda: 'return id(uri) == "";'
# <- meta.mapping.key meta.string string.unquoted.plain.out
#^^^^^ meta.mapping.key meta.string string.unquoted.plain.out
# ^^ - source.c++
# ^^^^^^^^^^^^^^^^^^^^^ source.c++
# ^ - source.c++
lambda: "return id(uri);"
# <- meta.mapping.key meta.string string.unquoted.plain.out
#^^^^^ meta.mapping.key meta.string string.unquoted.plain.out
# ^^ - source.c++
# ^^^^^^^^^^^^^^^ source.c++
# ^ - source.c++
lambda: |-
# ^ keyword.control.flow.block-scalar.literal
# ^ storage.modifier.chomping-indicator
return id(uri);
#^^^^^^^^^^^^^^ source.c++
foo: 1
# <- - source.c++
## Lambda tags
foo: !lambda return id(uri)
# ^^^^^^^ meta.property keyword.control.directive.tag
# ^^^^^^^^^^^^^^ source.c++
foo: !lambda 'return id(uri)'
# ^^^^^^^ meta.property keyword.control.directive.tag
# ^ - source.c++
# ^^^^^^^^^^^^^^ source.c++
# ^ - source.c++
foo: !lambda "return id(uri)"
# ^^^^^^^ meta.property keyword.control.directive.tag
# ^ - source.c++
# ^^^^^^^^^^^^^^ source.c++
# ^ - source.c++
foo: !lambda |-
# ^^^^^^^ meta.property keyword.control.directive.tag
# ^ keyword.control.flow.block-scalar.literal
# ^ storage.modifier.chomping-indicator
const id = id(uri);
#^^^^^^^^^^^^^^^^^^^ source.c++
return id;
#^^^^^^^^^^ source.c++
foo: 1
# <- - source.c++
## Lambda key with lambda tag
lambda: !lambda return id(uri);
# ^^^^^^^ meta.property keyword.control.directive.tag
# ^^^^^^^^^^^^^^^ source.c++
lambda: !lambda "return id(uri);"
# ^^^^^^^ meta.property keyword.control.directive.tag
# ^ - source.c++
# ^^^^^^^^^^^^^^^ source.c++
# ^ - source.c++
lambda: !lambda 'return id(uri);'
# ^^^^^^^ meta.property keyword.control.directive.tag
# ^ - source.c++
# ^^^^^^^^^^^^^^^ source.c++
# ^ - source.c++
lambda: !lambda |-
# ^^^^^^^ meta.property keyword.control.directive.tag
# ^ keyword.control.flow.block-scalar.literal
# ^ storage.modifier.chomping-indicator
return id(uri);
#^^^^^^^^^^^^^^^ source.c++
foo: 1
# <- - source.c++
## Unterminated
lambda:
foo: 1
# <- - source.c++
foo: !lambda
foo: 1
# <- - source.c++