Packages
orb
0.0.26
0.2.2
0.2.1
0.2.0
0.1.1
0.1.0
0.0.51
0.0.49
0.0.48
0.0.47
0.0.46
0.0.45
0.0.44
0.0.43
0.0.42
0.0.41
0.0.40
0.0.39
0.0.38
0.0.37
0.0.36
0.0.35
0.0.34
0.0.33
0.0.32
0.0.31
0.0.30
0.0.28
0.0.27
0.0.26
0.0.25
0.0.24
0.0.23
0.0.22
0.0.21
0.0.20
0.0.19
0.0.18
0.0.17
0.0.16
0.0.15
0.0.14
0.0.13
0.0.12
retired
0.0.11
0.0.10
0.0.9
0.0.8
0.0.7
0.0.6
0.0.5
0.0.4
0.0.3
0.0.2
0.0.1
DSL for WebAssembly
Current section
Files
Jump to
Current section
Files
lib/orb/u32.ex
defmodule Orb.U32 do
@moduledoc false
defmodule DSL do
@moduledoc """
Unsigned 32-bit integer operators.
Some operators like division have two variations in WebAssembly: signed and unsigned. By default math perform signed operations, but if you want unsigned math you can pass `U32` to `Orb.wasm/2` like so: `wasm U32 do`.
"""
import Kernel, except: [/: 2, ===: 2, !==: 2, <=: 2, >=: 2]
def left / right do
Orb.I32.div_u(left, right)
end
def left >>> right do
Orb.I32.shr_u(left, right)
end
def left < right do
Orb.I32.lt_u(left, right)
end
def left > right do
Orb.I32.gt_u(left, right)
end
def left <= right do
Orb.I32.le_u(left, right)
end
def left >= right do
Orb.I32.ge_u(left, right)
end
end
end