std:mie リファレンス
@import 'std:mie' で取得する mie ソース解析モジュール。処理系と同じ規則の意味分類スパン (highlight) を返す。内部表現 (トークン列・AST) は公開しない。
highlight
highlight(src)
highlight: { String | List({ start, end, kind |}) }
src (mie ソース文字列) の意味分類スパンの List を返す。スパンは
{ start, end, kind |} で [start, end) はバイト区間 (ソースは ASCII 限定の
ため桁と一致)。start < end・重なりなし・start 昇順・改行をまたがない。
区間外は無分類。kind の語彙は comment / string / number / bool / at /
slot / local / inner / builtin / type (将来追加されうる)。字句層は常に
付き、意味層 (識別子分類) はパース成功時のみ上書きされる。
>>> mie.highlight "1 + 2" [{ start=0, end=1, kind="number" |}, { start=4, end=5, kind="number" |}]