|
AXCEL C++ Framework
Elegance through abstraction
|
#include <cstdio>#include <cstdlib>#include <cstring>#include <cstdarg>#include <cmath>#include <climits>#include <cctype>#include <deque>#include <errno.h>#include <ctime>#include <sys/types.h>#include <sys/stat.h>#include <sys/wait.h>#include <fcntl.h>#include <sys/ioctl.h>#include <poll.h>#include <unistd.h>#include <dirent.h>#include <sys/socket.h>#include <netdb.h>#include <arpa/inet.h>#include <termios.h>#include <wordexp.h>#include <signal.h>#include <pthread.h>#include <semaphore.h>#include <dlfcn.h>Go to the source code of this file.
Classes | |
| class | axcel::object |
| Common base class. More... | |
| class | axcel::io::iofmt |
| Stream format options. More... | |
| class | axcel::io::iob |
| I/O stream base. More... | |
| class | axcel::io::input |
| Input stream. More... | |
| class | axcel::io::output |
| Output stream. More... | |
| class | axcel::io::ios |
| Input/Output stream. More... | |
| class | axcel::data |
| File-like buffer. More... | |
| class | axcel::string |
| String. More... | |
| class | axcel::fs::file |
| File. More... | |
| class | axcel::net::ipaddr |
| IPv4 or IPv6 address. More... | |
| class | axcel::net::socket::tcp |
| Transmission Control Protocol socket. More... | |
| class | axcel::net::socket::udp |
| User Datagram Protocol socket. More... | |
| class | axcel::net::dgram |
| Datagram for socket::udp. More... | |
| class | axcel::timer |
| Time keeper. More... | |
| class | axcel::console |
| Console I/O and manipulation. More... | |
| class | axcel::proc::thread |
| Multithreading. More... | |
| class | axcel::proc::library |
| Dynamic library loading. More... | |
| class | axcel::proc::mutex |
| Mutex. More... | |
| class | axcel::proc::semaphore |
| Semaphore. More... | |
| class | axcel::proc::pstream |
| Pipe stdin and stdout of a process. More... | |
| class | axcel::proc::environment |
| Build an environment block. More... | |
| struct | axcel::proc::environment::p |
| class | axcel::net::irc::msg |
| IRC message. More... | |
| class | axcel::net::http::query |
| HTTP query string from a header request file. More... | |
| struct | axcel::net::http::query::svarpair |
| class | axcel::net::http::field |
| HTTP header field. More... | |
| struct | axcel::net::http::field::svarpair |
| class | axcel::net::http::request |
| HTTP header request. More... | |
| class | axcel::net::http::response |
| HTTP header response. More... | |
| class | axcel::net::http::header |
| HTTP header. More... | |
| class | axcel::exception |
| Exception class. More... | |
Namespaces | |
| namespace | axcel |
Everything. | |
| namespace | axcel::io |
Input/Output. | |
| namespace | axcel::fs |
File system. | |
| namespace | axcel::proc |
Process and runtime. | |
| namespace | axcel::net |
Network and protocols. | |
| namespace | axcel::net::socket |
Internet sockets. | |
| namespace | axcel::net::irc |
Internet Relay Chat. | |
| namespace | axcel::net::http |
Hyper Text Transfer Protocol. | |
| namespace | axcel::color |
Defines | |
| #define | use using namespace |
| #define | unless(x) if (!(x)) |
| #define | until(x) while (!(x)) |
| #define | loop() for (;;) |
| #define | crap(...) |
| #define | craps(x,...) |
| #define | warn(...) fprintf(stderr, __VA_ARGS__); |
Typedefs | |
| typedef unsigned char | uchar |
| typedef unsigned short | ushort |
| typedef unsigned int | uint |
| typedef unsigned long | ulong |
Enumerations | |
| enum | { axcel::color::black, axcel::color::red, axcel::color::green, axcel::color::yellow, axcel::color::blue, axcel::color::purple, axcel::color::aqua, axcel::color::white } |
Functions | |
| template<typename T > | |
| bool | gt (T a, T b) |
| template<typename T > | |
| bool | lt (T a, T b) |
| template<typename T > | |
| bool | eq (T a, T b) |
| template<typename T > | |
| bool | gte (T a, T b) |
| template<typename T > | |
| bool | lte (T a, T b) |
| template<typename T > | |
| bool | neq (T a, T b) |
| char * | strcpy2 (char *s1, const char *s2) |
| char * | strncpy2 (char *s1, const char *s2, size_t n) |
| const char * | strstrs (const char *src,...) |
| int | strstrc (const char *src,...) |
| time_t | axcel::axcel_timegm (struct tm *tm) |
| template<typename type > | |
| type | axcel::stoi (const char *s, int base=10) |
| string to integer | |
| template<typename type > | |
| type | axcel::stof (const char *s) |
| string to floating point | |
| template<typename type > | |
| string | axcel::itos (type t, int base=10, bool showbase=false) |
| Integer to string. | |
| template<typename type > | |
| string | axcel::ftos (type t, bool sci=false) |
| Floating-point to string. | |
| void | axcel::die (const char *format,...) |
| Print formatted string and exit. | |
| void | axcel::print (const char *s, FILE *stream=stdout) |
| Print string. | |
| void | axcel::print (int ch, FILE *stream=stdout) |
| Print character. | |
| int | axcel::rand (int min=0, int max=0) |
| Get random integer. | |
| int | axcel::rands (unsigned int seed, int min=0, int max=0) |
| Get random integer. | |
| char * | axcel::memrev (char *s, size_t size, size_t n) |
| Reverse memory block. | |
| char * | axcel::memrol (char *s, size_t size, size_t n) |
| Rotate left memory block. | |
| char * | axcel::memror (char *s, size_t size, size_t n) |
| Rotate right memory block. | |
| char * | axcel::memshl (char *s, size_t size, size_t n) |
| Shift left memory block. | |
| char * | axcel::memshr (char *s, size_t size, size_t n) |
| Shift right memory block. | |
| string | axcel::chop (const char *str) |
| Remove last character from string. | |
| string | axcel::chomp (const char *str, const char *eat="\r\n") |
| Remove existing string from end of string. | |
| string | axcel::cut (const char *str) |
| Remove first character from string. | |
| string | axcel::munch (const char *str, const char *eat) |
| Remove existing string from beginning of string. | |
| string | axcel::ltrim (const char *str) |
| Remove leading whitespace. | |
| string | axcel::rtrim (const char *str) |
| Remove trailing whitespace. | |
| string | axcel::strip (const char *str) |
| Remove leading and trailing whitespace. | |
| long | axcel::index (const char *str, const char *find) |
| Find first string. | |
| long | axcel::index (const char *str, int find) |
| Find first character. | |
| long | axcel::length (const char *str) |
| Length of string. | |
| bool | axcel::eq (const char *s1, const char *s2) |
| Compare strings. | |
| bool | axcel::sfront (const char *s1, const char *s2) |
| Compare beginning of string. | |
| bool | axcel::sback (const char *s1, const char *s2) |
| Compare end of string. | |
| string | axcel::substr (const char *str, size_t offset, size_t length) |
| Get substring. | |
| string | axcel::lc (const char *str) |
| Lowercase string. | |
| string | axcel::lcfirst (const char *str) |
| Lowercase first character. | |
| string | axcel::uc (const char *str) |
| Uppercase string. | |
| string | axcel::ucfirst (const char *str) |
| Uppercase first character. | |
| long | axcel::dec (const char *str) |
| string to decimal long int | |
| long | axcel::bin (const char *str) |
| string to binary long int | |
| long | axcel::oct (const char *str) |
| string to octal long int | |
| long | axcel::hex (const char *str) |
| string to hexadecimal long int | |
| long | axcel::rindex (const char *str, const char *find) |
| Find last string. | |
| long | axcel::rindex (const char *str, int find) |
| Find last character. | |
| unsigned short | axcel::cksum (const char *buf) |
| string checksum | |
| string | axcel::q (const char *str) |
| Single quote string. | |
| string | axcel::qq (const char *str) |
| Double quote string. | |
| string | axcel::qx (const char *exec) |
| Execute command and return io::output. | |
| string | axcel::scat (const char *s1, const char *s2) |
| Concatenate strings. | |
| string | axcel::sdup (const char *str, int x) |
| Duplicate string. | |
| string | axcel::tok (size_t index, const char *str, const char *delim=" ") |
| Extract token from string. | |
| string | axcel::tok (size_t index, const char *str, int delim) |
| Extract token from string. | |
| long | axcel::ntok (const char *str, const char *delim=" ") |
| Count string tokens. | |
| long | axcel::ntok (const char *str, int delim) |
| Count string tokens. | |
| long | axcel::itok (size_t index, const char *str, const char *delim=" ") |
| Get index of token. | |
| long | axcel::itok (size_t index, const char *str, int delim) |
| Get index of token. | |
| std::deque< axcel::string > | axcel::split (const char *str, const char *delim) |
| Split string. | |
| std::deque< axcel::string > | axcel::split (const char *str, int delim) |
| Split string. | |
| string | axcel::join (std::deque< axcel::string > v, const char *delim=" ") |
| Join string deque. | |
| string | axcel::join (std::deque< axcel::string > v, int delim) |
| Join string deque. | |
| bool | axcel::fs::cd (const char *path) |
| Change current directory. | |
| bool | axcel::fs::rm (const char *fname) |
| Remove file. | |
| bool | axcel::fs::md (const char *path) |
| Make directory. | |
| string | axcel::fs::gcd () |
| Get current directory. | |
| string | axcel::fs::ls (const char *dir=0) |
| List files. | |
| bool | axcel::fs::creat (const char *fname) |
| Create file. | |
| bool | axcel::fs::trunc (const char *fname, unsigned long len) |
| Resize file. | |
| bool | axcel::fs::rd (const char *dir, bool rmsub=1) |
| Remove directory. | |
| bool | axcel::fs::cp (const char *src, const char *dst) |
| Copy file. | |
| bool | axcel::fs::mv (const char *src, const char *dst) |
| Move file. | |
| size_t | axcel::fs::fsize (const char *fname) |
| Get file size. | |
| bool | axcel::fs::fexist (const char *fname) |
| Check if file exists. | |
| bool | axcel::fs::fisdir (const char *fname) |
| Check if file is directory. | |
| bool | axcel::fs::fisreg (const char *fname) |
| Check if file is regular file. | |
| string | axcel::fs::fread (const char *fname, size_t len=0) |
| Read from text file. | |
| size_t | axcel::fs::fread (const char *fname, char *buf, size_t len=0) |
| Read from file. | |
| data | axcel::fs::fbread (const char *fname, size_t len=0) |
| Read binary data from file. | |
| size_t | axcel::fs::fbwrite (const char *fname, data d, size_t len=0) |
| Write binary data to file. | |
| size_t | axcel::fs::fwrite (const char *fname, const char *buf, size_t len=0) |
| Write to file. | |
| size_t | axcel::fs::fcat (const char *fname, const char *buf, size_t len=0) |
| Concatenate to file. | |
| bool | axcel::fs::fcmp (const char *src, const char *dst) |
| Compare files. | |
| timer | axcel::fs::fatime (const char *fname) |
| Get file access time. | |
| timer | axcel::fs::fmtime (const char *fname) |
| Get file modification time. | |
| string | axcel::fs::tmpnam () |
| Generate temporary filename. | |
| void | axcel::proc::delay (size_t ms) |
| Sleep current thread. | |
| pid_t | axcel::proc::run (const char *program, const char *argv, void *envp) |
| Spawn new process. | |
| string | axcel::proc::lsproc () |
| List processes. | |
| bool | axcel::proc::killp (size_t pid) |
| Kill process. | |
| bool | axcel::proc::killp (const char *name) |
| Kill process. | |
| bool | axcel::proc::freeze (size_t pid) |
| Suspend process. | |
| bool | axcel::proc::freeze (const char *name) |
| Suspend process. | |
| bool | axcel::proc::cont (size_t pid) |
| Resume process. | |
| bool | axcel::proc::cont (const char *name) |
| Resume process. | |
| bool | axcel::proc::envset (const char *name, const char *value) |
| Set environment variable. | |
| string | axcel::proc::envget (const char *name) |
| Get environment variable. | |
| sem_t * | axcel::proc::mksem (const char *name, size_t count) |
| bool | axcel::proc::rmsem (const char *name) |
| data | axcel::net::http::download (const char *url, const char *port="80") |
Definition in file axcel.h.
| #define crap | ( | ... | ) |
if (1) {\ fprintf(stderr, __VA_ARGS__);\ return;}
Print formatted string using printf to stderr and returns from current function.
| #define craps | ( | x, | |
| ... | |||
| ) |
if (1) {\ fprintf(stderr, __VA_ARGS__);\ return x; }
Print formatted string using printf to stderr and returns from current function with x as return value.
| #define loop | ( | ) | for (;;) |
Perform infinite loop on statement(s).
| #define unless | ( | x | ) | if (!(x)) |
inverse of If statement. Executes statement(s) if condition is false
| #define until | ( | x | ) | while (!(x)) |
inverse of while statement. Executes statement(s) while condition is false
1.7.4