offbrand
A collection of generic, reference counted datastructures in C for C
 All Classes Files Functions Variables Typedefs Macros Groups
obint.h
Go to the documentation of this file.
1 
7 #ifndef OBINT_H
8 #define OBINT_H
9 
10 #include "offbrand.h"
11 #include "obstring.h"
12 
14 typedef struct obint_struct obint;
15 
16 
17 /* PUBLIC METHODS */
18 
26 obint * obint_new(int64_t num);
27 
38 int64_t obint_value(const obint *a);
39 
49 obint * obint_from_string(const obstring *numstr);
50 
59 obstring * obint_to_string(const obint *a);
60 
69 obint * obint_copy(const obint *a);
70 
80 uint8_t obint_is_zero(const obint *a);
81 
91 uint8_t obint_is_negative(const obint *a);
92 
101 obint * obint_add(const obint *a, const obint *b);
102 
112 obint * obint_add_primitive(const obint *a, int64_t b);
113 
122 obint * obint_subtract(const obint *a, const obint *b);
123 
133 obint * obint_subtract_primitive(const obint *a, int64_t b);
134 
143 obint * obint_multiply(const obint *a, const obint *b);
144 
154 obint * obint_multiply_primitive(const obint *a, int64_t b);
155 
165 obint * obint_divide(const obint *a, const obint *b);
166 
176 obint * obint_divide_primitive(const obint *a, int64_t b);
177 
187 obint * obint_mod(const obint *a, const obint *b);
188 
198 obint * obint_mod_primitive(const obint *a, int64_t b);
199 
200 #endif
201