Working syntax
This commit is contained in:
@@ -149,12 +149,110 @@
|
|||||||
"types": {
|
"types": {
|
||||||
"patterns": [
|
"patterns": [
|
||||||
{
|
{
|
||||||
"name": "entity.name.type.primitive.mist",
|
"comment": "numeric types",
|
||||||
"match": "\\b(bool|char|str)\\b"
|
"match": "(?<![A-Za-z])(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)\\b",
|
||||||
|
"captures": {
|
||||||
|
"1": {
|
||||||
|
"name": "entity.name.type.numeric.mist"
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"match": "\\b[A-Z][a-zA-Z0-9_]*\\b",
|
"comment": "parameterized types",
|
||||||
"name": "entity.name.type.mist"
|
"begin": "\\b(_?[A-Z][A-Za-z0-9_]*)(<)",
|
||||||
|
"beginCaptures": {
|
||||||
|
"1": {
|
||||||
|
"name": "entity.name.type.mist"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"name": "punctuation.brackets.angle.mist"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"end": ">",
|
||||||
|
"endCaptures": {
|
||||||
|
"0": {
|
||||||
|
"name": "punctuation.brackets.angle.mist"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "#block-comments"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#comments"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#keywords"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#variables"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#lifetimes"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#punctuation"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#types"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"include": "#variables"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"comment": "trait declarations",
|
||||||
|
"match": "\\b(trait)\\s+(_?[A-Z][A-Za-z0-9_]*)\\b",
|
||||||
|
"captures": {
|
||||||
|
"1": {
|
||||||
|
"name": "keyword.declaration.trait.mist storage.type.mist"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"name": "entity.name.type.trait.mist"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"comment": "struct declarations",
|
||||||
|
"match": "\\b(struct)\\s+(_?[A-Z][A-Za-z0-9_]*)\\b",
|
||||||
|
"captures": {
|
||||||
|
"1": {
|
||||||
|
"name": "keyword.declaration.struct.mist storage.type.mist"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"name": "entity.name.type.struct.mist"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"comment": "enum declarations",
|
||||||
|
"match": "\\b(enum)\\s+(_?[A-Z][A-Za-z0-9_]*)\\b",
|
||||||
|
"captures": {
|
||||||
|
"1": {
|
||||||
|
"name": "keyword.declaration.enum.mist storage.type.mist"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"name": "entity.name.type.enum.mist"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"comment": "type declarations",
|
||||||
|
"match": "\\b(type)\\s+(_?[A-Z][A-Za-z0-9_]*)\\b",
|
||||||
|
"captures": {
|
||||||
|
"1": {
|
||||||
|
"name": "keyword.declaration.type.mist storage.type.mist"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"name": "entity.name.type.declaration.mist"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"comment": "types",
|
||||||
|
"name": "entity.name.type.mist",
|
||||||
|
"match": "\\b_?[A-Z][A-Za-z0-9_]*\\b(?!!)"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user