halcheck 1.0
Loading...
Searching...
No Matches
halcheck::lib::symbol Class Reference

A symbol is conceptually a std::string with constant time equality comparison and hashing. More...

#include <atom.hpp>

Public Types

using value_type = std::string
 

Public Member Functions

 symbol (const std::string &)
 Construct a new symbol from a std::string.
 
 symbol (const char *="")
 Construct a new symbol from a C string.
 
std::size_t hash () const noexcept
 Gets a hash code for this symbol.
 
template<typename T >
 operator T () const
 Casts the underlying string to a value.
 

Friends

bool operator== (const symbol &lhs, const symbol &rhs)
 Determines if two symbols are equal.
 
bool operator!= (const symbol &lhs, const symbol &rhs)
 Determines if two symbols are not equal.
 

Detailed Description

A symbol is conceptually a std::string with constant time equality comparison and hashing.


The documentation for this class was generated from the following file: