Ruby: pm_integer_t Struct Reference

Ruby 3.4.3p32 (2025-04-14 revision d0b7e5b6a04bde21ca483d20a1546b28b401c2d4)

Data Fields
pm_integer_t Struct Reference

A structure represents an arbitrary-sized integer. More...

`#include <pm_integer.h>`

## Data Fields
size_t | length
| The number of allocated values.
uint32_t * | values
| List of 32-bit integers.
uint32_t | value
| Embedded value for small integer.
bool | negative
| Whether or not the integer is negative.

## Detailed Description

A structure represents an arbitrary-sized integer.

Definition at line 20 of file pm_integer.h.

## Field Documentation

## ◆ length

size_t pm_integer_t::length

The number of allocated values.

length is set to 0 if the integer fits into uint32_t.

Definition at line 25 of file pm_integer.h.

Referenced by pm_integer_compare(), pm_integer_string(), and pm_integers_reduce().

## ◆ negative

bool pm_integer_t::negative

Whether or not the integer is negative.

It is stored this way so that a zeroed pm_integer_t is always positive zero.

Definition at line 42 of file pm_integer.h.

Referenced by pm_integer_compare(), and pm_integer_string().

## ◆ value

uint32_t pm_integer_t::value

Embedded value for small integer.

This value is set to 0 if the value does not fit into uint32_t.

Definition at line 36 of file pm_integer.h.

Referenced by pm_integer_compare(), pm_integer_parse(), pm_integer_string(), and pm_integers_reduce().

## ◆ values

uint32_t* pm_integer_t::values

List of 32-bit integers.

Set to NULL if the integer fits into uint32_t.

Definition at line 30 of file pm_integer.h.

Referenced by pm_integer_compare(), pm_integer_free(), and pm_integer_string().

The documentation for this struct was generated from the following file:

- prism/util/pm_integer.h