view Schema/form.def @ 24:7f00786f8210

Первая рабочая реазизация схемы и навигаторов
author Sergey
date Mon, 05 Oct 2009 00:48:49 +0400
parents 03e58a454b20
children 16ada169ca75
line wrap: on
line source

syntax ::= {{_include|_use}|container}[ {{_include|_use}|container} ...]

name ::=<\w>+

file_name ::=<\w./>+

mod_name ::= <\w>+[::<\w>+...]

_include ::= include file_name ;

_use ::= use alias mod_name ;

alias ::= <\w>+

type ::=<\w>+

multi ::=*

container ::=type [multi] name[ : expression [, expression ...]] [body];

instance ::= name[ ( expression [, expression ...])]

string ::=[{<^\\">+|<\\><\w\W>}...]

number ::=[{+|-}] <0-9>+[.<0-9>+[e[-]<0-9>+]]

bin_op ::={+|-|&|<|>|=}

un_op ::=!

expression ::= {"string"|number|instance|(expression)|{"string"|number|instance|(expression)} bin_op expression|un_op expression}

body ::= <{>
    [{body_property|container} ...]
<}>

complex_name ::= <\w>+[.<\w>+...]

body_property ::= complex_name = expression;