|
php-internal-docs 8.4.8
Unofficial docs for php/php-src
|
#include <stddef.h>#include "zend.h"#include <stdbool.h>#include "zend_string.h"#include "../../php_bcmath.h"Go to the source code of this file.
Data Structures | |
| struct | bc_struct |
Macros | |
| #define | BASE 10 |
| #define | CH_VAL(c) |
| #define | BCD_CHAR(d) |
| #define | MAX(a, b) |
| #define | MIN(a, b) |
| #define | bc_add_ex(n1, n2, result, scale_min) |
| #define | bc_sub_ex(n1, n2, result, scale_min) |
| #define | bc_multiply_ex(n1, n2, result, scale_min) |
| #define | bc_new_num(length, scale) |
| #define | bc_new_num_nonzeroed(length, scale) |
| #define | bc_free_num(num) |
| #define | bc_num2str(num) |
Typedefs | |
| typedef struct bc_struct * | bc_num |
| typedef struct bc_struct | bc_struct |
Enumerations | |
| enum | sign { PLUS , MINUS } |
| enum | bcmath_compare_result { BCMATH_EQUAL = 0 , BCMATH_LEFT_GREATER = 1 , BCMATH_RIGHT_GREATER = -1 } |
| enum | raise_mod_status { OK , BASE_HAS_FRACTIONAL , EXPO_HAS_FRACTIONAL , EXPO_IS_NEGATIVE , MOD_HAS_FRACTIONAL , MOD_IS_ZERO } |
Functions | |
| void | bc_init_numbers (void) |
| void | bc_force_free_number (bc_num *num) |
| bc_num | _bc_new_num_ex (size_t length, size_t scale, bool persistent) |
| bc_num | _bc_new_num_nonzeroed_ex (size_t length, size_t scale, bool persistent) |
| void | _bc_free_num_ex (bc_num *num, bool persistent) |
| void | bc_init_num (bc_num *num) |
| bool | bc_str2num (bc_num *num, const char *str, const char *end, size_t scale, size_t *full_scale, bool auto_scale) |
| bc_num | bc_long2num (zend_long lval) |
| zend_string * | bc_num2str_ex (bc_num num, size_t scale) |
| void | bc_int2num (bc_num *num, int val) |
| long | bc_num2long (bc_num num) |
| bcmath_compare_result | bc_compare (bc_num n1, bc_num n2, size_t scale) |
| bool | bc_is_zero (bc_num num) |
| bool | bc_is_zero_for_scale (bc_num num, size_t scale) |
| bool | bc_is_near_zero (bc_num num, size_t scale) |
| bool | bc_is_neg (bc_num num) |
| void | bc_rm_trailing_zeros (bc_num num) |
| bc_num | bc_add (bc_num n1, bc_num n2, size_t scale_min) |
| bc_num | bc_sub (bc_num n1, bc_num n2, size_t scale_min) |
| bc_num | bc_multiply (bc_num n1, bc_num n2, size_t scale) |
| bc_num | bc_square (bc_num n1, size_t scale) |
| bool | bc_divide (bc_num n1, bc_num n2, bc_num *quot, size_t scale) |
| bool | bc_modulo (bc_num num1, bc_num num2, bc_num *resul, size_t scale) |
| bool | bc_divmod (bc_num num1, bc_num num2, bc_num *quo, bc_num *rem, size_t scale) |
| bc_num | bc_floor_or_ceil (bc_num num, bool is_floor) |
| void | bc_round (bc_num num, zend_long places, zend_long mode, bc_num *result) |
| raise_mod_status | bc_raisemod (bc_num base, bc_num exponent, bc_num mod, bc_num *result, size_t scale) |
| bool | bc_raise (bc_num base, long exponent, bc_num *result, size_t scale) |
| void | bc_raise_bc_exponent (bc_num base, bc_num exponent, bc_num *resul, size_t scale) |
| bool | bc_sqrt (bc_num *num, size_t scale) |
| #define bc_free_num | ( | num | ) |
| #define bc_new_num | ( | length, | |
| scale ) |
| #define bc_new_num_nonzeroed | ( | length, | |
| scale ) |
| #define bc_num2str | ( | num | ) |
| typedef struct bc_struct bc_struct |
| enum raise_mod_status |
| bc_num _bc_new_num_ex | ( | size_t | length, |
| size_t | scale, | ||
| bool | persistent ) |
| bc_num _bc_new_num_nonzeroed_ex | ( | size_t | length, |
| size_t | scale, | ||
| bool | persistent ) |
| bcmath_compare_result bc_compare | ( | bc_num | n1, |
| bc_num | n2, | ||
| size_t | scale ) |
Definition at line 21 of file floor_or_ceil.c.
| bool bc_is_near_zero | ( | bc_num | num, |
| size_t | scale ) |
Definition at line 40 of file nearzero.c.
Definition at line 23 of file long2num.c.
| long bc_num2long | ( | bc_num | num | ) |
Definition at line 40 of file num2long.c.
| zend_string * bc_num2str_ex | ( | bc_num | num, |
| size_t | scale ) |
| raise_mod_status bc_raisemod | ( | bc_num | base, |
| bc_num | exponent, | ||
| bc_num | mod, | ||
| bc_num * | result, | ||
| size_t | scale ) |
Definition at line 37 of file raisemod.c.
| bool bc_str2num | ( | bc_num * | num, |
| const char * | str, | ||
| const char * | end, | ||
| size_t | scale, | ||
| size_t * | full_scale, | ||
| bool | auto_scale ) |