You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
configreader/configmodel.h

46 lines
1.8 KiB

#ifndef __CONFIGMODEL_H
#define __CONFIGMODEL_H
#include "types.h"
LINEPTR LineNew(CONST_STRPTR buffer);
VOID LineFree(LINEPTR abstractLine);
CONST_STRPTR LineGetRawText(LINEPTR line);
VOID LineSetSection(LINEPTR line, SECTIONPTR section);
SECTIONPTR LineGetSection(LINEPTR line);
VARIABLEPTR LineGetVariable(LINEPTR line);
VOID LineSetInitialVariable(LINEPTR line, VARIABLEPTR variable);
VOID LineSetVariable(LINEPTR line, VARIABLEPTR variable);
BOOL LineHasVariable(LINEPTR line, CONST_STRPTR varKey);
BOOL LineIsBlank(LINEPTR line);
VOID LineWrite(LINEPTR abstractLine, BPTR file);
VOID LineDump(LINEPTR abstractLine);
SECTIONPTR SectionCreateWithName(CONST_STRPTR primary);
SECTIONPTR SectionCreateWithNameAndSubname(CONST_STRPTR primary, CONST_STRPTR secondary);
VOID SectionFree(SECTIONPTR section);
VOID SectionAddSectionLine(SECTIONPTR section, LINEPTR line);
VOID SectionAddLine(SECTIONPTR abstractSection, LINEPTR abstractLine, BOOL addBeforeBlanks);
CONST_STRPTR SectionCanonicalName(SECTIONPTR section);
VOID SectionDump(SECTIONPTR section);
VOID SectionWrite(SECTIONPTR section, BPTR file);
CONST_STRPTR SectionSerialize(SECTIONPTR section);
BOOL SectionHasName(SECTIONPTR section, CONST_STRPTR primary);
CONST_STRPTR SectionGetRawSubsectionName(SECTIONPTR section);
VOID SectionCollectLinesForVariable(SECTIONPTR section, CONST_STRPTR varKey, LineArray collecting);
VOID SectionRemoveLinesForVariable(SECTIONPTR section, CONST_STRPTR varKey);
VARIABLEPTR VariableCreate(CONST_STRPTR key, CONST_STRPTR rawValue);
BOOL VariableHasKey(VARIABLEPTR variable, CONST_STRPTR varKey);
CONST_STRPTR VariableGetRawValue(VARIABLEPTR variable);
VOID VariableFree(VARIABLEPTR variable);
CONST_STRPTR VariableSerialize(VARIABLEPTR variable);
StringArray CompoundKeySplitKeyForVar(CONST_STRPTR key);
StringArray CompoundKeySplitKeyCompletely(CONST_STRPTR key);
#endif