111 } |
115 } |
112 |
116 |
113 // ============================================================================= |
117 // ============================================================================= |
114 // ----------------------------------------------------------------------------- |
118 // ----------------------------------------------------------------------------- |
115 LDConfigParser::LDConfigParser (str inText, char sep) |
119 LDConfigParser::LDConfigParser (str inText, char sep) |
116 { m_tokens = inText.split (sep, QString::SkipEmptyParts); |
120 { |
|
121 m_tokens = inText.split (sep, QString::SkipEmptyParts); |
117 m_pos = -1; |
122 m_pos = -1; |
118 } |
123 } |
119 |
124 |
120 // ============================================================================= |
125 // ============================================================================= |
121 // ----------------------------------------------------------------------------- |
126 // ----------------------------------------------------------------------------- |
122 bool LDConfigParser::isAtBeginning() |
127 bool LDConfigParser::isAtBeginning() |
123 { return m_pos == -1; |
128 { |
|
129 return m_pos == -1; |
124 } |
130 } |
125 |
131 |
126 // ============================================================================= |
132 // ============================================================================= |
127 // ----------------------------------------------------------------------------- |
133 // ----------------------------------------------------------------------------- |
128 bool LDConfigParser::isAtEnd() |
134 bool LDConfigParser::isAtEnd() |
129 { return m_pos == m_tokens.size() - 1; |
135 { |
|
136 return m_pos == m_tokens.size() - 1; |
130 } |
137 } |
131 |
138 |
132 // ============================================================================= |
139 // ============================================================================= |
133 // ----------------------------------------------------------------------------- |
140 // ----------------------------------------------------------------------------- |
134 bool LDConfigParser::getToken (str& val, const int pos) |
141 bool LDConfigParser::getToken (str& val, const int pos) |
135 { if (pos >= m_tokens.size()) |
142 { |
|
143 if (pos >= m_tokens.size()) |
136 return false; |
144 return false; |
137 |
145 |
138 val = m_tokens[pos]; |
146 val = m_tokens[pos]; |
139 return true; |
147 return true; |
140 } |
148 } |
141 |
149 |
142 // ============================================================================= |
150 // ============================================================================= |
143 // ----------------------------------------------------------------------------- |
151 // ----------------------------------------------------------------------------- |
144 bool LDConfigParser::getNextToken (str& val) |
152 bool LDConfigParser::getNextToken (str& val) |
145 { return getToken (val, ++m_pos); |
153 { |
|
154 return getToken (val, ++m_pos); |
146 } |
155 } |
147 |
156 |
148 // ============================================================================= |
157 // ============================================================================= |
149 // ----------------------------------------------------------------------------- |
158 // ----------------------------------------------------------------------------- |
150 bool LDConfigParser::peekNextToken (str& val) |
159 bool LDConfigParser::peekNextToken (str& val) |
151 { return getToken (val, m_pos + 1); |
160 { |
|
161 return getToken (val, m_pos + 1); |
152 } |
162 } |
153 |
163 |
154 // ============================================================================= |
164 // ============================================================================= |
155 // ----------------------------------------------------------------------------- |
165 // ----------------------------------------------------------------------------- |
156 bool LDConfigParser::findToken (int& result, char const* needle, int args) |
166 bool LDConfigParser::findToken (int& result, char const* needle, int args) |
157 { for (int i = 0; i < (m_tokens.size() - args); ++i) |
167 { |
158 { if (m_tokens[i] == needle) |
168 for (int i = 0; i < (m_tokens.size() - args); ++i) |
159 { result = i; |
169 { |
|
170 if (m_tokens[i] == needle) |
|
171 { |
|
172 result = i; |
160 return true; |
173 return true; |
161 } |
174 } |
162 } |
175 } |
163 |
176 |
164 return false; |
177 return false; |
165 } |
178 } |
166 |
179 |
167 // ============================================================================= |
180 // ============================================================================= |
168 // ----------------------------------------------------------------------------- |
181 // ----------------------------------------------------------------------------- |
169 void LDConfigParser::rewind() |
182 void LDConfigParser::rewind() |
170 { m_pos = -1; |
183 { |
|
184 m_pos = -1; |
171 } |
185 } |
172 |
186 |
173 // ============================================================================= |
187 // ============================================================================= |
174 // ----------------------------------------------------------------------------- |
188 // ----------------------------------------------------------------------------- |
175 void LDConfigParser::seek (int amount, bool rel) |
189 void LDConfigParser::seek (int amount, bool rel) |
176 { m_pos = (rel ? m_pos : 0) + amount; |
190 { |
|
191 m_pos = (rel ? m_pos : 0) + amount; |
177 } |
192 } |
178 |
193 |
179 // ============================================================================= |
194 // ============================================================================= |
180 // ----------------------------------------------------------------------------- |
195 // ----------------------------------------------------------------------------- |
181 int LDConfigParser::getSize() |
196 int LDConfigParser::getSize() |
182 { return m_tokens.size(); |
197 { |
|
198 return m_tokens.size(); |
183 } |
199 } |
184 |
200 |
185 // ============================================================================= |
201 // ============================================================================= |
186 // ----------------------------------------------------------------------------- |
202 // ----------------------------------------------------------------------------- |
187 bool LDConfigParser::tokenCompare (int inPos, const char* sOther) |
203 bool LDConfigParser::tokenCompare (int inPos, const char* sOther) |
188 { str tok; |
204 { |
|
205 str tok; |
189 |
206 |
190 if (!getToken (tok, inPos)) |
207 if (!getToken (tok, inPos)) |
191 return false; |
208 return false; |
192 |
209 |
193 return (tok == sOther); |
210 return (tok == sOther); |