Provided by: sqlheavy-utils_0.1.1-2_amd64 bug

NAME

       sqlheavy-gen-orm - SQLHeavy ORM Generator

SYNOPSIS

       sqlheavy-gen-orm [OPTION...] SOURCE...

DESCRIPTION

       This tool will generate a Vala file which provides an object for each table in the specified database(s),
       each of which extends the SQLHeavyRecord class.

       You  should  pass  at  least  one  SQLite  database  file,  which  it will examine to produce the output.
       Additionally, you can specifiy metadata files (which is a key file), as well as  vala  files  to  provide
       custom code in the output.

OPTIONS

       --help

       -o, --output=FILE
              Write output to FILE (defaults to stdout)

       -m, --metadata=FILE
              Load metadata from FILE

       --vapidir=DIRECTORY
              Look for package bindings in DIRECTORY

       --pkg=PACKAGE
              Include binding for PACKAGE

       -o, --output=FILE
              Output to FILE (default is stdout)

       -p, --properties
              Write properties instead of methods

METADATA FORMAT

       The  concept  of  the  metadata files is similar to that of vapigen (in fact, the entire sqlheavy-gen-orm
       tool is largely inspired by vapigen), but it uses the key file format so that it can use  the  GLib  Key-
       Value  file  parser. Databases, tables, and columns are all represented by groups, each of which may have
       any number of properties (the key value pairs).

   Selectors
       The format for the selectors is relatively  straightforward.  A  forward  slash  ("/")  is  used  as  the
       separator character, and prepending an @ to a token means that token refers to a database, and prepending
       a % means that token refers to a table. The database name is the name of the database file, not including
       the  last  dot  character  and  anything following it (i.e., the extension). An asterisk can be used as a
       wildcard. Several examples, as well as an explanation of each:

       @foo/bar/baz
              The baz symbol in the bar table in the foo database.

       @foo   The foo database

       %bar/baz
              The baz column in the bar table in any database

       baz    The baz column in any table in any database

       @foo/*/baz
              The baz column in any table in the foo database

       */bar  The bar table in any database

   Properties
       Properties are represented by key-value  pairs.  The  following  is  a  table  of  currently  implemented
       properties:
       ┌────────┬────────┬────────────┬─────────────────────────────────┐
       │  Name  │  Type  │ DB/TBL/COL │             Purpose             │
       ├────────┼────────┼────────────┼─────────────────────────────────┤
       │ name   │ string │ Y/Y/Y      │ Rename the symbol               │
       │ type   │ string │ N/N/Y      │ Set the Vala type of the column │
       │ hidden │ bool   │ Y/Y/Y      │ Do not create a binding         │
       └────────┴────────┴────────────┴─────────────────────────────────┘

   Custom Vala
       In  addition  to providing one or more SQLite database as a basis for code generation, you can provide an
       existing *.vala file. Theoretically, this will allow you to place custom code in a separate file, so that
       you can use sqlheavy-gen-orm to update the generated code without losing  whenever  the  database  schema
       changes,  and  you  will  not  lose any enhancements you made. The generated code will be merged into the
       custom vala file in order to generate the output.

HOMEPAGE AND BUG REPORT

       http://code.google.com/p/sqlheavy

AUTHORS

       Evan Nemerson

sqlheavy-gen-orm-0.0.1                            29 April 2010                              sqlheavy-gen-orm(1)