         db = nil;
     }
     
-    public func execute(sql: String, params:[Any], silenceErrors: Bool) {
+    public func execute(sql: String, params:[Any], silenceErrors: Bool) -> Result {
+        
+        let result = Result()
         
         var values: [Value] = []
         for o in params {

        } else {
            // error in statement
            if !silenceErrors {
                print("SQL Error in : \(sql) \n Message: \(String(cString: sqlite3_errmsg(db)))\n")
            }
        }
        
        sqlite3_finalize(stmt)
        
    }
    
    public func execute(compiledAction: SWSQLAction) {
        execute(sql: compiledAction.statement, params: compiledAction.parameters)
    }
    
    public func execute(sql: String, params:[Any]) {
        
        execute(sql: sql, params: params, silenceErrors: false)
        
    }
    
    public func execute(actions: [Action]) {
        
        for action in actions {
            execute(sql: action.builtStatement, params: [], silenceErrors: true)
        }
        
    }
    
    public func query(sql: String, params:[Any]) -> [Record] {
        
        var results: [[String:Value]] = []
        
        var values: [Value] = []

    
}

public class Result {
    var results: [Record]? = nil
    var error: String? = nil
}

public class SWSQLite {
    
    var db: OpaquePointer?
