summaryrefslogtreecommitdiff
path: root/lib/ConfigFile.cc
diff options
context:
space:
mode:
authorpixel <pixel>2004-11-27 21:35:19 +0000
committerpixel <pixel>2004-11-27 21:35:19 +0000
commit3f7070bf177b743be0eeb8c404a620f72eb15ab6 (patch)
treea22fa7d0a1fd362bfc858f8e7e2062fdd5b252ce /lib/ConfigFile.cc
parent6ba597d46a93aaa9a17eb8a9fe8f3bcdedf686c0 (diff)
Large dos2unix commit...
Diffstat (limited to 'lib/ConfigFile.cc')
-rw-r--r--lib/ConfigFile.cc86
1 files changed, 43 insertions, 43 deletions
diff --git a/lib/ConfigFile.cc b/lib/ConfigFile.cc
index 85cbb00..c765fae 100644
--- a/lib/ConfigFile.cc
+++ b/lib/ConfigFile.cc
@@ -1,43 +1,43 @@
-#include "ConfigFile.h"
-#include "Regex.h"
-
-ConfigFile::ConfigFile(Handle * f) throw (GeneralException) {
- Regex r("^\\[.*\\]$"), comment("^#.*$"), empty("^ *$"), line("^.*=.*$");
- bool started = false;
- String s, section, key, value;
- ConfigSectionContents contents;
- int pos;
-
- while (!f->IsClosed()) {
- (*f) >> s;
- if (comment.Match(s) || empty.Match(s))
- continue;
- if (r.Match(s)) {
- if (!started) {
- started = true;
- } else {
- c[section] = contents;
- contents.clear();
- }
- section = s.extract(1, s.strlen() - 2);
- continue;
- }
- if (line.Match(s)) {
- if (!started) {
- throw GeneralException("Config file must begin with a section");
- }
- pos = s.strchr('=');
- key = s.extract(0, pos - 1).trim();
- value = s.extract(pos + 1).trim();
- contents[key] = value;
- continue;
- }
- throw GeneralException("Invalid line: " + s);
- }
-
- c[section] = contents;
-}
-
-ConfigSectionContents & ConfigFile::operator[](String s) {
- return c[s];
-}
+#include "ConfigFile.h"
+#include "Regex.h"
+
+ConfigFile::ConfigFile(Handle * f) throw (GeneralException) {
+ Regex r("^\\[.*\\]$"), comment("^#.*$"), empty("^ *$"), line("^.*=.*$");
+ bool started = false;
+ String s, section, key, value;
+ ConfigSectionContents contents;
+ int pos;
+
+ while (!f->IsClosed()) {
+ (*f) >> s;
+ if (comment.Match(s) || empty.Match(s))
+ continue;
+ if (r.Match(s)) {
+ if (!started) {
+ started = true;
+ } else {
+ c[section] = contents;
+ contents.clear();
+ }
+ section = s.extract(1, s.strlen() - 2);
+ continue;
+ }
+ if (line.Match(s)) {
+ if (!started) {
+ throw GeneralException("Config file must begin with a section");
+ }
+ pos = s.strchr('=');
+ key = s.extract(0, pos - 1).trim();
+ value = s.extract(pos + 1).trim();
+ contents[key] = value;
+ continue;
+ }
+ throw GeneralException("Invalid line: " + s);
+ }
+
+ c[section] = contents;
+}
+
+ConfigSectionContents & ConfigFile::operator[](String s) {
+ return c[s];
+}