Lumiera  0.pre.03
»edit your freedom«
symbol-impl.cpp File Reference

Go to the source code of this file.

Description

Collection of helpers for working with the lib::Symbol.

Todo:
currently as of 9/09 this is more of a placeholder. And maybe a location for collecting small bits of implementation, which could be usable later for real Symbol and Literal datatypes.

lib::Symbol control::CommandRegistry for usage example of the hash function.

Definition in file symbol-impl.cpp.

#include "lib/symbol.hpp"
#include "lib/symbol-table.hpp"
#include <boost/functional/hash.hpp>
#include <cstddef>
#include <cstring>
#include <string>

Functions

size_t hash_value (Literal literal)
 generate hash value based on the Literal's contents. More...
 
size_t hash_value (Symbol sym)
 hash value for Symbols is directly based on the symbol table entry
 
int strNcmp (CStr a, CStr b, size_t len)
 
SymbolTable & symbolTable ()
 

Variables

const size_t STRING_MAX_RELEVANT = LUMIERA_IDSTRING_MAX_RELEVANT
 safety guard: maximum number of chars to process. More...
 

Namespaces

 lib
 Implementation namespace for support and library code.