3
V'ícC ã ¬ @ sf d Z ddlmZmZmZmZ ddlmZmZm Z m
Z
mZmZm
Z
mZ dgZdÄZdÅZG dÂd deZdÃS )Æa
pygments.lexers.webassembly
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Lexers for the WebAssembly text format.
The grammar can be found at https://github.com/WebAssembly/spec/blob/master/interpreter/README.md
and https://webassembly.github.io/spec/core/text/.
:copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
é )Ú
RegexLexerÚwordsÚbygroupsÚdefault)ÚTextÚCommentÚOperatorÚKeywordÚStringÚNumberÚPunctuationÚNameÚWatLexerÚmoduleÚimportÚfuncÚfuncrefÚstartÚparamÚlocalÚtypeÚresultÚexportÚmemoryÚglobalÚmutÚdataÚtableÚelemÚifÚthenÚelseÚendÚblockÚloopÚunreachableÚnopÚbrÚbr_ifÚbr_tableÚreturnÚcallÚ
call_indirectÚdropÚselectú local.getú local.setú local.teeú
global.getú
global.setúi32.loadúi64.loadúf32.loadúf64.loadúi32.load8_súi32.load8_uúi32.load16_súi32.load16_uúi64.load8_súi64.load8_uúi64.load16_súi64.load16_uúi64.load32_súi64.load32_uú i32.storeú i64.storeú f32.storeú f64.storeú
i32.store8úi32.store16ú
i64.store8úi64.store16úi64.store32úmemory.sizeúmemory.growú i32.constú i64.constú f32.constú f64.constúi32.eqzúi32.eqúi32.neúi32.lt_súi32.lt_uúi32.gt_súi32.gt_uúi32.le_súi32.le_uúi32.ge_súi32.ge_uúi64.eqzúi64.eqúi64.neúi64.lt_súi64.lt_uúi64.gt_súi64.gt_uúi64.le_súi64.le_uúi64.ge_súi64.ge_uúf32.eqúf32.neúf32.ltúf32.gtúf32.leúf32.geúf64.eqúf64.neúf64.ltúf64.gtúf64.leúf64.geúi32.clzúi32.ctzú
i32.popcntúi32.addúi32.subúi32.mulú i32.div_sú i32.div_uú i32.rem_sú i32.rem_uúi32.andúi32.orúi32.xorúi32.shlú i32.shr_sú i32.shr_uúi32.rotlúi32.rotrúi64.clzúi64.ctzú
i64.popcntúi64.addúi64.subúi64.mulú i64.div_sú i64.div_uú i64.rem_sú i64.rem_uúi64.andúi64.orúi64.xorúi64.shlú i64.shr_sú i64.shr_uúi64.rotlúi64.rotrúf32.absúf32.negúf32.ceilú f32.floorú f32.truncúf32.nearestúf32.sqrtúf32.addúf32.subúf32.mulúf32.divúf32.minúf32.maxúf32.copysignúf64.absúf64.negúf64.ceilú f64.floorú f64.truncúf64.nearestúf64.sqrtúf64.addúf64.subúf64.mulúf64.divúf64.minúf64.maxúf64.copysignúi32.wrap_i64úi32.trunc_f32_súi32.trunc_f32_uúi32.trunc_f64_súi32.trunc_f64_uúi64.extend_i32_súi64.extend_i32_uúi64.trunc_f32_súi64.trunc_f32_uúi64.trunc_f64_súi64.trunc_f64_uúf32.convert_i32_súf32.convert_i32_uúf32.convert_i64_súf32.convert_i64_uúf32.demote_f64úf64.convert_i32_súf64.convert_i32_uúf64.convert_i64_súf64.convert_i64_uúf64.promote_f32úi32.reinterpret_f32úi64.reinterpret_f64úf32.reinterpret_i32úf64.reinterpret_i64c @ s e Zd ZdZdZdZddgZddgZee dd e
feeej
d
feddd
dge
jfdejfdejfdejdfdejfdejfdejfdejfdejfdejfdejfdefdejdfdefgdejdfdejd fd!ejfd"ejfgd#ejfd$ejfd%ejfd&ejfd'ejfd(ejfd)ejfd*ejfdejd fd+ejfg
defd,ee
eejfd-ee
eejfd.ee
eejfd/ee
eejfed gd0Zd1S )2r zFLexer for the WebAssembly text format.
.. versionadded:: 2.9
ZWebAssemblyzhttps://webassembly.org/ZwastZwatz*.watz*.wastz
(?=[^a-z_\.]))ÚsuffixÚ argumentsZi32Zi64Zf32Zf64z'\$[A-Za-z0-9!#$%&\'*+./:<=>?@\\^_`|~-]+z;;.*?$z\(;Únesting_commentze[+-]?0x[\dA-Fa-f](_?[\dA-Fa-f])*(.([\dA-Fa-f](_?[\dA-Fa-f])*)?)?([pP][+-]?[\dA-Fa-f](_?[\dA-Fa-f])*)?z#[+-]?\d.\d(_?\d)*[eE][+-]?\d(_?\d)*z[+-]?\d.\d(_?\d)*z[+-]?\d.[eE][+-]?\d(_?\d)*z.[+-]?(inf|nan:0x[\dA-Fa-f](_?[\dA-Fa-f])*|nan)z [+-]?0x[\dA-Fa-f](_?[\dA-Fa-f])*z[+-]?\d(_?\d)*z[\(\)]ú"Ústringz\s+z#pushz;\)z#popz[^;(]+z[;(]z\\[\dA-Fa-f][\dA-Fa-f]z\\tz\\nz\\rz\\"z\\'z \\u\{[\dA-Fa-f](_?[\dA-Fa-f])*\}z\\\\z[^"\\]+z((offset)(=)(0x[\dA-Fa-f](_?[\dA-Fa-f])*)z(offset)(=)(\d(_?\d)*)z'(align)(=)(0x[\dA-Fa-f](_?[\dA-Fa-f])*)z(align)(=)(\d(_?\d)*))ÚrootrÎ rÐ rÍ N) Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ filenamesr Úkeywordsr Úbuiltinsr