Int16
The convention is to name the module alias after the file name it is defined in:
import Int16 "mo:base/Int16";
On this page
Constants
Value minimumValue
Value maximumValue
Conversion
Function toInt
Function toText
Function fromInt
Function fromIntWrap
Function fromNat16
Function toNat16
Comparison
Function min
Function max
Function equal
Function notEqual
Function less
Function lessOrEqual
Function greater
Function greaterOrEqual
Function compare
Numerical Operations
Function abs
Function neg
Function add
Function sub
Function mul
Function div
Function rem
Function pow
Bitwise Operators
Function bitnot
Function bitand
Function bitor
Function bitxor
Function bitshiftLeft
Function bitshiftRight
Function bitrotLeft
Function bitrotRight
Function bittest
Function bitset
Function bitclear
Function bitflip
Function bitcountNonZero
Function bitcountLeadingZero
Function bitcountTrailingZero
Wrapping Operations
Function addWrap
Function subWrap
Function mulWrap
Function powWrap
minimumValue
let minimumValue : Int16 = -32_768;
maximumValue
let maximumValue : Int16 = 32_767;
Int16.toInt
func toInt(i : Int16) : Int
The function toInt takes one Int16 value and returns an Int value.
import Int16 "mo:base/Int16";
let a : Int16 = -32768;
Int16.toInt(a);
Int16.toText
func toText(i : Int16) : Text
The function toText takes one Int16 value and returns a Text value.
import Int16 "mo:base/Int16";
let b : Int16 = -32768;
Int16.toText(b);
Int16.fromInt
func fromInt(i : Int) : Int16
The function fromInt takes one Int value and returns an Int16 value.
import Int16 "mo:base/Int16";
let integer : Int = -32768;
Int16.fromInt(integer);
Int16.fromIntWrap
func fromIntWrap(i : Int) : Int16
The function fromIntWrap takes one Int value and returns an Int16 value.
import Int16 "mo:base/Int16";
let integer : Int = 65535;
Int16.fromIntWrap(integer);
Int16.fromNat16
func fromNat16(i : Nat16) : Int16
The function fromNat16 takes one Nat16 value and returns an Int16 value.
import Int16 "mo:base/Int16";
let nat16 : Nat16 = 65535;
Int16.fromNat16(nat16);
Int16.toNat16
func toNat16(i : Int16) : Nat16
The function toNat16 takes one Int16 value and returns an Nat16 value.
import Int16 "mo:base/Int16";
let int16 : Int16 = -32768;
Int16.toNat16(int16);
Int16.min
func min(x : Int16, y : Int16) : Int16
The function min takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 200;
let y : Int16 = 100;
Int16.min(x, y);
Int16.max
func max(x : Int16, y : Int16) : Int16
The function max takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 200;
let y : Int16 = 100;
Int16.max(x, y);
Int16.equal
func equal(x : Int16, y : Int16) : Bool
The function equal takes two Int16 value and returns a Bool value.
import Int16 "mo:base/Int16";
let x : Int16 = 10;
let y : Int16 = 10;
Int16.equal(x, y);
Int16.notEqual
func notEqual(x : Int16, y : Int16) : Bool
The function notEqual takes two Int16 value and returns a Bool value.
import Int16 "mo:base/Int16";
let x : Int16 = 100;
let y : Int16 = 100;
Int16.notEqual(x, y);
Int16.less
func less(x : Int16, y : Int16) : Bool
The function less takes two Int16 value and returns a Bool value.
import Int16 "mo:base/Int16";
let x : Int16 = 255;
let y : Int16 = 256;
Int16.less(x, y);
Int16.lessOrEqual
func lessOrEqual(x : Int16, y : Int16) : Bool
The function lessOrEqual takes two Int16 value and returns a Bool value.
import Int16 "mo:base/Int16";
let x : Int16 = 255;
let y : Int16 = 256;
Int16.lessOrEqual(x, y);
Int16.greater
func greater(x : Int16, y : Int16) : Bool
The function greater takes two Int16 value and returns a Bool value.
import Int16 "mo:base/Int16";
let x : Int16 = 150;
let y : Int16 = 100;
Int16.greater(x, y);
Int16.greaterOrEqual
func greaterOrEqual(x : Int16, y : Int16) : Bool
The function greaterOrEqual takes two Int16 value and returns a Bool value.
import Int16 "mo:base/Int16";
let x : Int16 = 150;
let y : Int16 = 100;
Int16.greaterOrEqual(x, y);
Int16.compare
func compare(x : Int16, y : Int16) : Bool
The function compare takes two Int16 value and returns an Order variant value.
import Int16 "mo:base/Int16";
let x : Int16 = 1001;
let y : Int16 = 1000;
Int16.compare(x, y);
Int16.abs
func abs(x : Int16) : Int16
The function abs takes one Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = -40;
Int16.abs(x);
Int16.neg
func neg(x : Int16) : Int16
The function neg takes one Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = -50;
Int16.neg(x);
Int16.add
func add(x : Int16, y : Int16) : Int16
The function add takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 400;
let y : Int16 = 100;
Int16.add(x, y);
Int16.sub
func sub(x : Int16, y : Int16) : Int16
The function sub takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 400;
let y : Int16 = 200;
Int16.sub(x, y);
Int16.mul
func mul(x : Int16, y : Int16) : Int16
The function mul takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 20;
let y : Int16 = 50;
Int16.mul(x, y);
Int16.div
func div(x : Int16, y : Int16) : Int16
The function div takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 5000;
let y : Int16 = 50;
Int16.div(x, y);
Int16.rem
func rem(x : Int16, y : Int16) : Int16
The function rem takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 400;
let y : Int16 = 150;
Int16.rem(x, y);
Int16.pow
func pow(x : Int16, y : Int16) : Int16
The function pow takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 10;
let y : Int16 = 4;
Int16.pow(x, y);
Int16.bitnot
func bitnot(x : Int16) : Int16
The function bitnot takes one Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 255; // Binary : 00000000_11111111
Int16.bitnot(x) // Binary : 11111111_00000000
Int16.bitand
func bitand(x : Int16, y : Int16) : Int16
The function bitand takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 255; // Binary : 00000000_11111111
let y : Int16 = 5; // Binary : 00000000_00000101
Int16.bitand(x, y)
Int16.bitor
func bitor(x : Int16, y : Int16) : Int16
The function bitor takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 240; // Binary : 00000000_11110000
let y : Int16 = 15; // Binary : 00000000_00001111
Int16.bitor(x, y) // Binary : 00000000_11111111
Int16.bitxor
func bitxor(x : Int16, y : Int16) : Int16
The function bitxor takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 255; // Binary : 00000000_11111111
let y : Int16 = 240; // Binary : 00000000_11110000
Int16.bitxor(x, y) // Binary : 00000000_00001111
Int16.bitshiftLeft
func bitshiftLeft(x : Int16, y : Int16) : Int16
The function bitshiftLeft takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 15; // Binary : 00000000_00001111
let y : Int16 = 4;
Int16.bitshiftLeft(x, y) // Binary : 00000000_11110000
Int16.bitshiftRight
func bitshiftRight(x : Int16, y : Int16) : Int16
The function bitshiftRight takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 240; // Binary : 00000000_11110000
let y : Int16 = 4;
Int16.bitshiftRight(x, y) // Binary : 00000000_00001111
Int16.bitrotLeft
func bitrotLeft(x : Int16, y : Int16) : Int16
The function bitrotLeft takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 32767; // Binary : 01111111_11111111
let y : Int16 = 1;
Int16.bitrotLeft(x, y) // Binary : 11111111_11111110
Int16.bitrotRight
func bitrotRight(x : Int16, y : Int16) : Int16
The function bitrotRight takes two Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 32767; // Binary : 01111111_11111111
let y : Int16 = 1;
Int16.bitrotRight(x, y) // Binary : 10111111_11111111
Int16.bittest
func bittest(x : Int16, p : Nat) : Bool
The function bittest takes one Int16 and one Nat value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 255; // Binary : 00000000_11111111
let p : Nat = 7;
Int16.bittest(x, p)
Int16.bitset
func bitset(x : Int16, p : Nat) : Bool
The function bitset takes one Int16 and one Nat value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 127; // Binary : 00000000_01111111
let p : Nat = 7;
Int16.bitset(x, p) // Binary : 00000000_11111111
Int16.bitclear
func bitclear(x : Int16, p : Nat) : Bool
The function bitclear takes one Int16 and one Nat value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 255; // Binary : 00000000_11111111
let p : Nat = 7;
Int16.bitclear(x, p) // Binary : 00000000_01111111
Int16.bitflip
func bitflip(x : Int16, p : Nat) : Bool
The function bitflip takes one Int16 and one Nat value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 255; // Binary : 00000000_11111111
let p : Nat = 7;
Int16.bitflip(x, p) // Binary : 00000000_11011111
Int16.bitcountNonZero
let bitcountNonZero : (x : Int16) -> Int16
The function bitcountNonZero takes one Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 255; // Binary : 00000000_11111111
Int16.bitcountNonZero(x)
Int16.bitcountLeadingZero
let bitcountLeadingZero : (x : Int16) -> Int16
The function bitcountLeadingZero takes one Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 255; // Binary : 00000000_11111111
Int16.bitcountLeadingZero(x)
Int16.bitcountTrailingZero
let bitcountTrailingZero : (x : Int16) -> Int16
The function bitcountTrailingZero takes one Int16 value and returns a Int16 value.
import Int16 "mo:base/Int16";
let x : Int16 = 128; // Binary : 00000000_10000000
Int16.bitcountTrailingZero(x)
Int16.addWrap
func addWrap(x : Int16, y : Int16) : Int16
The function addWrap takes two Int16 value and returns a Int16 value.It is equivalent to the +% Bitwise operators.
import Int16 "mo:base/Int16";
let x : Int16 = 32767;
let y : Int16 = 2;
Int16.addWrap(x, y)
Int16.subWrap
func subWrap(x : Int16, y : Int16) : Int16
The function subWrap takes two Int16 value and returns a Int16 value.It is equivalent to the -% Bitwise operators.
import Int16 "mo:base/Int16";
let x : Int16 = -32767;
let y : Int16 = 2;
Int16.subWrap(x, y)
Int16.mulWrap
func mulWrap(x : Int16, y : Int16) : Int16
The function mulWrap takes two Int16 value and returns a Int16 value.It is equivalent to the *% Bitwise operators.
import Int16 "mo:base/Int16";
let x : Int16 = 32767;
let y : Int16 = 2;
Int16.mulWrap(x, y)
Int16.powWrap
func powWrap(x : Int16, y : Int16) : Int16
The function powWrap takes two Int16 value and returns a Int16 value.It is equivalent to the **% Bitwise operators.
import Int16 "mo:base/Int16";
let x : Int16 = 255;
let y : Int16 = 2;
Int16.powWrap(x, y)