Annotation of OpenXM/src/ox_math/documents/bnf, Revision 1.1
1.1 ! ohara 1: ## $OpenXM$
! 2:
! 3: トークンの集合::
! 4: トークンの定義は parse.h にある。
! 5: T_ ではじまるマクロがトークンである。
! 6: それ以外のトークンは次の4つ: "(", ")", ",", "\n"
! 7:
! 8: 文法規則::
! 9: 省略記法を許すのはフラグが立っているときだけ。
! 10: the start symbol は line である。
! 11:
! 12: The following BNFs define the grammer of Common Math Objects:
! 13:
! 14: line -> ox '\n'
! 15: | cmo '\n'
! 16: | '\n'
! 17:
! 18: ox -> '(' T_OX_COMMAND ',' T_SM_COMMAND ')'
! 19: | '(' T_OX_DATA ',' cmo ')'
! 20:
! 21: cmo -> '(' cmo_int32 ')'
! 22: | '(' cmo_string ')'
! 23: | '(' cmo_list ')'
! 24:
! 25: cmo_list -> T_CMO_LIST ',' T_INTEGER
! 26: | T_CMO_LIST ',' T_INTEGER ',' list_of_cmo /* 空リストも許す. */
! 27:
! 28: list_of_cmo -> cmo ',' list_of_cmo
! 29: | /* 空リストも許す. */
! 30:
! 31: cmo_null -> T_CMO_NULL
! 32:
! 33: cmo_int32 -> T_CMO_INT32 ',' T_INTEGER
! 34: cmo_string -> T_CMO_STRING ',' T_INTEGER ',' T_STRING
! 35: | T_CMO_STRING ',' T_STRING /* 省略記法 */
! 36:
! 37: cmo_zz -> T_CMO_ZZ ',' T_INTEGER ',' list_of_int
! 38: | T_CMO_ZZ ',' T_INTEGER /* 省略記法 */
! 39:
! 40: list_of_int -> T_INTEGER ',' list_of_int
! 41: | T_INTEGER
! 42:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>