bux API Reference 1.9.0
Static library of whatever are seen required in general purpose but not directly supported from Modern C++. Or whatever reusable originated from my side projects.
Loading...
Searching...
No Matches
ScannerBase.h File Reference
#include "LexBase.h"
#include "UnicodeCvt.h"
#include <wchar.h>
Include dependency graph for ScannerBase.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  bux::I_Scanner< T_Char >
 
struct  bux::C_ActionRet
 
struct  bux::C_LexTraits< T_LexCh >
 
struct  bux::C_LexUTF32
 
struct  bux::C_LexTraits< C_LexUTF32 >
 

Namespaces

namespace  bux
 THE common namespace of bux library.
 

Functions

std::string bux::escseq2str (std::string s)
 
bool bux::isIdentifier (std::string_view s) noexcept
 
size_t bux::parseEscapeChar (std::string_view s, uint32_t &c, size_t pos)
 
size_t bux::skipIdentifier (std::string_view s, size_t pos) noexcept
 
template<class T_LexCh >
auto bux::toString (const T_LexCh *c, size_t start, size_t end) noexcept(noexcept(C_LexTraits< T_LexCh >::appendUTF8(std::declval< std::string & >(), T_LexCh())))
 
template<T_LexID _ID, class T_LexCh >
auto bux::createCharLiteral (const T_LexCh *c, size_t n)
 
template<T_LexID _ID, class T_LexCh >
auto bux::createDecNum (const T_LexCh *c, size_t n)
 
template<T_LexID _ID, class T_LexCh >
auto bux::createHexNum (const T_LexCh *c, size_t n)
 
template<T_LexID _ID, class T_LexCh >
C_ActionRet bux::createNothing (const T_LexCh *, size_t)
 
template<T_LexID _ID, class T_LexCh >
auto bux::createOctNum (const T_LexCh *c, size_t n)
 
template<T_LexID _ID, class T_LexCh , size_t TRIMLEFT = 0, size_t TRIMRIGHT = 0>
auto bux::createPlainString (const T_LexCh *c, size_t n)
 
template<T_LexID _ID, class T_LexCh , size_t TRIMLEFT = 0, size_t TRIMRIGHT = 0>
auto bux::createEscapeString (const T_LexCh *c, size_t n)
 
template<class T_Char >
void bux::scanFile (std::string_view filename, std::istream &in, I_Scanner< T_Char > &scanner, T_LexID endToken=TID_EOF, T_Encoding encoding=0)