Ruby: include/ruby/missing.h File Reference

Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)

Data Structures | Macros | Functions | Variables
missing.h File Reference

Prototype for *.c in ./missing, and for missing timeval struct. More...

`#include "ruby/internal/config.h"`
`#include <cmath>`
`#include "ruby/internal/dllexport.h"`

Go to the source code of this file.

## Data Structures
struct | timeval
struct | timespec
struct | timezone
union | bytesequence4_or_float

## Macros
#define | M_PI 3.14159265358979323846
#define | M_PI_2 (M_PI/2)
#define | INFINITY (rb_infinity.float_value)
#define | USE_RB_INFINITY 1
#define | NAN (rb_nan.float_value)
#define | USE_RB_NAN 1
#define | HUGE_VAL ((double)INFINITY)
#define | HAVE_ISFINITE 1
#define | isfinite(x) finite(x)

## Functions
double | acosh (double)
double | asinh (double)
double | atanh (double)
char * | crypt (const char *, const char *)
int | dup2 (int, int)
int | eaccess (const char *, int)
double | round (double)
int | finite (double)
int | flock (int, int)
double | hypot (double, double)
double | erf (double)
double | erfc (double)
double | tgamma (double)
double | lgamma_r (double, int *)
double | cbrt (double)
double | nan (const char *)
double | nextafter (double x, double y)
void * | memmove (void *, const void *, size_t)
char * | strchr (const char *, int)
char * | strrchr (const char *, int)
char * | strerror (int)
char * | strstr (const char *, const char *)
size_t | strlcpy (char *, const char *, size_t)
size_t | strlcat (char *, const char *, size_t)
int | signbit (double x)
int | ffs (int)
void | setproctitle (const char *fmt,...)
void | explicit_bzero (void *b, size_t len)

## Variables
const union bytesequence4_or_float | rb_infinity
const union bytesequence4_or_float | rb_nan

## Detailed Description

Prototype for *.c in ./missing, and for missing timeval struct.

Author
  $Author$

Date
  Sat May 11 23:46:03 JST 2002

Copyright
  This file is a part of the programming language Ruby. Permission is hereby granted, to either redistribute and/or modify this file, provided that the conditions mentioned in the file COPYING are met. Consult the file for details.

Definition in file missing.h.

## Macro Definition Documentation

## ◆ HAVE_ISFINITE

#define HAVE_ISFINITE 1

Definition at line 186 of file missing.h.

## ◆ HUGE_VAL

#define HUGE_VAL ((double)INFINITY)

Definition at line 156 of file missing.h.

## ◆ INFINITY

#define INFINITY (rb_infinity.float_value)

Definition at line 144 of file missing.h.

## ◆ isfinite

#define isfinite | ( |  | x | ) | finite(x)

Definition at line 187 of file missing.h.

## ◆ M_PI

#define M_PI 3.14159265358979323846

Definition at line 44 of file missing.h.

## ◆ M_PI_2

#define M_PI_2 (M_PI/2)

Definition at line 47 of file missing.h.

## ◆ NAN

#define NAN (rb_nan.float_value)

Definition at line 151 of file missing.h.

## ◆ USE_RB_INFINITY

#define USE_RB_INFINITY 1

Definition at line 145 of file missing.h.

## ◆ USE_RB_NAN

#define USE_RB_NAN 1

Definition at line 152 of file missing.h.

## Function Documentation

## ◆ acosh()

double acosh | ( | double | x | ) |

Definition at line 36 of file acosh.c.

References BIG_CRITERIA.

## ◆ asinh()

double asinh | ( | double | x | ) |

Definition at line 52 of file acosh.c.

References BIG_CRITERIA, DBL_MANT_DIG, neg, and SMALL_CRITERIA.

## ◆ atanh()

double atanh | ( | double | x | ) |

Definition at line 75 of file acosh.c.

References isinf(), neg, and SMALL_CRITERIA.

## ◆ cbrt()

double cbrt | ( | double | x | ) |

Definition at line 4 of file cbrt.c.

## ◆ crypt()

char * crypt | ( | const char * | ,
|  | const char * |
| ) |  |

## ◆ dup2()

int dup2 | ( | int | fd1,
|  | int | fd2
| ) |  |

Definition at line 27 of file dup2.c.

References BADEXIT, F_DUPFD, and fcntl().

Referenced by goruby_options(), main(), rb_cloexec_dup2(), and rb_w32_dup2().

## ◆ eaccess()

int eaccess | ( | const char * | path,
|  | int | mode
| ) |  |

Definition at line 1529 of file file.c.

References access, getegid(), geteuid(), getgid(), getuid(), S_IXUGO, STAT, stat, and X_OK.

## ◆ erf()

double erf | ( | double | x | ) |

Definition at line 71 of file erf.c.

References finite(), isnan, and LOG_PI_OVER_2.

## ◆ erfc()

double erfc | ( | double | x | ) |

Definition at line 81 of file erf.c.

References finite(), isnan, and LOG_PI_OVER_2.

## ◆ explicit_bzero()

void explicit_bzero | ( | void * | b,
|  | size_t | len
| ) |  |

Definition at line 77 of file explicit_bzero.c.

References len.

Referenced by Init_RandomSeedCore().

## ◆ ffs()

int ffs | ( | int | arg | ) |

Definition at line 6 of file ffs.c.

References int().

Referenced by rb_str_format().

## ◆ finite()

int finite | ( | double | n | ) |

Definition at line 6 of file finite.c.

References isinf(), and isnan.

Referenced by erf(), and erfc().

## ◆ flock()

int flock | ( | int | fd,
|  | int | operation
| ) |  |

Definition at line 125 of file flock.c.

## ◆ hypot()

double hypot | ( | double | x,
|  | double | y
| ) |  |

Definition at line 6 of file hypot.c.

## ◆ lgamma_r()

double lgamma_r | ( | double | x,
|  | int * | signp
| ) |  |

Definition at line 63 of file lgamma_r.c.

References f, HUGE_VAL, LOG_PI, PI, and signbit().

Referenced by tgamma().

## ◆ memmove()

void * memmove | ( | void * | d,
|  | const void * | s,
|  | size_t | n
| ) |  |

Definition at line 7 of file memmove.c.

Referenced by ffi_prep_args(), ffi_v9_layout_struct(), gzvprintf(), rb_str_drop_bytes(), rb_w32_fdclr(), rb_w32_strerror(), and rotate().

## ◆ nan()

double nan | ( | const char * | spec | ) |

Definition at line 7 of file nan.c.

References assert, free, len, malloc, NAN, NULL, snprintf, and strtod.

Referenced by Init_Numeric(), rb_int_fdiv_double(), rb_rational_pow(), and VpGetDoubleNaN().

## ◆ nextafter()

double nextafter | ( | double | x,
|  | double | y
| ) |  |

Definition at line 9 of file nextafter.c.

References DBL_EPSILON, DBL_MANT_DIG, DBL_MAX, DBL_MIN, DBL_MIN_EXP, isinf(), and isnan.

## ◆ round()

double round | ( | double | x | ) |

Definition at line 92 of file numeric.c.

References f.

Referenced by rb_float_pow().

## ◆ setproctitle()

void setproctitle | ( | const char * | fmt,
|  |  | ...
| ) |  |

Definition at line 139 of file setproctitle.c.

References len, NULL, SPT_PADCHAR, strlcpy(), strlen(), and vsnprintf.

## ◆ signbit()

int signbit | ( | double | x | ) |

Definition at line 5 of file signbit.c.

References CHAR_BIT, and long().

Referenced by lgamma_r().

## ◆ strchr()

char * strchr | ( | const char * | s,
|  | int | c
| ) |  |

Definition at line 8 of file strchr.c.

References strlen().

## ◆ strerror()

char * strerror | ( | int | error | ) |

Definition at line 11 of file strerror.c.

References error(), snprintf, and sys_errlist.

Referenced by dln_load(), gunzip(), gzip_normalize(), rb_bug_errno(), rb_maygvl_fd_fix_cloexec(), rb_threadptr_root_fiber_setup(), and rb_w32_strerror().

## ◆ strlcat()

size_t strlcat | ( | char * | dst,
|  | const char * | src,
|  | size_t | dsize
| ) |  |

Definition at line 31 of file strlcat.c.

References strlen().

Referenced by rb_file_expand_path_internal().

## ◆ strlcpy()

size_t strlcpy | ( | char * | dst,
|  | const char * | src,
|  | size_t | dsize
| ) |  |

Definition at line 29 of file strlcpy.c.

Referenced by rb_w32_strerror(), and setproctitle().

## ◆ strrchr()

char * strrchr | ( | const char * | s,
|  | int | c
| ) |  |

Definition at line 20 of file strchr.c.

References strlen().

## ◆ strstr()

char * strstr | ( | const char * | haystack,
|  | const char * | needle
| ) |  |

Definition at line 8 of file strstr.c.

References strlen().

## ◆ tgamma()

double tgamma | ( | double | x | ) |

Definition at line 66 of file tgamma.c.

References domain_error, f, HUGE_VAL, isinf(), lgamma_r(), and PI.

## Variable Documentation

## ◆ rb_infinity

const union bytesequence4_or_float rb_infinity
| extern

Definition at line 78 of file numeric.c.

## ◆ rb_nan

const union bytesequence4_or_float rb_nan
| extern

Definition at line 85 of file numeric.c.