Bond 0.9
Bond Standard Library API Documentation
Loading...
Searching...
No Matches
Bond Namespace Reference

Namespaces

namespace  IO

Classes

struct  Collector
struct  InputStream
 An abstract interface for performing both unformatted and formatted input operations. More...
struct  OutputStream
 An abstract interface for performing both unformatted and formatted output operations. More...

Functions

InputStreamStdIn ()
 Returns the virtual machine's standard input stream.
OutputStreamStdOut ()
 Returns the virtual machine's standard output stream.
OutputStreamStdErr ()
 Returns the virtual machine's standard error stream.
InputStreamCreateInputStream (const char *fileName)
InputStreamCreateInputStreamCollected (const char *fileName)
InputStreamCreateInputStreamWithCollector (Collector *collector, const char *fileName)
void FreeInputStream (InputStream *stream)
OutputStreamCreateOutputStream (const char *fileName)
OutputStreamCreateOutputStreamCollected (const char *fileName)
OutputStreamCreateOutputStreamWithCollector (Collector *collector, const char *fileName)
void FreeOutputStream (OutputStream *stream)
double Sin (double x)
 Returns the sine of an angle in radians.
float Sinf (float x)
 Returns the sine of an angle in radians.
double Cos (double x)
 Returns the cosine of an angle in radians.
float Cosf (float x)
 Returns the cosine of an angle in radians.
double Tan (double x)
 Returns the tangent of an angle in radians.
float Tanf (float x)
 Returns the tangent of an angle in radians.
double Asin (double x)
 Returns the arcsine in radians of a value.
float Asinf (float x)
 Returns the arcsine in radians of a value.
double Acos (double x)
 Returns the arccosine in radians of a value.
float Acosf (float x)
 Returns the arccosine in radians of a value.
double Atan (double x)
 Returns the arctangent in radians of a value.
float Atanf (float x)
 Returns the arctangent in radians of a value.
double Atan2 (double y, double x)
 Returns the arctangent in radians of y/x.
float Atan2f (float y, float x)
 Returns the arctangent in radians of y/x.
double Sinh (double x)
 Returns the hyperbolic sine of a hyperbolic angle.
float Sinhf (float x)
 Returns the hyperbolic sine of a hyperbolic angle.
double Cosh (double x)
 Returns the hyperbolic cosine of a hyperbolic angle.
double Coshf (float x)
 Returns the hyperbolic cosine of a hyperbolic angle.
double Tanh (double x)
 Returns the hyperbolic tangent of a hyperbolic angle.
float Tanhf (float x)
 Returns the hyperbolic tangent of a hyperbolic angle.
double Asinh (double x)
 Returns the inverse hyperbolic sine of a value.
float Asinhf (float x)
 Returns the inverse hyperbolic sine of a value.
double Acosh (double x)
 Returns the inverse hyperbolic cosine of a value.
float Acoshf (float x)
 Returns the inverse hyperbolic cosine of a value.
double Atanh (double x)
 Returns the inverse hyperbolic tangent of a value.
float Atanhf (float x)
 Returns the inverse hyperbolic tangent of a value.
double Exp (double x)
 Returns e raised to an exponent.
float Expf (float x)
 Returns e raised to an exponent.
double Exp2 (double x)
 Returns 2 raised to an exponent.
float Exp2f (float x)
 Returns 2 raised to an exponent.
double Log (double x)
 Returns the natural logarithm of a value.
float Logf (float x)
 Returns the natural logarithm of a value.
double Log2 (double x)
 Returns the base-2 logarithm of a value.
float Log2f (float x)
 Returns the base-2 logarithm of a value.
double Log10 (double x)
 Returns the base-10 logarithm of a value.
float Log10f (float x)
 Returns the base-10 logarithm of a value.
double Pow (double base, double exponent)
 Returns a base value raised to an exponent.
float Powf (float base, float exponent)
 Returns a base value raised to an exponent.
double Sqrt (double x)
 Returns the square root of a value.
float Sqrtf (float x)
 Returns the square root of a value.
double Cbrt (double x)
 Returns the cube root of a value.
float Cbrtf (float x)
 Returns the cube root of a value.
double Hypot (double x, double y)
 Returns the hypotenuse of a right-angled triangle with sides of the given lengths.
float Hypotf (float x, float y)
 Returns the hypotenuse of a right-angled triangle with sides of the given lengths.
double Ceil (double x)
 Returns a value rounded upward.
float Ceilf (float x)
 Returns a value rounded upward.
double Floor (double x)
 Returns a value rounded downward.
float Floorf (float x)
 Returns a value rounded downward.
double Trunc (double x)
 Returns a value rounded toward zero.
float Truncf (float x)
 Returns a value rounded toward zero.
double Fabs (double x)
 Returns the absolute value of a value.
float Fabsf (float x)
 Returns the absolute value of a value.
double Ldexp (double x, int exp)
 Returns a value multiplied by 2 raised to an exponent.
float Ldexpf (float x, int exp)
 Returns a value multiplied by 2 raised to an exponent.
double Frexp (double x, int *exp)
 Decomposes a value into a fraction and an integral power of two.
float Frexpf (float x, int *exp)
 Decomposes a value into a fraction and an integral power of two.
double Modf (double x, double *ip)
 Decomposes a value into its integral and fractional parts.
float Modff (float x, float *ip)
 Decomposes a value into its integral and fractional parts.
double Fmod (double x, double y)
 Returns the remainder of x/y rounded toward zero.
float Fmodf (float x, float y)
 Returns the remainder of x/y rounded toward zero.
double CopySign (double x, double y)
 Returns a value with the magnitude of one and the sign of another.
float CopySignf (float x, float y)
 Returns a value with the magnitude of one and the sign of another.
double NaN ()
 Returns a value representing Not-a-Number.
float NaNf ()
 Returns a value representing Not-a-Number.
CollectorGetCollector ()
void * Allocate (ulong size)
void * AllocateCollected (ulong size)
void * AllocateWithCollector (Collector *collector, ulong size)
void * AllocateAligned (ulong size, uint alignment)
void * AllocateAlignedCollected (ulong size, uint alignment)
void * AllocateAlignedWithCollector (Collector *collector, ulong size, uint alignment)
void Free (void *ptr)
void FreeAligned (void *ptr)
void Memcpy (void *dest, void *src, ulong size)
uint Strlen (const char *str)
 Returns the length of a string.
int Strcmp (const char *str1, const char *str2)
bool TryParseInt (const char *str, int *result)
bool TryParseLong (const char *str, long *result)
bool TryParseFloat (const char *str, int *result)
bool TryParseDouble (const char *str, int *result)
bool IsAlnum (int c)
 Returns whether a character is alphanumeric (i.e. a decimal digit or an upper or lower case letter).
bool IsAlpha (int c)
 Returns whether a character is alphabetic (.i.e. an upper or lower case letter).
bool IsBlank (int c)
 Returns whether a character is a whitespace character used for separating words in a sentence.
bool IsCntrl (int c)
 Returns whether a character is a control character (i.e. a non-printable character).
bool IsDigit (int c)
 Returns whether a character is a decimal digit.
bool IsGraph (int c)
 Returns whether a character has a graphical representation (i.e. it is printable and is not a space).
bool IsLower (int c)
 Returns whether a character is a lower case letter.
bool IsPrint (int c)
 Returns whether a character is a printable character (i.e. it occupies space on a display).
bool IsPunct (int c)
 Returns whether a character is a punctuation character.
bool IsSpace (int c)
 Returns whether a character is a whitespace character.
bool IsUpper (int c)
 Returns whether a character is an upper case letter.
bool IsXDigit (int c)
 Returns whether a character is a hexadecimal digit character. (i.e. the digits 0 through 9 and upper and lower case letters A through F).
int ToLower (int c)
 Returns an upper case letter converted to lower case. If the given character is not an upper case letter, it is returned unchanged.
int ToUpper (int c)
 Returns lower case letter converted to upper case. If the given character is not a lower case letter, it is returned unchanged.

Variables

const double PI = 3.14159265358979323846
 The value of pi as a double.
const float PI_F = cast<float>(PI)
 The value of pi as a float.
const double HALF_PI = PI / 2.0
 The value of pi/2 as a double.
const float HALF_PI_F = cast<float>(HALF_PI)
 The value of pi/2 as a float.
const double TWO_PI = PI * 2.0
 The value of 2pi as a double.
const float TWO_PI_F = cast<float>(TWO_PI)
 The value of 2pi as a float.