24 // ============================================================================= |
24 // ============================================================================= |
25 // StringParser |
25 // StringParser |
26 // |
26 // |
27 // String parsing utility |
27 // String parsing utility |
28 // ============================================================================= |
28 // ============================================================================= |
29 class LDConfigParser { |
29 class LDConfigParser |
30 public: |
30 { public: |
31 LDConfigParser (str inText, char sep); |
31 LDConfigParser (str inText, char sep); |
32 |
32 |
33 bool atEnd(); |
33 bool atEnd(); |
34 bool atBeginning(); |
34 bool atBeginning(); |
35 bool next (str& val); |
35 bool next (str& val); |
36 bool peekNext (str& val); |
36 bool peekNext (str& val); |
37 bool getToken (str& val, const ushort pos); |
37 bool getToken (str& val, const ushort pos); |
38 bool findToken (short& result, char const* needle, short args); |
38 bool findToken (short& result, char const* needle, short args); |
39 size_t size(); |
39 size_t size(); |
40 void rewind(); |
40 void rewind(); |
41 void seek (short amount, bool rel); |
41 void seek (short amount, bool rel); |
42 bool tokenCompare (short inPos, const char* sOther); |
42 bool tokenCompare (short inPos, const char* sOther); |
43 |
43 |
44 str operator[] (const size_t idx) { |
44 str operator[] (const size_t idx) |
45 return m_tokens[idx]; |
45 { return m_tokens[idx]; |
46 } |
46 } |
47 |
47 |
48 private: |
48 private: |
49 List<str> m_tokens; |
49 List<str> m_tokens; |
50 short m_pos; |
50 short m_pos; |
51 }; |
51 }; |
52 |
52 |
53 void parseLDConfig(); |
53 void parseLDConfig(); |
54 |
54 |
55 #endif // LDCONFIG_H |
55 #endif // LDCONFIG_H |