scsl 1.0.1
Shimmering Clarity Standard Library
|
scsl is the top-level namespace containing all the code in this library. More...
Namespaces | |
namespace | scstring |
String-related utility functions. | |
namespace | TLV |
Tag-length-value record tooling. | |
Classes | |
class | Arena |
Fixed, pre-allocated memory. More... | |
class | Buffer |
Basic line buffer. More... | |
class | Commander |
Subcommander manager for programs. More... | |
class | Dictionary |
Key-value store on top of Arena and TLV::Record. More... | |
struct | Flag |
Individual command-line flag. More... | |
class | Flags |
Basic facility for processing command line flags. More... | |
union | FlagValue |
FlagValue holds the value of a command line flag. More... | |
class | SimpleConfig |
SimpleConfig is a basic configuration for projects. More... | |
class | Subcommand |
Subcommands used by Commander. More... | |
Typedefs | |
using | CommanderFunc = std::function< bool(std::vector< std::string >)> |
Enumerations | |
enum class | ArenaType : uint8_t { Uninit , Static , Alloc , MemoryMapped } |
enum class | FlagType : uint8_t { Unknown = 0 , Boolean = 1 , Integer = 2 , UnsignedInteger = 3 , SizeT = 4 , String = 5 } |
Functions | |
std::ostream & | operator<< (std::ostream &os, Arena &arena) |
std::ostream & | operator<< (std::ostream &os, const Buffer &buf) |
The << operator is overloaded to write out the contents of the Buffer. | |
bool | operator!= (const Buffer &lhs, const Buffer &rhs) |
Flag * | NewFlag (std::string fName, FlagType fType, std::string fDescription) |
NewFlag is a helper function for constructing a new flag. | |
scsl is the top-level namespace containing all the code in this library.
using scsl::CommanderFunc = typedef std::function<bool (std::vector<std::string>)> |
CommanderFunc describes a function that can be run in Commander.
It expects an argument count and a list of arguments.
|
strong |
|
strong |
NewFlag is a helper function for constructing a new flag.
fName | The name of the flag. |
fType | The type of the flag. |
fDescription | A description of the flag. |
Two Buffers are not equal if their lengths differ or if their contents differ.
std::ostream & scsl::operator<< | ( | std::ostream & | os, |
Arena & | arena | ||
) |
Write an Arena out to the output stream.
The resulting output looks something like
os | |
arena |