![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cIniSection.h>
Public Member Functions | |
cIniSection (bool bStripComments=false) noexcept | |
cIniSection (cStringI sSectionTitle, bool bStripComments=false) | |
cIniSection (const cIniSection &rSectionCopy) | |
const cStringI & | get_SectionTitle () const noexcept |
cString | get_Name () const noexcept |
HRESULT | WriteSection (cStreamOutput &file) |
bool | IsSectionType (const IniChar_t *pszSectionType) const noexcept |
![]() | |
cIniSectionData (bool bStripComments=false) noexcept | |
virtual | ~cIniSectionData () |
void | DisposeThis () |
bool | isStripped () const noexcept |
StrLen_t | get_BufferUsed () const noexcept |
StrLen_t | get_BufferSize () const noexcept |
ITERATE_t | get_LineQty () const noexcept |
IniChar_t * | GetLineEnum (ITERATE_t iLine=0) const noexcept |
ITERATE_t | FindTriggerName (const IniChar_t *pszTrigName) const |
virtual HRESULT | PropEnum (IPROPIDX_t ePropIdx, OUT cStringI &rsValue, cStringI *psKey=nullptr) const override |
void | ClearLineQty () |
ITERATE_t | FindKeyLine (const IniChar_t *pszKeyName, bool bPrefixOnly=false) const |
Find a key in the section (key=args) More... | |
const IniChar_t * | FindKeyLinePtr (const IniChar_t *pszKey) const |
const IniChar_t * | FindArgForKey (const IniChar_t *pszKey, const IniChar_t *pszDefault=nullptr) const |
int | FindIntForKey (const IniChar_t *pszKey, int iDefault=0) const |
virtual HRESULT | PropGet (const IniChar_t *pszPropTag, OUT cStringI &rsValue) const override |
bool | IsValidLines () const |
void | SetLinesCopy (const cIniSectionData §ion) |
ITERATE_t | AddLine (const IniChar_t *pszLine) |
bool | SetLine (ITERATE_t iLine, const IniChar_t *pszLine=nullptr) |
bool | RemoveLine (ITERATE_t iLine) |
ITERATE_t | AddKeyArg (const IniChar_t *pszKey, const IniChar_t *pszArg) |
ITERATE_t | AddKeyInt (const IniChar_t *pszKey, int iArg) |
ITERATE_t | SetKeyArg (const IniChar_t *pszKey, const IniChar_t *pszArg) |
ITERATE_t | SetKeyInt (const IniChar_t *pszKey, int iArg) |
void | AllocComplete () |
virtual HRESULT | PropSet (const IniChar_t *pszPropTag, const IniChar_t *pszValue) override |
StrLen_t | SetLinesParse (const IniChar_t *pszData, StrLen_t iLen=k_StrLen_UNK, const IniChar_t *pszSep=nullptr, STRP_MASK_t uFlags=(STRP_START_WHITE|STRP_MERGE_CRNL|STRP_END_WHITE|STRP_EMPTY_STOP)) |
cStringA | GetStringAll (const IniChar_t *pszSep=nullptr) const |
HRESULT | ReadSectionData (cStringA &rsSectionNext, cStreamInput &stream, bool bStripComments) |
HRESULT | WriteSectionData (cStreamOutput &file) |
Static Public Member Functions | |
static cStringI __stdcall | GetSectionTitleParse (cStringI sSectionTitle, cStringI *psPropTag) |
static bool __stdcall | IsSectionTypeRoot (const IniChar_t *pszSection) noexcept |
static bool __stdcall | IsSectionTypeMatch (const IniChar_t *pszSection1, const IniChar_t *pszSection2) noexcept |
![]() | |
static StrLen_t __stdcall | IsLineTrigger (const IniChar_t *pszLine) |
static StrLen_t __stdcall | MakeLine (IniChar_t *pszTmp, StrLen_t iSizeMax, const IniChar_t *pszKey, const IniChar_t *pszArg, IniChar_t chSep='=') |
![]() | |
static bool __stdcall | IsSectionHeader (const IniChar_t *pszLine) |
static bool __stdcall | IsLineComment (const IniChar_t *pszLine) |
static IniChar_t *__stdcall | FindLineArg (const IniChar_t *pszLine, bool bAllowSpace=false) |
static StrLen_t __stdcall | FindScriptLineEnd (const IniChar_t *pLineStr) |
static cStringI __stdcall | GetLineParse2 (const IniChar_t *pszLine, IniChar_t **ppszArgs=nullptr) |
static cStringI __stdcall | GetLineParse3 (const IniChar_t *pszLine, OUT cStringI &rsArgs) |
Protected Attributes | |
cStringI | m_sSectionTitle |
"SECTIONTYPE SECTIONNAME" = everything that was inside [] without the [] More... | |
![]() | |
bool | m_bStripComments |
has been stripped of blank lines, comments, leading and trailing line spaces. More... | |
Friends | |
class | cIniSectionTests |
Additional Inherited Members | |
![]() | |
static const StrLen_t | k_SECTION_SIZE_MAX = (256 * 1024) |
(chars) max size for whole section. (Windows Me/98/95 = 32K for INI) More... | |
static const ITERATE_t | k_LINE_QTY_MAX = (8 * 1024) |
max number of lines i support. (per section) More... | |
static const StrLen_t | k_LINE_LEN_MAX = (4 * 1024) |
max size for a single line (in chars). More... | |
static const StrLen_t | k_LINE_LEN_DEF = (1024) |
suggested/guessed/average size for lines (in chars). for alloc guessing. More... | |
![]() | |
IniChar_t * | AllocBuffer (StrLen_t nSizeChars) |
For raw access to the m_Buffer. More... | |
void | AllocLines (ITERATE_t iLinesAlloc) |
IniChar_t * | AllocBeginMin (StrLen_t nSizeChars) |
cIniSectionData + section title info
|
inlinenoexcept |
Gray::cIniSection::cIniSection | ( | const cIniSection & | rSectionCopy | ) |
copy constructor.
|
inlinenoexcept |
|
inlinenoexcept |
|
static |
Parse [SectionTitle]. similar to GetLineParse2()
|
staticnoexcept |
|
inlinestaticnoexcept |
stuff at the top of the file with no [section] header.
HRESULT Gray::cIniSection::WriteSection | ( | cStreamOutput & | file | ) |
|
friend |
|
protected |
"SECTIONTYPE SECTIONNAME" = everything that was inside [] without the []