xref: /llvm-project/mlir/utils/tree-sitter-mlir/dialect/builtin.js (revision 10f8be19e7562624c0e63872e28cc963e03e56a5)
1'use strict';
2
3module.exports = {
4  builtin_dialect : $ => prec.right(choice(
5                      // operation ::= `builtin.module` ($sym_name^)?
6                      // attr-dict-with-keyword $bodyRegion
7                      seq(choice('builtin.module', 'module'),
8                          field('name', optional($.bare_id)),
9                          field('attributes', optional($.attribute)),
10                          field('body', $.region)),
11
12                      // operation ::= `builtin.unrealized_conversion_cast`
13                      // ($inputs^ `:` type($inputs))?
14                      //                `to` type($outputs) attr-dict
15                      seq(choice('builtin.unrealized_conversion_cast',
16                                 'unrealized_conversion_cast'),
17                          field('inputs', optional($._value_use_type_list)),
18                          token('to'), field('outputs', $._type_list_no_parens),
19                          field('attributes', optional($.attribute)))))
20}
21