Skip to content

Commit 876e33c

Browse files
han190gnikit
authored andcommitted
add image control statements
1 parent 6e2abfc commit 876e33c

File tree

1 file changed

+129
-1
lines changed

1 file changed

+129
-1
lines changed

syntaxes/fortran_free-form.tmLanguage.json

Lines changed: 129 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2001,6 +2001,9 @@
20012001
},
20022002
{
20032003
"include": "#where-statement"
2004+
},
2005+
{
2006+
"include": "#image-control-statement"
20042007
}
20052008
]
20062009
},
@@ -2853,6 +2856,131 @@
28532856
}
28542857
]
28552858
},
2859+
"image-control-statement": {
2860+
"patterns": [
2861+
{
2862+
"include": "#sync-all-statement"
2863+
},
2864+
{
2865+
"include": "#sync-statement"
2866+
},
2867+
{
2868+
"include": "#event-statement"
2869+
},
2870+
{
2871+
"include": "#form-team-statement"
2872+
},
2873+
{
2874+
"include": "#fail-image-statement"
2875+
}
2876+
]
2877+
},
2878+
"sync-all-statement": {
2879+
"comment": "Introduced in the Fortran 2018 standard.",
2880+
"name": "meta.statement.sync-all.fortran",
2881+
"begin": "(?i)\\b(sync all)(\\s*(?=\\())?",
2882+
"beginCaptures": {
2883+
"1": {
2884+
"name": "keyword.control.sync-all.fortran"
2885+
},
2886+
"2": {
2887+
"name": "punctuation.parentheses.left.fortran"
2888+
}
2889+
},
2890+
"end": "(?<!\\G)",
2891+
"endCaptures": {
2892+
"1": {
2893+
"name": "punctuation.parentheses.right.fortran"
2894+
}
2895+
},
2896+
"patterns": [
2897+
{
2898+
"include": "#parentheses-dummy-variables"
2899+
}
2900+
]
2901+
},
2902+
"sync-statement": {
2903+
"comment": "Introduced in the Fortran 2018 standard.",
2904+
"name": "meta.statement.sync.fortran",
2905+
"begin": "(?i)\\b(sync images|sync memory|sync team)\\s*(?=\\()",
2906+
"beginCaptures": {
2907+
"1": {
2908+
"name": "keyword.control.sync.fortran"
2909+
},
2910+
"2": {
2911+
"name": "punctuation.parentheses.left.fortran"
2912+
}
2913+
},
2914+
"end": "(?<!\\G)",
2915+
"endCaptures": {
2916+
"1": {
2917+
"name": "punctuation.parentheses.right.fortran"
2918+
}
2919+
},
2920+
"patterns": [
2921+
{
2922+
"include": "#parentheses-dummy-variables"
2923+
}
2924+
]
2925+
},
2926+
"event-statement": {
2927+
"comment": "Introduced in the Fortran 2018 standard.",
2928+
"name": "meta.statement.event.fortran",
2929+
"begin": "(?i)\\b(event post|event wait)\\s*(?=\\()",
2930+
"beginCaptures": {
2931+
"1": {
2932+
"name": "keyword.control.event.fortran"
2933+
},
2934+
"2": {
2935+
"name": "punctuation.parentheses.left.fortran"
2936+
}
2937+
},
2938+
"end": "(?<!\\G)",
2939+
"endCaptures": {
2940+
"1": {
2941+
"name": "punctuation.parentheses.right.fortran"
2942+
}
2943+
},
2944+
"patterns": [
2945+
{
2946+
"include": "#parentheses-dummy-variables"
2947+
}
2948+
]
2949+
},
2950+
"form-team-statement": {
2951+
"comment": "Introduced in the Fortran 2018 standard.",
2952+
"name": "meta.statement.form-team.fortran",
2953+
"begin": "(?i)\\b(form team)\\s*(?=\\()",
2954+
"beginCaptures": {
2955+
"1": {
2956+
"name": "keyword.control.form-team.fortran"
2957+
},
2958+
"2": {
2959+
"name": "punctuation.parentheses.left.fortran"
2960+
}
2961+
},
2962+
"end": "(?<!\\G)",
2963+
"endCaptures": {
2964+
"1": {
2965+
"name": "punctuation.parentheses.right.fortran"
2966+
}
2967+
},
2968+
"patterns": [
2969+
{
2970+
"include": "#parentheses-dummy-variables"
2971+
}
2972+
]
2973+
},
2974+
"fail-image-statement": {
2975+
"comment": "Introduced in the Fortran 2018 standard.",
2976+
"name": "meta.statement.fail-image.fortran",
2977+
"begin": "(fail image)",
2978+
"beginCaptures": {
2979+
"1": {
2980+
"name": "keyword.control.fail-image.fortran"
2981+
}
2982+
}
2983+
},
28562984
"execution-statements": {
28572985
"patterns": [
28582986
{
@@ -5667,4 +5795,4 @@
56675795
]
56685796
}
56695797
}
5670-
}
5798+
}

0 commit comments

Comments
 (0)