php-internal-docs 8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
dtoa.c File Reference
#include "lexbor/core/str.h"
#include "lexbor/core/diyfp.h"
#include "lexbor/core/dtoa.h"
#include <math.h>
#include <string.h>

Go to the source code of this file.

Functions

lxb_inline void lexbor_grisu2_round (lxb_char_t *start, size_t len, uint64_t delta, uint64_t rest, uint64_t ten_kappa, uint64_t wp_w)
 
lxb_inline int lexbor_dec_count (uint32_t n)
 
lxb_inline size_t lexbor_grisu2_gen (lexbor_diyfp_t W, lexbor_diyfp_t Mp, uint64_t delta, lxb_char_t *begin, lxb_char_t *end, int *dec_exp)
 
lxb_inline lexbor_diyfp_t lexbor_diyfp_normalize_boundary (lexbor_diyfp_t v)
 
lxb_inline void lexbor_diyfp_normalize_boundaries (lexbor_diyfp_t v, lexbor_diyfp_t *minus, lexbor_diyfp_t *plus)
 
lxb_inline size_t lexbor_grisu2 (double value, lxb_char_t *begin, lxb_char_t *end, int *dec_exp)
 
lxb_inline size_t lexbor_write_exponent (int exp, lxb_char_t *begin, lxb_char_t *end)
 
lxb_inline size_t lexbor_prettify (lxb_char_t *begin, lxb_char_t *end, size_t len, int dec_exp)
 
size_t lexbor_dtoa (double value, lxb_char_t *begin, size_t len)
 

Function Documentation

◆ lexbor_dec_count()

lxb_inline int lexbor_dec_count ( uint32_t n)

Definition at line 61 of file dtoa.c.

◆ lexbor_diyfp_normalize_boundaries()

lxb_inline void lexbor_diyfp_normalize_boundaries ( lexbor_diyfp_t v,
lexbor_diyfp_t * minus,
lexbor_diyfp_t * plus )

Definition at line 193 of file dtoa.c.

◆ lexbor_diyfp_normalize_boundary()

lxb_inline lexbor_diyfp_t lexbor_diyfp_normalize_boundary ( lexbor_diyfp_t v)

Definition at line 182 of file dtoa.c.

◆ lexbor_dtoa()

size_t lexbor_dtoa ( double value,
lxb_char_t * begin,
size_t len )

Definition at line 368 of file dtoa.c.

◆ lexbor_grisu2()

lxb_inline size_t lexbor_grisu2 ( double value,
lxb_char_t * begin,
lxb_char_t * end,
int * dec_exp )

Definition at line 216 of file dtoa.c.

◆ lexbor_grisu2_gen()

lxb_inline size_t lexbor_grisu2_gen ( lexbor_diyfp_t W,
lexbor_diyfp_t Mp,
uint64_t delta,
lxb_char_t * begin,
lxb_char_t * end,
int * dec_exp )

Definition at line 77 of file dtoa.c.

◆ lexbor_grisu2_round()

lxb_inline void lexbor_grisu2_round ( lxb_char_t * start,
size_t len,
uint64_t delta,
uint64_t rest,
uint64_t ten_kappa,
uint64_t wp_w )

Definition at line 48 of file dtoa.c.

◆ lexbor_prettify()

lxb_inline size_t lexbor_prettify ( lxb_char_t * begin,
lxb_char_t * end,
size_t len,
int dec_exp )

Definition at line 278 of file dtoa.c.

◆ lexbor_write_exponent()

lxb_inline size_t lexbor_write_exponent ( int exp,
lxb_char_t * begin,
lxb_char_t * end )

Definition at line 238 of file dtoa.c.