Leviathan  0.8.0.0
Leviathan game engine
StringIterator.h File Reference
#include "Define.h"
#include "../Common/StringOperations.h"
#include "IteratorData.h"
#include "StringDataIterator.h"
#include <functional>
#include <memory>

Go to the source code of this file.

Classes

class  Leviathan::StringIterator
 Iterator class for getting parts of a string. More...
 

Namespaces

 Leviathan
 The access mask controls which registered functions and classes a script sees.
 

Macros

#define ITR_FUNCDEBUG(x)   {}
 
#define ITR_COREDEBUG(x)   {}
 
#define SPECIAL_ITERATOR_FILEHANDLING   SPECIAL_ITERATOR_ONNEWLINE_STOP | SPECIAL_ITERATOR_HANDLECOMMENTS_ASSTRING
 Common flag for file handling. More...
 

Enumerations

enum  Leviathan::QUOTETYPE { Leviathan::QUOTETYPE_DOUBLEQUOTES, Leviathan::QUOTETYPE_SINGLEQUOTES, Leviathan::QUOTETYPE_BOTH }
 
enum  Leviathan::DECIMALSEPARATORTYPE { Leviathan::DECIMALSEPARATORTYPE_DOT, Leviathan::DECIMALSEPARATORTYPE_COMMA, Leviathan::DECIMALSEPARATORTYPE_BOTH, Leviathan::DECIMALSEPARATORTYPE_NONE }
 
enum  Leviathan::UNNORMALCHARACTER {
  Leviathan::UNNORMALCHARACTER_TYPE_NON_ASCII = 0x1, Leviathan::UNNORMALCHARACTER_TYPE_CONTROLCHARACTERS = 0x2, Leviathan::UNNORMALCHARACTER_TYPE_WHITESPACE = 0x4, Leviathan::UNNORMALCHARACTER_TYPE_LOWCODES = 0x8,
  Leviathan::UNNORMALCHARACTER_TYPE_NON_NAMEVALID = 0x10, Leviathan::UNNORMALCHARACTER_TYPE_LINEEND = 0x20
}
 
enum  Leviathan::EQUALITYCHARACTER { Leviathan::EQUALITYCHARACTER_TYPE_EQUALITY, Leviathan::EQUALITYCHARACTER_TYPE_DOUBLEDOTSTYLE, Leviathan::EQUALITYCHARACTER_TYPE_ALL }
 
enum  Leviathan::ITERATORCALLBACK_RETURNTYPE { Leviathan::ITERATORCALLBACK_RETURNTYPE_STOP, Leviathan::ITERATORCALLBACK_RETURNTYPE_CONTINUE }
 
enum  Leviathan::SPECIAL_ITERATOR { Leviathan::SPECIAL_ITERATOR_ONNEWLINE_STOP = 0x4, Leviathan::SPECIAL_ITERATOR_HANDLECOMMENTS_ASSTRING = 0x10 }
 Special case handling flags for iterator. More...
 
enum  Leviathan::ITERATORFLAG_SET {
  Leviathan::ITERATORFLAG_SET_IGNORE_SPECIAL = 0x1, Leviathan::ITERATORFLAG_SET_STOP = 0x2, Leviathan::ITERATORFLAG_SET_INSIDE_STRING = 0x4, Leviathan::ITERATORFLAG_SET_INSIDE_STRING_DOUBLE = 0x8,
  Leviathan::ITERATORFLAG_SET_INSIDE_STRING_SINGLE = 0x10, Leviathan::ITERATORFLAG_SET_INSIDE_STRING_SINGLE_END = 0x20, Leviathan::ITERATORFLAG_SET_INSIDE_STRING_DOUBLE_END = 0x40, Leviathan::ITERATORFLAG_SET_IGNORE_SPECIAL_END = 0x80,
  Leviathan::ITERATORFLAG_SET_COMMENT_BEGINNING = 0x100, Leviathan::ITERATORFLAG_SET_INSIDE_COMMENT = 0x200, Leviathan::ITERATORFLAG_SET_INSIDE_CPPCOMMENT = 0x400, Leviathan::ITERATORFLAG_SET_INSIDE_CCOMMENT = 0x800,
  Leviathan::ITERATORFLAG_SET_CPPCOMMENT_END = 0x1000, Leviathan::ITERATORFLAG_SET_CCOMMENT_END = 0x2000
}
 Set flags for the iterator, this is changed to this for performance. More...
 

Macro Definition Documentation

◆ ITR_COREDEBUG

#define ITR_COREDEBUG (   x)    {}

Definition at line 39 of file StringIterator.h.

◆ ITR_FUNCDEBUG

#define ITR_FUNCDEBUG (   x)    {}

Definition at line 37 of file StringIterator.h.

◆ SPECIAL_ITERATOR_FILEHANDLING

#define SPECIAL_ITERATOR_FILEHANDLING   SPECIAL_ITERATOR_ONNEWLINE_STOP | SPECIAL_ITERATOR_HANDLECOMMENTS_ASSTRING

Common flag for file handling.

Definition at line 85 of file StringIterator.h.