私は PEGjs 文法を学んでおり、次のヘルプまたはガイドをリクエストしています。
私は次のような機能を持っていますPRODUCT(), SUM(), DIVIDE()
PRODUCT は number /PRODUCT()/SUM()/DIVIDE(
) をパラメーターとして使用できます (カンマで区切られた任意の数字)
ex: PRODUCT(2, 5, SUM(5, 6, 7), DIVIDE(5, 2), PRODUCT(4, 6, 20, 12))
同じように、SUM はコンマで区切られた任意の数のパラメーターを取ることができます。
Ex: SUM(4, 5, 10, DIVIDE(SUM(2, 5, 6), 3))
DIVIDE は 2 つのパラメーター (2 つが必須)、数値または別の関数を取ります
Ex: DIVIDE(3, PRODUCT(3, 4, SUM(2, 3)))
どうすれば達成できるか教えてくれますか?
今までのルール
start = sum
/multiply
multiply = "PRODUCT("a:digit "," __ b:digit ")" {return a * b}
sum = "SUM("a:digit "," b:digit ")" {return a + b}
digit = [0-9]
__ = WhiteSpace*
WhiteSpace "whitespace"
= [ \t\r\n]
上記のルールは、2 つの数値の積/合計のみをサポートします。上記を達成するにはどうすればよいですか?
前もって感謝します Manjunath Reddy