X-Git-Url: http://git.kpe.io/?p=clsql.git;a=blobdiff_plain;f=sql%2Fgenerics.lisp;h=6ca064a79afc6c44ddea8c5a01d754054103dd5e;hp=748cbd90f97c717c8c20039c1cf688c900cd9b27;hb=c5114f6d1dd70197d14c94ac8b83c19016e76880;hpb=47d5ae2b1454553fa6d71c08862c7dfc5df97a92 diff --git a/sql/generics.lisp b/sql/generics.lisp index 748cbd9..6ca064a 100644 --- a/sql/generics.lisp +++ b/sql/generics.lisp @@ -193,3 +193,20 @@ the arguments EXPR and DATABASE.")) (defgeneric database-constraint-statement (constraints database) ) + +(defgeneric database-translate-constraint (constraint database) + (:documentation "Given a column constraint returns its +database-specific name. For example, auto-increment constraints can +have different names in different database engines.")) + +(defgeneric filter-select-list ( view-class clsql-sys::select-list database) + (:documentation + "Gives fine grained control over sql to be executed and mapped to slots + called with a dummy instance (so that class precedence can be used)") + ) + +(defgeneric view-classes-and-storable-slots (view-class &key to-database-p) + (:documentation "A method that collects all the classes and storable slots + that need to be read from or written to the database. + to-database-p should be T if we are writing this object to the database + and nil when we are reading this object from the database"))