ewmscp  ..
Private Member Functions | Static Private Member Functions | Static Private Attributes | List of all members
escapismUrlsoft Class Reference
Inheritance diagram for escapismUrlsoft:
[legend]
Collaboration diagram for escapismUrlsoft:
[legend]

Private Member Functions

bool unencoded (char c) const override
 

Static Private Member Functions

static charCodingBitPatternType initCodeList ()
 

Static Private Attributes

static escapismFactoryClassTemplate< escapismUrlsoftfactory
 

Additional Inherited Members

- Static Public Member Functions inherited from escapism
static const escapismnewEscaper (const std::string &name)
 
static void addAllowedNamesToOption (options::single< std::string > &option)
 
static options::single< std::string > * newEscaperOption (const std::string &name, const std::string &description, const std::string &defaultValue="Url")
 

Detailed Description

Definition at line 118 of file escapism.cpp.

Member Function Documentation

◆ initCodeList()

static charCodingBitPatternType escapismUrlsoft::initCodeList ( )
inlinestaticprivate

Definition at line 120 of file escapism.cpp.

120  {
121  charCodingBitPatternType codingPattern = {{0ull, 0ull, 0ull, 0ull}};
122  const char* ueChars = "0123456789.-~_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz/";
123  for (const char *c = ueChars; *c; c++) {
125  }
126  return codingPattern;
127  }

References escapism::charCodingBitPatternType::bits, escapism::charCodingBitPatternType::index(), and escapism::charCodingBitPatternType::mask().

Referenced by unencoded().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ unencoded()

bool escapismUrlsoft::unencoded ( char  c) const
inlineoverrideprivatevirtual

Reimplemented from escapismUrl.

Definition at line 128 of file escapism.cpp.

128  {
129  static charCodingBitPatternType codingPattern = initCodeList();
130  return (codingPattern.bits[charCodingBitPatternType::index(c)] & charCodingBitPatternType::mask(c)) != 0ull;
131  }

References escapism::charCodingBitPatternType::bits, escapism::charCodingBitPatternType::index(), initCodeList(), and escapism::charCodingBitPatternType::mask().

Here is the call graph for this function:

Member Data Documentation

◆ factory

escapismFactoryClassTemplate<escapismUrlsoft> escapismUrlsoft::factory
staticprivate

Definition at line 119 of file escapism.cpp.


The documentation for this class was generated from the following file:
escapism::charCodingBitPatternType::mask
static std::uint64_t mask(char c)
Definition: escapism.h:14
escapismUrlsoft::initCodeList
static charCodingBitPatternType initCodeList()
Definition: escapism.cpp:120
escapism::charCodingBitPatternType::index
static int index(char c)
Definition: escapism.h:11