mito

API Reference

mito

Abstraction layer for DB schema

MITO

No exported symbols.

Also exports

  • MITO.DAO.MIXIN:OBJECT=
  • MITO.MIGRATION.TABLE:*AUTO-MIGRATION-MODE*
  • MITO.DAO:INCLUDES
  • MITO.DAO:RECREATE-TABLE
  • MITO.DAO:DELETE-DAO
  • MITO.DAO:UPDATE-DAO
  • MITO.DAO.TABLE:DAO-CLASS
  • MITO.DAO:COUNT-DAO
  • MITO.MIGRATION.VERSIONS:UPDATE-MIGRATION-VERSION
  • MITO.MIGRATION.TABLE:MIGRATE-TABLE
  • MITO.DAO:SELECT-DAO
  • MITO.DAO.TABLE:DAO-TABLE-CLASS
  • MITO.CONNECTION:DISCONNECT-TOPLEVEL
  • MITO.DAO:CREATE-DAO
  • MITO.DB:RETRIEVE-BY-SQL
  • MITO.DAO.MIXIN:DAO-TABLE-MIXIN
  • MITO.MIGRATION.TABLE:MIGRATION-EXPRESSIONS
  • MITO.DAO:ENSURE-TABLE-EXISTS
  • MITO.DAO:RETRIEVE-DAO
  • MITO.CONNECTION:*CONNECTION*
  • MITO.ERROR:MITO-ERROR
  • MITO.DB:EXECUTE-SQL
  • MITO.ERROR:CONNECTION-NOT-ESTABLISHED
  • MITO.MIGRATION.VERSIONS:MIGRATE
  • MITO.DAO.MIXIN:OBJECT-ID
  • MITO.ERROR:NO-PRIMARY-KEYS
  • MITO.ERROR:INVALID-DEFINITION
  • MITO.DAO:DELETE-BY-VALUES
  • MITO.MIGRATION.VERSIONS:ALL-MIGRATION-EXPRESSIONS
  • MITO.DAO:FIND-DAO
  • MITO.MIGRATION.VERSIONS:GENERATE-MIGRATIONS
  • MITO.DAO.TABLE:DAO-SYNCED
  • MITO.DAO.TABLE:TABLE-DEFINITION
  • MITO.DAO:SAVE-DAO
  • MITO.LOGGER:*MITO-LOGGER-STREAM*
  • MITO.DAO.MIXIN:OBJECT-UPDATED-AT
  • MITO.DAO.TABLE:MAKE-DAO-INSTANCE
  • MITO.CONNECTION:CONNECT-TOPLEVEL
  • MITO.MIGRATION.VERSIONS:CURRENT-MIGRATION-VERSION
  • MITO.ERROR:COL-TYPE-REQUIRED
  • MITO.DAO.MIXIN:OBJECT-CREATED-AT
  • MITO.DAO:INCLUDE-FOREIGN-OBJECTS
  • MITO.DAO:INSERT-DAO

mito-core

MITO.CORE

No exported symbols.

Also exports

  • MITO.DAO.MIXIN:OBJECT=
  • MITO.DAO.TABLE:DAO-SYNCED
  • MITO.DAO:INCLUDES
  • MITO.DAO:RECREATE-TABLE
  • MITO.DAO:DELETE-DAO
  • MITO.DAO.TABLE:DAO-CLASS
  • MITO.DAO:COUNT-DAO
  • MITO.DAO:SELECT-DAO
  • MITO.CONNECTION:DISCONNECT-TOPLEVEL
  • MITO.DAO:CREATE-DAO
  • MITO.DB:RETRIEVE-BY-SQL
  • MITO.DAO.MIXIN:DAO-TABLE-MIXIN
  • MITO.DAO.MIXIN:OBJECT-UPDATED-AT
  • MITO.DAO:ENSURE-TABLE-EXISTS
  • MITO.DAO:RETRIEVE-DAO
  • MITO.CONNECTION:*CONNECTION*
  • MITO.ERROR:MITO-ERROR
  • MITO.DB:EXECUTE-SQL
  • MITO.ERROR:CONNECTION-NOT-ESTABLISHED
  • MITO.DAO.MIXIN:OBJECT-ID
  • MITO.ERROR:NO-PRIMARY-KEYS
  • MITO.ERROR:INVALID-DEFINITION
  • MITO.DAO:DELETE-BY-VALUES
  • MITO.DAO.MIXIN:OBJECT-CREATED-AT
  • MITO.DAO:FIND-DAO
  • MITO.DAO.TABLE:TABLE-DEFINITION
  • MITO.DAO:SAVE-DAO
  • MITO.LOGGER:*MITO-LOGGER-STREAM*
  • MITO.DAO.TABLE:DAO-TABLE-CLASS
  • MITO.DAO.TABLE:MAKE-DAO-INSTANCE
  • MITO.CONNECTION:CONNECT-TOPLEVEL
  • MITO.ERROR:COL-TYPE-REQUIRED
  • MITO.DAO:UPDATE-DAO
  • MITO.DAO:INCLUDE-FOREIGN-OBJECTS
  • MITO.DAO:INSERT-DAO

MITO.DAO

  • Generic-Function INSERT-DAO (obj)
  • Method INSERT-DAO ((obj record-timestamps-mixin))
  • Method INSERT-DAO ((obj record-timestamps-mixin))
  • Method INSERT-DAO ((obj record-timestamps-mixin))
  • Method INSERT-DAO ((obj dao-class))
  • Method INSERT-DAO ((obj dao-class))
  • Method INSERT-DAO ((obj dao-class))
  • Generic-Function CREATE-DAO (class &rest initargs)
  • Method CREATE-DAO ((class dao-table-class) &rest initargs)
  • Method CREATE-DAO ((class dao-table-class) &rest initargs)
  • Method CREATE-DAO ((class dao-table-class) &rest initargs)
  • Method CREATE-DAO ((class-name symbol) &rest initargs)
  • Method CREATE-DAO ((class-name symbol) &rest initargs)
  • Method CREATE-DAO ((class-name symbol) &rest initargs)
  • Generic-Function UPDATE-DAO (obj)
  • Method UPDATE-DAO ((obj record-timestamps-mixin))
  • Method UPDATE-DAO ((obj record-timestamps-mixin))
  • Method UPDATE-DAO ((obj record-timestamps-mixin))
  • Method UPDATE-DAO ((obj dao-class))
  • Method UPDATE-DAO ((obj dao-class))
  • Method UPDATE-DAO ((obj dao-class))
  • Generic-Function DELETE-DAO (obj)
  • Method DELETE-DAO ((obj dao-class))
  • Method DELETE-DAO ((obj dao-class))
  • Method DELETE-DAO ((obj dao-class))
  • Generic-Function DELETE-BY-VALUES (class &rest fields-and-values)
  • Method DELETE-BY-VALUES ((class dao-table-class) &rest fields-and-values)
  • Method DELETE-BY-VALUES ((class dao-table-class) &rest fields-and-values)
  • Method DELETE-BY-VALUES ((class dao-table-class) &rest fields-and-values)
  • Method DELETE-BY-VALUES ((class symbol) &rest fields-and-values)
  • Method DELETE-BY-VALUES ((class symbol) &rest fields-and-values)
  • Method DELETE-BY-VALUES ((class symbol) &rest fields-and-values)
  • Generic-Function SAVE-DAO (obj)
  • Method SAVE-DAO ((obj dao-class))
  • Method SAVE-DAO ((obj dao-class))
  • Method SAVE-DAO ((obj dao-class))
  • Function INCLUDE-FOREIGN-OBJECTS (foreign-class records)
  • Macro SELECT-DAO (class &body clauses)
  • Function FIND-DAO (class &rest fields-and-values)
  • Function RETRIEVE-DAO (class &rest fields-and-values)
  • Function COUNT-DAO (class &rest fields-and-values)
  • Function ENSURE-TABLE-EXISTS (class)
  • Function RECREATE-TABLE (class)

Also exports

  • MITO.DAO.TABLE:DEPENDING-TABLE-CLASSES
  • MITO.DAO.MIXIN:OBJECT-ID
  • MITO.DAO.TABLE:DAO-SYNCED
  • MITO.DAO.TABLE:TABLE-DEFINITION
  • MITO.DAO.MIXIN:OBJECT-UPDATED-AT
  • MITO.DAO.MIXIN:DAO-TABLE-MIXIN
  • MITO.DAO.MIXIN:OBJECT=
  • MITO.DAO.TABLE:MAKE-DAO-INSTANCE
  • MITO.DAO.MIXIN:AUTO-PK-MIXIN
  • MITO.DAO.MIXIN:OBJECT-CREATED-AT
  • MITO.DAO.TABLE:DAO-TABLE-CLASS
  • MITO.DAO.TABLE:DAO-CLASS
  • MITO.DAO.MIXIN:RECORD-TIMESTAMPS-MIXIN

MITO.DAO.TABLE

  • Class DAO-CLASS
    SYNCED   Accessor: DAO-SYNCED
  • Class DAO-TABLE-CLASS  (TABLE-CLASS)
    AUTO-PK
    RECORD-TIMESTAMPS
  • Function MAKE-DAO-INSTANCE (class &rest initargs)
  • Function DEPENDING-TABLE-CLASSES (class)
  • Function TABLE-DEFINITION (class &key if-not-exists)

MITO.DAO.MIXIN

  • Class DAO-TABLE-MIXIN  (TABLE-CLASS)
    No slots.
  • Class AUTO-PK-MIXIN
    ID   Accessor: %OBJECT-ID
  • Generic-Function OBJECT-ID (object)
  • Method OBJECT-ID ((object auto-pk-mixin))
  • Method OBJECT-ID ((object auto-pk-mixin))
  • Method OBJECT-ID ((object auto-pk-mixin))
  • Function (setf OBJECT-ID) (id object)
  • Generic-Function OBJECT= (object1 object2)
  • Method OBJECT= ((object1 auto-pk-mixin) (object2 auto-pk-mixin))
  • Method OBJECT= ((object1 auto-pk-mixin) (object2 auto-pk-mixin))
  • Method OBJECT= ((object1 auto-pk-mixin) (object2 auto-pk-mixin))
  • Class RECORD-TIMESTAMPS-MIXIN
    CREATED-AT   Accessor: OBJECT-CREATED-AT
    UPDATED-AT   Accessor: OBJECT-UPDATED-AT

MITO.DAO.COLUMN

  • Class DAO-TABLE-COLUMN-CLASS  (TABLE-COLUMN-CLASS)
    INFLATE
    DEFLATE
  • Generic-Function DAO-TABLE-COLUMN-INFLATE (column value)
  • Method DAO-TABLE-COLUMN-INFLATE ((column dao-table-column-class) value)
  • Method DAO-TABLE-COLUMN-INFLATE ((column dao-table-column-class) value)
  • Method DAO-TABLE-COLUMN-INFLATE ((column dao-table-column-class) value)
  • Generic-Function DAO-TABLE-COLUMN-DEFLATE (column value)
  • Method DAO-TABLE-COLUMN-DEFLATE ((column dao-table-column-class) value)
  • Method DAO-TABLE-COLUMN-DEFLATE ((column dao-table-column-class) value)
  • Method DAO-TABLE-COLUMN-DEFLATE ((column dao-table-column-class) value)
  • Generic-Function INFLATE-FOR-COL-TYPE (col-type value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :boolean)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :boolean)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :boolean)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :time)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :time)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :time)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :timestamp)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :timestamp)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :timestamp)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :date)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :date)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :date)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :datetime)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :datetime)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type (eql :datetime)) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type cons) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type cons) value)
  • Method INFLATE-FOR-COL-TYPE ((col-type cons) value)
  • Method INFLATE-FOR-COL-TYPE (col-type value)
  • Method INFLATE-FOR-COL-TYPE (col-type value)
  • Method INFLATE-FOR-COL-TYPE (col-type value)
  • Generic-Function DEFLATE-FOR-COL-TYPE (col-type value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :boolean)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :boolean)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :boolean)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :timestamp)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :timestamp)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :timestamp)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :date)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :date)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :date)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :datetime)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :datetime)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type (eql :datetime)) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type cons) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type cons) value)
  • Method DEFLATE-FOR-COL-TYPE ((col-type cons) value)
  • Method DEFLATE-FOR-COL-TYPE (col-type value)
  • Method DEFLATE-FOR-COL-TYPE (col-type value)
  • Method DEFLATE-FOR-COL-TYPE (col-type value)

MITO.CLASS

  • Generic-Function CREATE-TABLE-SXQL (class driver-type &key if-not-exists)
  • Method CREATE-TABLE-SXQL (class driver-type &key if-not-exists)
  • Method CREATE-TABLE-SXQL (class driver-type &key if-not-exists)
  • Method CREATE-TABLE-SXQL (class driver-type &key if-not-exists)

Also exports

  • MITO.CLASS.TABLE:TABLE-DIRECT-COLUMN-SLOTS
  • MITO.CLASS.TABLE:DATABASE-COLUMN-SLOTS
  • MITO.CLASS.TABLE:TABLE-PRIMARY-KEY
  • MITO.CLASS.TABLE:TABLE-SERIAL-KEY
  • MITO.CLASS.COLUMN:TABLE-COLUMN-INFO
  • MITO.CLASS.COLUMN:TABLE-COLUMN-NAME
  • MITO.CLASS.COLUMN:TABLE-COLUMN-TYPE
  • MITO.CLASS.TABLE:TABLE-NAME
  • MITO.CLASS.COLUMN:TABLE-COLUMN-CLASS
  • MITO.CLASS.TABLE:FIND-SLOT-BY-NAME
  • MITO.CLASS.TABLE:FIND-PARENT-COLUMN
  • MITO.CLASS.TABLE:TABLE-CLASS
  • MITO.CLASS.TABLE:TABLE-INDICES-INFO
  • MITO.CLASS.COLUMN:TABLE-COLUMN-NOT-NULL-P
  • MITO.CLASS.TABLE:FIND-CHILD-COLUMNS
  • MITO.CLASS.TABLE:TABLE-COLUMN-SLOTS

MITO.CLASS.TABLE

  • Class TABLE-CLASS  (STANDARD-CLASS)
    PRIMARY-KEY
    UNIQUE-KEYS
    KEYS
    TABLE-NAME
    PARENT-COLUMN-MAP
  • Generic-Function TABLE-NAME (class)
  • Method TABLE-NAME ((class table-class))
  • Method TABLE-NAME ((class table-class))
  • Method TABLE-NAME ((class table-class))
  • Generic-Function TABLE-PRIMARY-KEY (class)
  • Method TABLE-PRIMARY-KEY ((class table-class))
  • Method TABLE-PRIMARY-KEY ((class table-class))
  • Method TABLE-PRIMARY-KEY ((class table-class))
  • Generic-Function TABLE-SERIAL-KEY (class)
  • Method TABLE-SERIAL-KEY ((class table-class))
  • Method TABLE-SERIAL-KEY ((class table-class))
  • Method TABLE-SERIAL-KEY ((class table-class))
  • Function TABLE-DIRECT-COLUMN-SLOTS (class)
  • Function TABLE-COLUMN-SLOTS (class)
  • Function FIND-SLOT-BY-NAME (class slot-name &key (test #'eq))
  • Generic-Function DATABASE-COLUMN-SLOTS (class)
  • Method DATABASE-COLUMN-SLOTS ((class table-class))
  • Method DATABASE-COLUMN-SLOTS ((class table-class))
  • Method DATABASE-COLUMN-SLOTS ((class table-class))
  • Generic-Function TABLE-INDICES-INFO (class driver-type)
  • Method TABLE-INDICES-INFO (class driver-type)
  • Method TABLE-INDICES-INFO (class driver-type)
  • Method TABLE-INDICES-INFO (class driver-type)
  • Function FIND-PARENT-COLUMN (table slot)
  • Function FIND-CHILD-COLUMNS (table slot)

MITO.CLASS.COLUMN

  • Class TABLE-COLUMN-CLASS  (STANDARD-DIRECT-SLOT-DEFINITION)
    COL-TYPE   Accessor: %TABLE-COLUMN-TYPE
    REFERENCES   Reader: TABLE-COLUMN-REFERENCES
    PRIMARY-KEY   Accessor: PRIMARY-KEY-P
    GHOST   Accessor: GHOST-SLOT-P
    Option to specify slots as ghost slots. Ghost slots do not depend on a database.
  • Generic-Function TABLE-COLUMN-TYPE (column)
  • Method TABLE-COLUMN-TYPE ((column table-column-class))
  • Method TABLE-COLUMN-TYPE ((column table-column-class))
  • Method TABLE-COLUMN-TYPE ((column table-column-class))
  • Generic-Function TABLE-COLUMN-NOT-NULL-P (column)
  • Method TABLE-COLUMN-NOT-NULL-P ((column table-column-class))
  • Method TABLE-COLUMN-NOT-NULL-P ((column table-column-class))
  • Method TABLE-COLUMN-NOT-NULL-P ((column table-column-class))
  • Generic-Function TABLE-COLUMN-NAME (column)
  • Method TABLE-COLUMN-NAME ((column table-column-class))
  • Method TABLE-COLUMN-NAME ((column table-column-class))
  • Method TABLE-COLUMN-NAME ((column table-column-class))
  • Generic-Function TABLE-COLUMN-REFERENCES-COLUMN (column)
  • Generic-Function TABLE-COLUMN-INFO (column driver-type)
  • Method TABLE-COLUMN-INFO (column driver-type)
  • Method TABLE-COLUMN-INFO (column driver-type)
  • Method TABLE-COLUMN-INFO (column driver-type)
  • Method TABLE-COLUMN-INFO (column (driver-type (eql :postgres)))
  • Method TABLE-COLUMN-INFO (column (driver-type (eql :postgres)))
  • Method TABLE-COLUMN-INFO (column (driver-type (eql :postgres)))
  • Method TABLE-COLUMN-INFO (column (driver-type (eql :mysql)))
  • Method TABLE-COLUMN-INFO (column (driver-type (eql :mysql)))
  • Method TABLE-COLUMN-INFO (column (driver-type (eql :mysql)))
  • Method TABLE-COLUMN-INFO (column (driver-type (eql :sqlite3)))
  • Method TABLE-COLUMN-INFO (column (driver-type (eql :sqlite3)))
  • Method TABLE-COLUMN-INFO (column (driver-type (eql :sqlite3)))
  • Generic-Function TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column driver-type)
    Similar to table-column-info except the return value is for sxql:make-create-table.
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column (driver-type (eql :postgres)))
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column (driver-type (eql :postgres)))
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column (driver-type (eql :postgres)))
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column (driver-type (eql :sqlite3)))
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column (driver-type (eql :sqlite3)))
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column (driver-type (eql :sqlite3)))
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column (driver-type (eql :mysql)))
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column (driver-type (eql :mysql)))
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column (driver-type (eql :mysql)))
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column driver-type)
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column driver-type)
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column driver-type)
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column driver-type)
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column driver-type)
  • Method TABLE-COLUMN-INFO-FOR-CREATE-TABLE (column driver-type)

MITO.CONNECTION

  • Variable *CONNECTION*
  • Function CONNECTED-P
  • Function CHECK-CONNECTED
  • Function DRIVER-TYPE (&optional conn)
  • Function CONNECT-TOPLEVEL (driver-name &rest args &key database-name &allow-other-keys)
  • Function DISCONNECT-TOPLEVEL
  • Function CONNECTION-QUOTE-CHARACTER (conn)
  • Macro WITH-QUOTE-CHAR (&body body)

MITO.TYPE

  • Function PARSE-DBTYPE (dbtype)
  • Function GET-COLUMN-REAL-TYPE (conn name)

MITO.DB

  • Function LAST-INSERT-ID (conn table-name serial-key-name)
  • Function TABLE-INDICES (conn table-name)
  • Function COLUMN-DEFINITIONS (conn table-name)
  • Function TABLE-EXISTS-P (conn table-name)
  • Generic-Function EXECUTE-SQL (sql &optional binds)
  • Method EXECUTE-SQL ((sql sql-statement) &optional binds)
  • Method EXECUTE-SQL ((sql sql-statement) &optional binds)
  • Method EXECUTE-SQL ((sql sql-statement) &optional binds)
  • Method EXECUTE-SQL ((sql string) &optional binds)
  • Method EXECUTE-SQL ((sql string) &optional binds)
  • Method EXECUTE-SQL ((sql string) &optional binds)
  • Method EXECUTE-SQL (sql &optional binds)
  • Method EXECUTE-SQL (sql &optional binds)
  • Method EXECUTE-SQL (sql &optional binds)
  • Generic-Function RETRIEVE-BY-SQL (sql &key binds)
  • Method RETRIEVE-BY-SQL ((sql sql-statement) &key binds)
  • Method RETRIEVE-BY-SQL ((sql sql-statement) &key binds)
  • Method RETRIEVE-BY-SQL ((sql sql-statement) &key binds)
  • Method RETRIEVE-BY-SQL ((sql string) &key binds)
  • Method RETRIEVE-BY-SQL ((sql string) &key binds)
  • Method RETRIEVE-BY-SQL ((sql string) &key binds)
  • Method RETRIEVE-BY-SQL (sql &key binds)
  • Method RETRIEVE-BY-SQL (sql &key binds)
  • Method RETRIEVE-BY-SQL (sql &key binds)

MITO.DB.MYSQL

  • Function LAST-INSERT-ID (conn table-name serial-key-name)
  • Function TABLE-INDICES (conn table-name)
  • Function COLUMN-DEFINITIONS (conn table-name)

MITO.DB.POSTGRES

  • Function LAST-INSERT-ID (conn table-name serial-key-name)
  • Function COLUMN-DEFINITIONS (conn table-name)
  • Function TABLE-INDICES (conn table-name)

MITO.DB.SQLITE3

  • Function LAST-INSERT-ID (conn table-name)
  • Function COLUMN-DEFINITIONS (conn table-name)
  • Function TABLE-INDICES (conn table-name)

MITO.LOGGER

  • Variable *MITO-LOGGER-STREAM*
    nil
  • Macro WITH-SQL-LOGGING (&body body)
  • Function TRACE-SQL (sql params &optional results)

MITO.ERROR

  • Condition MITO-ERROR  (ERROR)
  • Condition INVALID-DEFINITION  (MITO-ERROR)
  • Condition COL-TYPE-REQUIRED  (INVALID-DEFINITION)
  • Condition NO-PRIMARY-KEYS  (MITO-ERROR)
  • Condition CONNECTION-NOT-ESTABLISHED  (MITO-ERROR)

MITO.UTIL

  • Function GROUP-BY-PLIST (plists &key key (test #'equal))
  • Function LIST-DIFF (a b &key sort-key sort-key-a sort-key-b (sort-fn #'string<) (key #'identity) (test #'string=))
    Compute differences two lists. Note this can be applied for a list of string-designators.
  • Function SYMBOL-NAME-LITERALLY (symbol)
  • Function LISPIFY (object)
  • Function UNLISPIFY (object)
  • Function CONTAINS-CLASS-OR-SUBCLASSES (class target-classes)
  • Function ENSURE-CLASS (class-or-class-name)

mito-migration

MITO.MIGRATION

No exported symbols.

Also exports

  • MITO.MIGRATION.VERSIONS:CURRENT-MIGRATION-VERSION
  • MITO.MIGRATION.TABLE:*AUTO-MIGRATION-MODE*
  • MITO.MIGRATION.VERSIONS:ALL-MIGRATION-EXPRESSIONS
  • MITO.MIGRATION.VERSIONS:UPDATE-MIGRATION-VERSION
  • MITO.MIGRATION.TABLE:MIGRATION-EXPRESSIONS
  • MITO.MIGRATION.TABLE:MIGRATE-TABLE
  • MITO.MIGRATION.VERSIONS:MIGRATE
  • MITO.MIGRATION.VERSIONS:GENERATE-MIGRATIONS

MITO.MIGRATION.TABLE

  • Variable *AUTO-MIGRATION-MODE*
    nil
  • Generic-Function MIGRATE-TABLE (class)
  • Method MIGRATE-TABLE ((class dao-table-class))
  • Method MIGRATE-TABLE ((class dao-table-class))
  • Method MIGRATE-TABLE ((class dao-table-class))
  • Method MIGRATE-TABLE ((class symbol))
  • Method MIGRATE-TABLE ((class symbol))
  • Method MIGRATE-TABLE ((class symbol))
  • Function MIGRATION-EXPRESSIONS (class &optional (driver-type (driver-type *connection*)))

MITO.MIGRATION.VERSIONS

  • Function ALL-MIGRATION-EXPRESSIONS
  • Function CURRENT-MIGRATION-VERSION
  • Function UPDATE-MIGRATION-VERSION (version)
  • Function GENERATE-MIGRATIONS (directory)
  • Function MIGRATE (directory &key dry-run)

MITO.MIGRATION.SXQL

Extansions of SxQL for Mito.Migration
No exported symbols.

mito-test

Test system for mito

MITO-TEST.UTIL

  • Function DISCONNECT-FROM-TESTDB (conn)
  • Function CONNECT-TO-TESTDB (driver-type)
  • Function RECONNECT-TO-TESTDB (conn)
  • Macro IS-TABLE-CLASS (driver class-definition create-table &optional desc)

MITO-TEST.DB.MAIN

  • Function RUN-DB-TESTS (conn)