view Schema/schema.def @ 165:76515373dac0

Added Class::Template, Rewritten SQL::Schema 'use parent' directive instead of 'use base'
author wizard
date Sat, 23 Apr 2011 23:06:48 +0400
parents 16ada169ca75
children
line wrap: on
line source

syntax ::= header[ class ...]

name ::= <\w>+

column_name ::= {<\w>+|<[><^[]>+<]>}

type ::= name [<\<> template_list <\>>]

type_definition ::= name [<\<> args_list <\>>]

args_list ::= name [, name ...]

db_type ::= <\w>+[(<\d>+[,<\d>+])]

template_list ::= type[, type ...]

mapping ::= column_name [as db_type]

property ::= type name[ =<\>> mapping]

comment ::= #<^\n>*<\n>[ #<^\n>*<\n>...]

property_list ::= property ; [comment] [property ; [comment] ...]

base_types ::= type [, type ...]

value_type ::= value

class ::=
[comment][value_type ]type_definition [: base_types] <{>
    [comment]
    [property_list]
<}>

header_value ::= {*<^;>+ {;<\n>| header_value}|<^\n>+[;]}

header_prop ::= name = header_value

file_name ::=<\w./>+

include_item ::= include ( file_name )[;]

header ::=[ {header_prop|include_item} ...]