Index: formdat.scm ================================================================== --- formdat.scm +++ formdat.scm @@ -159,10 +159,11 @@ ;; (s:process-cgi-input (caaar dat)) (define (formdat:load-all-port inp) (let* ((formdat (make-formdat:formdat))) ;; (debugp (open-output-file (conc (slot-ref s:session 'sroot) "/delme-" (current-user-id) ".log")))) ;; (write-string (read-string #f inp) #f debugp) + (formdat:initialize formdat) (let ((alldats (formdat:dat->list inp 10e6))) ;; (format debugp "formdat : alldats: ~A\n" alldats) (let ((firstitem (car alldats)) (multipass #f)) Index: setup.scm ================================================================== --- setup.scm +++ setup.scm @@ -32,11 +32,11 @@ (apply session:log s:session msg)) (session:get-vars s:session) (define (s:set-err . args) - (sdat-set-curr-err s:session args)) + (sdat-set-curr-err! s:session args)) ;; Usage: (s:get-err s:big) (define (s:get-err wrapperfunc) (let ((errmsg (sdat-get-curr-err s:session))) (if errmsg ((if wrapperfunc Index: sqltbl.scm ================================================================== --- sqltbl.scm +++ sqltbl.scm @@ -18,28 +18,28 @@ ;; )) (declare (unit sqltbl)) (define (make-sqltbl:tbl)(make-vector 9)) -(define-inline (sqltbl:tbl-get-rows vec) (vector-ref vec 0)) -(define-inline (sqltbl:tbl-get-fields vec) (vector-ref vec 1)) -(define-inline (sqltbl:tbl-get-fields-hash vec) (vector-ref vec 2)) -(define-inline (sqltbl:tbl-get-query vec) (vector-ref vec 3)) -(define-inline (sqltbl:tbl-get-query-params vec) (vector-ref vec 4)) -(define-inline (sqltbl:tbl-get-conn vec) (vector-ref vec 5)) -(define-inline (sqltbl:tbl-get-num-rows vec) (vector-ref vec 6)) -(define-inline (sqltbl:tbl-get-curr-row-ptr vec) (vector-ref vec 7)) -(define-inline (sqltbl:tbl-get-curr-row vec) (vector-ref vec 8)) -(define-inline (sqltbl:tbl-set-rows! vec val)(vector-set! vec 0 val)) -(define-inline (sqltbl:tbl-set-fields! vec val)(vector-set! vec 1 val)) -(define-inline (sqltbl:tbl-set-fields-hash! vec val)(vector-set! vec 2 val)) -(define-inline (sqltbl:tbl-set-query! vec val)(vector-set! vec 3 val)) -(define-inline (sqltbl:tbl-set-query-params! vec val)(vector-set! vec 4 val)) -(define-inline (sqltbl:tbl-set-conn! vec val)(vector-set! vec 5 val)) -(define-inline (sqltbl:tbl-set-num-rows! vec val)(vector-set! vec 6 val)) -(define-inline (sqltbl:tbl-set-curr-row-ptr! vec val)(vector-set! vec 7 val)) -(define-inline (sqltbl:tbl-set-curr-row! vec val)(vector-set! vec 8 val)) +(define (sqltbl:tbl-get-rows vec) (vector-ref vec 0)) +(define (sqltbl:tbl-get-fields vec) (vector-ref vec 1)) +(define (sqltbl:tbl-get-fields-hash vec) (vector-ref vec 2)) +(define (sqltbl:tbl-get-query vec) (vector-ref vec 3)) +(define (sqltbl:tbl-get-query-params vec) (vector-ref vec 4)) +(define (sqltbl:tbl-get-conn vec) (vector-ref vec 5)) +(define (sqltbl:tbl-get-num-rows vec) (vector-ref vec 6)) +(define (sqltbl:tbl-get-curr-row-ptr vec) (vector-ref vec 7)) +(define (sqltbl:tbl-get-curr-row vec) (vector-ref vec 8)) +(define (sqltbl:tbl-set-rows! vec val)(vector-set! vec 0 val)) +(define (sqltbl:tbl-set-fields! vec val)(vector-set! vec 1 val)) +(define (sqltbl:tbl-set-fields-hash! vec val)(vector-set! vec 2 val)) +(define (sqltbl:tbl-set-query! vec val)(vector-set! vec 3 val)) +(define (sqltbl:tbl-set-query-params! vec val)(vector-set! vec 4 val)) +(define (sqltbl:tbl-set-conn! vec val)(vector-set! vec 5 val)) +(define (sqltbl:tbl-set-num-rows! vec val)(vector-set! vec 6 val)) +(define (sqltbl:tbl-set-curr-row-ptr! vec val)(vector-set! vec 7 val)) +(define (sqltbl:tbl-set-curr-row! vec val)(vector-set! vec 8 val)) (define (sqltbl:initialize self);; initargs) (sqltbl:tbl-set-num-rows! self 0) (sqltbl:tbl-set-curr-row-ptr! self 0) (sqltbl:tbl-set-fields! self '()) Index: stml.scm ================================================================== --- stml.scm +++ stml.scm @@ -9,10 +9,11 @@ ;; stml is a list of html strings (declare (unit stml)) (declare (uses misc-stml)) +(require-extension regex) ;; extract various tokens from the parameter list ;; 'key val => put in the params list ;; strings => maintain order and add to the datalist <<== IMPORTANT (define (s:extract inlst)