bit32.extract

bit32.extract(n: number, f: number, w: number) : integer|number

Extracts bits of n at position f with a width of w, and returns the resulting integer. w defaults to 1, so a two-argument version of extract returns the bit value at position f. Bits are indexed starting at 0. Errors if f and f+w-1 are not between 0 and 31.

Example

bit32.extract(11, 7, 0)
{
  "def": "func",
  "name": "extract",
  "energy": 0,
  "pure": true,
  "sleep": 0,
  "signatures": [
    {
      "result": [
        {
          "name": "",
          "def": "result",
          "desc": "",
          "variadic": false,
          "type": [
            "integer"
          ],
          "optional": false
        }
      ],
      "args": [
        {
          "def": "arg",
          "name": "n",
          "desc": "",
          "type": [
            "integer"
          ],
          "variadic": false,
          "optional": false
        },
        {
          "def": "arg",
          "name": "f",
          "desc": "",
          "type": [
            "integer"
          ],
          "variadic": false,
          "optional": false
        },
        {
          "def": "arg",
          "name": "w",
          "desc": "",
          "type": [
            "integer"
          ],
          "variadic": false,
          "optional": false
        }
      ]
    },
    {
      "result": [
        {
          "name": "",
          "def": "result",
          "desc": "",
          "variadic": false,
          "type": [
            "number"
          ],
          "optional": false
        }
      ],
      "args": [
        {
          "def": "arg",
          "name": "n",
          "desc": "",
          "type": [
            "integer",
            "number"
          ],
          "variadic": false,
          "optional": false
        },
        {
          "def": "arg",
          "name": "f",
          "desc": "",
          "type": [
            "integer",
            "number"
          ],
          "variadic": false,
          "optional": false
        },
        {
          "def": "arg",
          "name": "w",
          "desc": "",
          "type": [
            "integer",
            "number"
          ],
          "variadic": false,
          "optional": false
        }
      ]
    }
  ],
  "desc": "Extracts bits of `n` at position `f` with `a` width of `w`, and returns the resulting integer.\n`w` defaults to 1, so a two-argument version of extract returns the bit value at position `f`.\nBits are indexed starting at `0`.\nErrors if `f` and `f+w-1` are not between `0` and `31`.",
  "link": "https://luau.org/library#bit32-library#:~:text=function%20bit32.extract"
}

< Back to bit32