diff Schema/form.def @ 0:03e58a454b20

Создан репозитарий
author Sergey
date Tue, 14 Jul 2009 12:54:37 +0400
parents
children 16ada169ca75
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Schema/form.def	Tue Jul 14 12:54:37 2009 +0400
@@ -0,0 +1,39 @@
+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;
\ No newline at end of file