.gitignore
[backups/.git] / main.cc
diff --git a/main.cc b/main.cc
index bd744b67b6ac59a488f7783e18d99c471f4d5b37..b809f589e5d6381e8e8af3251772f27f1ede5e79 100644 (file)
--- a/main.cc
+++ b/main.cc
@@ -1,8 +1,30 @@
 #include <iostream>
+#include <iterator>
+#include <string>
+#include <vector>
 #include <algorithm>
 
 using namespace std;
 
+vector<string> split( const string &line, char c, int limit = -1 ) {
+  string::size_type start = 0, end = 0;
+
+  vector<string> out;
+  while( 0 != limit-- && end != line.size() ) {
+    if( 0 == limit ) {
+      end = line.size();
+    } else {
+      end = line.find( c, start );
+      if( end == string::npos ) {
+        end = line.size();
+      }
+    }
+    out.push_back( line.substr( start, end-start ) );
+    start = end + 1;
+  }
+  return out;
+}
+
 int main() {
   string file_string;
   do {
@@ -11,7 +33,10 @@ int main() {
       file_string.push_back( c );
     }
     if( 0 != file_string.size() ) {
-      cout << file_string << endl;
+      // Example entry
+      // type perms user group size datemodified name (7 total)
+      // f 0600 cnb cnb 424 20051015205340 ./.git/index
+      vector<string> values = split( file_string, ' ', 7 );
     }
   } while( ! cin.eof() );
 }