Created
March 16, 2017 15:36
-
-
Save AbigailBuccaneer/a851e384288a24414d944999f97ce015 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> | |
| <HTML> | |
| <HEAD> | |
| <TITLE>BNF for idl.jj</TITLE> | |
| </HEAD> | |
| <BODY> | |
| <H1 ALIGN=CENTER>BNF for idl.jj</H1> | |
| <H2 ALIGN=CENTER>TOKENS</H2> | |
| <TABLE> | |
| <!-- Special token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| /* WHITE SPACE */</PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <DEFAULT> SKIP : { | |
| " " | |
| | "\t" | |
| | "\n" | |
| | "\r" | |
| | "\f" | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| <!-- Special token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| /* COMMENTS */</PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <DEFAULT> SKIP : { | |
| <SINGLE_LINE_COMMENT: "//" (~["\n","\r"])* ("\n" | "\r" | "\r\n")?> | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <DEFAULT> SKIP : { | |
| <"/**" ~["/"]> : DOC_COMMENT | |
| | "/*" : MULTI_LINE_COMMENT | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <DOC_COMMENT,MULTI_LINE_COMMENT> MORE : { | |
| <~[]> | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <DOC_COMMENT> SPECIAL : { | |
| "*/" : DEFAULT | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <MULTI_LINE_COMMENT> SKIP : { | |
| "*/" : DEFAULT | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| <!-- Special token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| /* RESERVED WORDS AND LITERALS */</PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <DEFAULT> TOKEN : { | |
| <ARRAY: "array"> | |
| | <BOOLEAN: "boolean"> | |
| | <DOUBLE: "double"> | |
| | <ENUM: "enum"> | |
| | <ERROR: "error"> | |
| | <FALSE: "false"> | |
| | <FIXED: "fixed"> | |
| | <FLOAT: "float"> | |
| | <IDL: "idl"> | |
| | <IMPORT: "import"> | |
| | <INT: "int"> | |
| | <LONG: "long"> | |
| | <MAP: "map"> | |
| | <ONEWAY: "oneway"> | |
| | <BYTES: "bytes"> | |
| | <SCHEMA: "schema"> | |
| | <STRING: "string"> | |
| | <NULL: "null"> | |
| | <PROTOCOL: "protocol"> | |
| | <RECORD: "record"> | |
| | <THROWS: "throws"> | |
| | <TRUE: "true"> | |
| | <UNION: "union"> | |
| | <VOID: "void"> | |
| | <DATE: "date"> | |
| | <TIME: "time_ms"> | |
| | <TIMESTAMP: "timestamp_ms"> | |
| | <DECIMAL: "decimal"> | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| <!-- Special token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| /* LITERALS */</PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <DEFAULT> TOKEN : { | |
| <INTEGER_LITERAL: ("-")? (<DECIMAL_LITERAL> (["l","L"])? | <HEX_LITERAL> (["l","L"])? | <OCTAL_LITERAL> (["l","L"])?)> | |
| | <#DECIMAL_LITERAL: ["1"-"9"] (["0"-"9"])*> | |
| | <#HEX_LITERAL: "0" ["x","X"] (["0"-"9","a"-"f","A"-"F"])+> | |
| | <#OCTAL_LITERAL: "0" (["0"-"7"])*> | |
| | <FLOATING_POINT_LITERAL: ("-")? ("NaN" | "Infinity" | <DECIMAL_FLOATING_POINT_LITERAL> | <HEXADECIMAL_FLOATING_POINT_LITERAL>)> | |
| | <#DECIMAL_FLOATING_POINT_LITERAL: (["0"-"9"])+ "." (["0"-"9"])* (<DECIMAL_EXPONENT>)? (["f","F","d","D"])? | "." (["0"-"9"])+ (<DECIMAL_EXPONENT>)? (["f","F","d","D"])? | (["0"-"9"])+ <DECIMAL_EXPONENT> (["f","F","d","D"])? | (["0"-"9"])+ (<DECIMAL_EXPONENT>)? ["f","F","d","D"]> | |
| | <#DECIMAL_EXPONENT: ["e","E"] (["+","-"])? (["0"-"9"])+> | |
| | <#HEXADECIMAL_FLOATING_POINT_LITERAL: "0" ["x","X"] (["0"-"9","a"-"f","A"-"F"])+ (".")? <HEXADECIMAL_EXPONENT> (["f","F","d","D"])? | "0" ["x","X"] (["0"-"9","a"-"f","A"-"F"])* "." (["0"-"9","a"-"f","A"-"F"])+ <HEXADECIMAL_EXPONENT> (["f","F","d","D"])?> | |
| | <#HEXADECIMAL_EXPONENT: ["p","P"] (["+","-"])? (["0"-"9"])+> | |
| | <CHARACTER_LITERAL: "\'" (~["\'","\\","\n","\r"] | "\\" (["n","t","b","r","f","\\","\'","\""] | ["0"-"7"] (["0"-"7"])? | ["0"-"3"] ["0"-"7"] ["0"-"7"])) "\'"> | |
| | <STRING_LITERAL: "\"" (~["\"","\\","\n","\r"] | "\\" (["n","t","b","r","f","\\","\'","\""] | ["0"-"7"] (["0"-"7"])? | ["0"-"3"] ["0"-"7"] ["0"-"7"]))* "\""> | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| <!-- Special token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| /* IDENTIFIERS */</PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <DEFAULT> TOKEN : { | |
| <IDENTIFIER: <LETTER> (<PART_LETTER>)*> | |
| | <#LETTER: ["$","A"-"Z","_","a"-"z","\u00a2"-"\u00a5","\u00aa","\u00b5","\u00ba","\u00c0"-"\u00d6","\u00d8"-"\u00f6","\u00f8"-"\u021f","\u0222"-"\u0233","\u0250"-"\u02ad","\u02b0"-"\u02b8","\u02bb"-"\u02c1","\u02d0"-"\u02d1","\u02e0"-"\u02e4","\u02ee","\u037a","\u0386","\u0388"-"\u038a","\u038c","\u038e"-"\u03a1","\u03a3"-"\u03ce","\u03d0"-"\u03d7","\u03da"-"\u03f3","\u0400"-"\u0481","\u048c"-"\u04c4","\u04c7"-"\u04c8","\u04cb"-"\u04cc","\u04d0"-"\u04f5","\u04f8"-"\u04f9","\u0531"-"\u0556","\u0559","\u0561"-"\u0587","\u05d0"-"\u05ea","\u05f0"-"\u05f2","\u0621"-"\u063a","\u0640"-"\u064a","\u0671"-"\u06d3","\u06d5","\u06e5"-"\u06e6","\u06fa"-"\u06fc","\u0710","\u0712"-"\u072c","\u0780"-"\u07a5","\u0905"-"\u0939","\u093d","\u0950","\u0958"-"\u0961","\u0985"-"\u098c","\u098f"-"\u0990","\u0993"-"\u09a8","\u09aa"-"\u09b0","\u09b2","\u09b6"-"\u09b9","\u09dc"-"\u09dd","\u09df"-"\u09e1","\u09f0"-"\u09f3","\u0a05"-"\u0a0a","\u0a0f"-"\u0a10","\u0a13"-"\u0a28","\u0a2a"-"\u0a30","\u0a32"-"\u0a33","\u0a35"-"\u0a36","\u0a38"-"\u0a39","\u0a59"-"\u0a5c","\u0a5e","\u0a72"-"\u0a74","\u0a85"-"\u0a8b","\u0a8d","\u0a8f"-"\u0a91","\u0a93"-"\u0aa8","\u0aaa"-"\u0ab0","\u0ab2"-"\u0ab3","\u0ab5"-"\u0ab9","\u0abd","\u0ad0","\u0ae0","\u0b05"-"\u0b0c","\u0b0f"-"\u0b10","\u0b13"-"\u0b28","\u0b2a"-"\u0b30","\u0b32"-"\u0b33","\u0b36"-"\u0b39","\u0b3d","\u0b5c"-"\u0b5d","\u0b5f"-"\u0b61","\u0b85"-"\u0b8a","\u0b8e"-"\u0b90","\u0b92"-"\u0b95","\u0b99"-"\u0b9a","\u0b9c","\u0b9e"-"\u0b9f","\u0ba3"-"\u0ba4","\u0ba8"-"\u0baa","\u0bae"-"\u0bb5","\u0bb7"-"\u0bb9","\u0c05"-"\u0c0c","\u0c0e"-"\u0c10","\u0c12"-"\u0c28","\u0c2a"-"\u0c33","\u0c35"-"\u0c39","\u0c60"-"\u0c61","\u0c85"-"\u0c8c","\u0c8e"-"\u0c90","\u0c92"-"\u0ca8","\u0caa"-"\u0cb3","\u0cb5"-"\u0cb9","\u0cde","\u0ce0"-"\u0ce1","\u0d05"-"\u0d0c","\u0d0e"-"\u0d10","\u0d12"-"\u0d28","\u0d2a"-"\u0d39","\u0d60"-"\u0d61","\u0d85"-"\u0d96","\u0d9a"-"\u0db1","\u0db3"-"\u0dbb","\u0dbd","\u0dc0"-"\u0dc6","\u0e01"-"\u0e30","\u0e32"-"\u0e33","\u0e3f"-"\u0e46","\u0e81"-"\u0e82","\u0e84","\u0e87"-"\u0e88","\u0e8a","\u0e8d","\u0e94"-"\u0e97","\u0e99"-"\u0e9f","\u0ea1"-"\u0ea3","\u0ea5","\u0ea7","\u0eaa"-"\u0eab","\u0ead"-"\u0eb0","\u0eb2"-"\u0eb3","\u0ebd","\u0ec0"-"\u0ec4","\u0ec6","\u0edc"-"\u0edd","\u0f00","\u0f40"-"\u0f47","\u0f49"-"\u0f6a","\u0f88"-"\u0f8b","\u1000"-"\u1021","\u1023"-"\u1027","\u1029"-"\u102a","\u1050"-"\u1055","\u10a0"-"\u10c5","\u10d0"-"\u10f6","\u1100"-"\u1159","\u115f"-"\u11a2","\u11a8"-"\u11f9","\u1200"-"\u1206","\u1208"-"\u1246","\u1248","\u124a"-"\u124d","\u1250"-"\u1256","\u1258","\u125a"-"\u125d","\u1260"-"\u1286","\u1288","\u128a"-"\u128d","\u1290"-"\u12ae","\u12b0","\u12b2"-"\u12b5","\u12b8"-"\u12be","\u12c0","\u12c2"-"\u12c5","\u12c8"-"\u12ce","\u12d0"-"\u12d6","\u12d8"-"\u12ee","\u12f0"-"\u130e","\u1310","\u1312"-"\u1315","\u1318"-"\u131e","\u1320"-"\u1346","\u1348"-"\u135a","\u13a0"-"\u13f4","\u1401"-"\u166c","\u166f"-"\u1676","\u1681"-"\u169a","\u16a0"-"\u16ea","\u1780"-"\u17b3","\u17db","\u1820"-"\u1877","\u1880"-"\u18a8","\u1e00"-"\u1e9b","\u1ea0"-"\u1ef9","\u1f00"-"\u1f15","\u1f18"-"\u1f1d","\u1f20"-"\u1f45","\u1f48"-"\u1f4d","\u1f50"-"\u1f57","\u1f59","\u1f5b","\u1f5d","\u1f5f"-"\u1f7d","\u1f80"-"\u1fb4","\u1fb6"-"\u1fbc","\u1fbe","\u1fc2"-"\u1fc4","\u1fc6"-"\u1fcc","\u1fd0"-"\u1fd3","\u1fd6"-"\u1fdb","\u1fe0"-"\u1fec","\u1ff2"-"\u1ff4","\u1ff6"-"\u1ffc","\u203f"-"\u2040","\u207f","\u20a0"-"\u20af","\u2102","\u2107","\u210a"-"\u2113","\u2115","\u2119"-"\u211d","\u2124","\u2126","\u2128","\u212a"-"\u212d","\u212f"-"\u2131","\u2133"-"\u2139","\u2160"-"\u2183","\u3005"-"\u3007","\u3021"-"\u3029","\u3031"-"\u3035","\u3038"-"\u303a","\u3041"-"\u3094","\u309d"-"\u309e","\u30a1"-"\u30fe","\u3105"-"\u312c","\u3131"-"\u318e","\u31a0"-"\u31b7","\u3400"-"\u4db5","\u4e00"-"\u9fa5","\ua000"-"\ua48c","\uac00"-"\ud7a3","\uf900"-"\ufa2d","\ufb00"-"\ufb06","\ufb13"-"\ufb17","\ufb1d","\ufb1f"-"\ufb28","\ufb2a"-"\ufb36","\ufb38"-"\ufb3c","\ufb3e","\ufb40"-"\ufb41","\ufb43"-"\ufb44","\ufb46"-"\ufbb1","\ufbd3"-"\ufd3d","\ufd50"-"\ufd8f","\ufd92"-"\ufdc7","\ufdf0"-"\ufdfb","\ufe33"-"\ufe34","\ufe4d"-"\ufe4f","\ufe69","\ufe70"-"\ufe72","\ufe74","\ufe76"-"\ufefc","\uff04","\uff21"-"\uff3a","\uff3f","\uff41"-"\uff5a","\uff65"-"\uffbe","\uffc2"-"\uffc7","\uffca"-"\uffcf","\uffd2"-"\uffd7","\uffda"-"\uffdc","\uffe0"-"\uffe1","\uffe5"-"\uffe6"]> | |
| | <#PART_LETTER: ["\u0000"-"\b","\u000e"-"\u001b","$","0"-"9","A"-"Z","_","a"-"z","\u007f"-"\u009f","\u00a2"-"\u00a5","\u00aa","\u00b5","\u00ba","\u00c0"-"\u00d6","\u00d8"-"\u00f6","\u00f8"-"\u021f","\u0222"-"\u0233","\u0250"-"\u02ad","\u02b0"-"\u02b8","\u02bb"-"\u02c1","\u02d0"-"\u02d1","\u02e0"-"\u02e4","\u02ee","\u0300"-"\u034e","\u0360"-"\u0362","\u037a","\u0386","\u0388"-"\u038a","\u038c","\u038e"-"\u03a1","\u03a3"-"\u03ce","\u03d0"-"\u03d7","\u03da"-"\u03f3","\u0400"-"\u0481","\u0483"-"\u0486","\u048c"-"\u04c4","\u04c7"-"\u04c8","\u04cb"-"\u04cc","\u04d0"-"\u04f5","\u04f8"-"\u04f9","\u0531"-"\u0556","\u0559","\u0561"-"\u0587","\u0591"-"\u05a1","\u05a3"-"\u05b9","\u05bb"-"\u05bd","\u05bf","\u05c1"-"\u05c2","\u05c4","\u05d0"-"\u05ea","\u05f0"-"\u05f2","\u0621"-"\u063a","\u0640"-"\u0655","\u0660"-"\u0669","\u0670"-"\u06d3","\u06d5"-"\u06dc","\u06df"-"\u06e8","\u06ea"-"\u06ed","\u06f0"-"\u06fc","\u070f"-"\u072c","\u0730"-"\u074a","\u0780"-"\u07b0","\u0901"-"\u0903","\u0905"-"\u0939","\u093c"-"\u094d","\u0950"-"\u0954","\u0958"-"\u0963","\u0966"-"\u096f","\u0981"-"\u0983","\u0985"-"\u098c","\u098f"-"\u0990","\u0993"-"\u09a8","\u09aa"-"\u09b0","\u09b2","\u09b6"-"\u09b9","\u09bc","\u09be"-"\u09c4","\u09c7"-"\u09c8","\u09cb"-"\u09cd","\u09d7","\u09dc"-"\u09dd","\u09df"-"\u09e3","\u09e6"-"\u09f3","\u0a02","\u0a05"-"\u0a0a","\u0a0f"-"\u0a10","\u0a13"-"\u0a28","\u0a2a"-"\u0a30","\u0a32"-"\u0a33","\u0a35"-"\u0a36","\u0a38"-"\u0a39","\u0a3c","\u0a3e"-"\u0a42","\u0a47"-"\u0a48","\u0a4b"-"\u0a4d","\u0a59"-"\u0a5c","\u0a5e","\u0a66"-"\u0a74","\u0a81"-"\u0a83","\u0a85"-"\u0a8b","\u0a8d","\u0a8f"-"\u0a91","\u0a93"-"\u0aa8","\u0aaa"-"\u0ab0","\u0ab2"-"\u0ab3","\u0ab5"-"\u0ab9","\u0abc"-"\u0ac5","\u0ac7"-"\u0ac9","\u0acb"-"\u0acd","\u0ad0","\u0ae0","\u0ae6"-"\u0aef","\u0b01"-"\u0b03","\u0b05"-"\u0b0c","\u0b0f"-"\u0b10","\u0b13"-"\u0b28","\u0b2a"-"\u0b30","\u0b32"-"\u0b33","\u0b36"-"\u0b39","\u0b3c"-"\u0b43","\u0b47"-"\u0b48","\u0b4b"-"\u0b4d","\u0b56"-"\u0b57","\u0b5c"-"\u0b5d","\u0b5f"-"\u0b61","\u0b66"-"\u0b6f","\u0b82"-"\u0b83","\u0b85"-"\u0b8a","\u0b8e"-"\u0b90","\u0b92"-"\u0b95","\u0b99"-"\u0b9a","\u0b9c","\u0b9e"-"\u0b9f","\u0ba3"-"\u0ba4","\u0ba8"-"\u0baa","\u0bae"-"\u0bb5","\u0bb7"-"\u0bb9","\u0bbe"-"\u0bc2","\u0bc6"-"\u0bc8","\u0bca"-"\u0bcd","\u0bd7","\u0be7"-"\u0bef","\u0c01"-"\u0c03","\u0c05"-"\u0c0c","\u0c0e"-"\u0c10","\u0c12"-"\u0c28","\u0c2a"-"\u0c33","\u0c35"-"\u0c39","\u0c3e"-"\u0c44","\u0c46"-"\u0c48","\u0c4a"-"\u0c4d","\u0c55"-"\u0c56","\u0c60"-"\u0c61","\u0c66"-"\u0c6f","\u0c82"-"\u0c83","\u0c85"-"\u0c8c","\u0c8e"-"\u0c90","\u0c92"-"\u0ca8","\u0caa"-"\u0cb3","\u0cb5"-"\u0cb9","\u0cbe"-"\u0cc4","\u0cc6"-"\u0cc8","\u0cca"-"\u0ccd","\u0cd5"-"\u0cd6","\u0cde","\u0ce0"-"\u0ce1","\u0ce6"-"\u0cef","\u0d02"-"\u0d03","\u0d05"-"\u0d0c","\u0d0e"-"\u0d10","\u0d12"-"\u0d28","\u0d2a"-"\u0d39","\u0d3e"-"\u0d43","\u0d46"-"\u0d48","\u0d4a"-"\u0d4d","\u0d57","\u0d60"-"\u0d61","\u0d66"-"\u0d6f","\u0d82"-"\u0d83","\u0d85"-"\u0d96","\u0d9a"-"\u0db1","\u0db3"-"\u0dbb","\u0dbd","\u0dc0"-"\u0dc6","\u0dca","\u0dcf"-"\u0dd4","\u0dd6","\u0dd8"-"\u0ddf","\u0df2"-"\u0df3","\u0e01"-"\u0e3a","\u0e3f"-"\u0e4e","\u0e50"-"\u0e59","\u0e81"-"\u0e82","\u0e84","\u0e87"-"\u0e88","\u0e8a","\u0e8d","\u0e94"-"\u0e97","\u0e99"-"\u0e9f","\u0ea1"-"\u0ea3","\u0ea5","\u0ea7","\u0eaa"-"\u0eab","\u0ead"-"\u0eb9","\u0ebb"-"\u0ebd","\u0ec0"-"\u0ec4","\u0ec6","\u0ec8"-"\u0ecd","\u0ed0"-"\u0ed9","\u0edc"-"\u0edd","\u0f00","\u0f18"-"\u0f19","\u0f20"-"\u0f29","\u0f35","\u0f37","\u0f39","\u0f3e"-"\u0f47","\u0f49"-"\u0f6a","\u0f71"-"\u0f84","\u0f86"-"\u0f8b","\u0f90"-"\u0f97","\u0f99"-"\u0fbc","\u0fc6","\u1000"-"\u1021","\u1023"-"\u1027","\u1029"-"\u102a","\u102c"-"\u1032","\u1036"-"\u1039","\u1040"-"\u1049","\u1050"-"\u1059","\u10a0"-"\u10c5","\u10d0"-"\u10f6","\u1100"-"\u1159","\u115f"-"\u11a2","\u11a8"-"\u11f9","\u1200"-"\u1206","\u1208"-"\u1246","\u1248","\u124a"-"\u124d","\u1250"-"\u1256","\u1258","\u125a"-"\u125d","\u1260"-"\u1286","\u1288","\u128a"-"\u128d","\u1290"-"\u12ae","\u12b0","\u12b2"-"\u12b5","\u12b8"-"\u12be","\u12c0","\u12c2"-"\u12c5","\u12c8"-"\u12ce","\u12d0"-"\u12d6","\u12d8"-"\u12ee","\u12f0"-"\u130e","\u1310","\u1312"-"\u1315","\u1318"-"\u131e","\u1320"-"\u1346","\u1348"-"\u135a","\u1369"-"\u1371","\u13a0"-"\u13f4","\u1401"-"\u166c","\u166f"-"\u1676","\u1681"-"\u169a","\u16a0"-"\u16ea","\u1780"-"\u17d3","\u17db","\u17e0"-"\u17e9","\u180b"-"\u180e","\u1810"-"\u1819","\u1820"-"\u1877","\u1880"-"\u18a9","\u1e00"-"\u1e9b","\u1ea0"-"\u1ef9","\u1f00"-"\u1f15","\u1f18"-"\u1f1d","\u1f20"-"\u1f45","\u1f48"-"\u1f4d","\u1f50"-"\u1f57","\u1f59","\u1f5b","\u1f5d","\u1f5f"-"\u1f7d","\u1f80"-"\u1fb4","\u1fb6"-"\u1fbc","\u1fbe","\u1fc2"-"\u1fc4","\u1fc6"-"\u1fcc","\u1fd0"-"\u1fd3","\u1fd6"-"\u1fdb","\u1fe0"-"\u1fec","\u1ff2"-"\u1ff4","\u1ff6"-"\u1ffc","\u200c"-"\u200f","\u202a"-"\u202e","\u203f"-"\u2040","\u206a"-"\u206f","\u207f","\u20a0"-"\u20af","\u20d0"-"\u20dc","\u20e1","\u2102","\u2107","\u210a"-"\u2113","\u2115","\u2119"-"\u211d","\u2124","\u2126","\u2128","\u212a"-"\u212d","\u212f"-"\u2131","\u2133"-"\u2139","\u2160"-"\u2183","\u3005"-"\u3007","\u3021"-"\u302f","\u3031"-"\u3035","\u3038"-"\u303a","\u3041"-"\u3094","\u3099"-"\u309a","\u309d"-"\u309e","\u30a1"-"\u30fe","\u3105"-"\u312c","\u3131"-"\u318e","\u31a0"-"\u31b7","\u3400"-"\u4db5","\u4e00"-"\u9fa5","\ua000"-"\ua48c","\uac00"-"\ud7a3","\uf900"-"\ufa2d","\ufb00"-"\ufb06","\ufb13"-"\ufb17","\ufb1d"-"\ufb28","\ufb2a"-"\ufb36","\ufb38"-"\ufb3c","\ufb3e","\ufb40"-"\ufb41","\ufb43"-"\ufb44","\ufb46"-"\ufbb1","\ufbd3"-"\ufd3d","\ufd50"-"\ufd8f","\ufd92"-"\ufdc7","\ufdf0"-"\ufdfb","\ufe20"-"\ufe23","\ufe33"-"\ufe34","\ufe4d"-"\ufe4f","\ufe69","\ufe70"-"\ufe72","\ufe74","\ufe76"-"\ufefc","\ufeff","\uff04","\uff10"-"\uff19","\uff21"-"\uff3a","\uff3f","\uff41"-"\uff5a","\uff65"-"\uffbe","\uffc2"-"\uffc7","\uffca"-"\uffcf","\uffd2"-"\uffd7","\uffda"-"\uffdc","\uffe0"-"\uffe1","\uffe5"-"\uffe6","\ufff9"-"\ufffb"]> | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| <!-- Special token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| /* SEPARATORS */</PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <DEFAULT> TOKEN : { | |
| <LPAREN: "("> | |
| | <RPAREN: ")"> | |
| | <LBRACE: "{"> | |
| | <RBRACE: "}"> | |
| | <LBRACK: "["> | |
| | <RBRACK: "]"> | |
| | <COLON: ":"> | |
| | <SEMICOLON: ";"> | |
| | <COMMA: ","> | |
| | <AT: "@"> | |
| | <EQUALS: "="> | |
| | <DOT: "."> | |
| | <DASH: "-"> | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| <!-- Token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| <DEFAULT> TOKEN : { | |
| <LT: "<"> | |
| | <GT: ">"> | |
| | <TICK: "`"> | |
| } | |
| </PRE> | |
| </TD> | |
| </TR> | |
| </TABLE> | |
| <H2 ALIGN=CENTER>NON-TERMINALS</H2> | |
| <TABLE> | |
| <!-- Special token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| /******************************************** | |
| * THE AVRO IDL LANGUAGE GRAMMAR STARTS HERE * | |
| ********************************************/ | |
| /** | |
| * The input to Idl is a CompilationUnit, which is currently | |
| * just a single Protocol. | |
| */</PRE> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod1">CompilationUnit</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><A HREF="#prod2">ProtocolDeclaration</A> ( "\u001a" )? ( <STUFF_TO_IGNORE: ~[]> )? <EOF></TD> | |
| </TR> | |
| <!-- Special token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| /* | |
| * Declaration syntax follows. | |
| */</PRE> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod3">NamedSchemaDeclaration</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( <A HREF="#prod4">FixedDeclaration</A> | <A HREF="#prod5">EnumDeclaration</A> | <A HREF="#prod6">RecordDeclaration</A> )</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod7">UnionDefinition</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"union" "{" <A HREF="#prod8">Type</A> ( "," <A HREF="#prod8">Type</A> )* "}"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod2">ProtocolDeclaration</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( <A HREF="#prod9">SchemaProperty</A> )* "protocol" <A HREF="#prod10">Identifier</A> <A HREF="#prod11">ProtocolBody</A></TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod5">EnumDeclaration</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"enum" <A HREF="#prod10">Identifier</A> <A HREF="#prod12">EnumBody</A></TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod12">EnumBody</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"{" ( <A HREF="#prod13">EnumConstant</A> ( "," <A HREF="#prod13">EnumConstant</A> )* )? "}"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod13">EnumConstant</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><A HREF="#prod10">Identifier</A></TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod11">ProtocolBody</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"{" ( <IMPORT> ( ( ( <A HREF="#prod14">ImportIdl</A> | <A HREF="#prod15">ImportProtocol</A> ) ) | <A HREF="#prod16">ImportSchema</A> ) | ( <A HREF="#prod9">SchemaProperty</A> )* ( <A HREF="#prod3">NamedSchemaDeclaration</A> | <A HREF="#prod17">MessageDeclaration</A> ) )* "}"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod14">ImportIdl</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><IDL> <A HREF="#prod18">JsonString</A> ";"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod15">ImportProtocol</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><PROTOCOL> <A HREF="#prod18">JsonString</A> ";"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod16">ImportSchema</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><SCHEMA> <A HREF="#prod18">JsonString</A> ";"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod4">FixedDeclaration</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"fixed" <A HREF="#prod10">Identifier</A> "(" <INTEGER_LITERAL> ")" ";"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod6">RecordDeclaration</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( "record" | "error" ) <A HREF="#prod10">Identifier</A> "{" ( <A HREF="#prod19">FieldDeclaration</A> )* "}"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod9">SchemaProperty</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"@" <A HREF="#prod20">PropertyName</A> "(" <A HREF="#prod21">Json</A> ")"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod19">FieldDeclaration</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( <A HREF="#prod9">SchemaProperty</A> )* <A HREF="#prod8">Type</A> <A HREF="#prod22">VariableDeclarator</A> ( "," <A HREF="#prod22">VariableDeclarator</A> )* ";"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod22">VariableDeclarator</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( <A HREF="#prod9">SchemaProperty</A> )* <A HREF="#prod10">Identifier</A> ( <EQUALS> <A HREF="#prod21">Json</A> )?</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod23">MessageDocumentation</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE></TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod17">MessageDeclaration</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><A HREF="#prod23">MessageDocumentation</A> <A HREF="#prod24">ResultType</A> <A HREF="#prod10">Identifier</A> <A HREF="#prod25">FormalParameters</A> ( "oneway" | "throws" <A HREF="#prod26">ErrorList</A> )? ";"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod26">ErrorList</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><A HREF="#prod27">ReferenceType</A> ( "," <A HREF="#prod27">ReferenceType</A> )*</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod25">FormalParameters</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( "(" ( <A HREF="#prod28">FormalParameter</A> ( "," <A HREF="#prod28">FormalParameter</A> )* )? ")" )</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod28">FormalParameter</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><A HREF="#prod8">Type</A> <A HREF="#prod22">VariableDeclarator</A></TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod8">Type</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( <A HREF="#prod9">SchemaProperty</A> )* ( <A HREF="#prod27">ReferenceType</A> | <A HREF="#prod29">PrimitiveType</A> | <A HREF="#prod7">UnionDefinition</A> | <A HREF="#prod30">ArrayType</A> | <A HREF="#prod31">MapType</A> )</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod30">ArrayType</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"array" "<" <A HREF="#prod8">Type</A> ">"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod31">MapType</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"map" "<" <A HREF="#prod8">Type</A> ">"</TD> | |
| </TR> | |
| <!-- Special token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| /** | |
| * A reference to some other existing type | |
| */</PRE> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod27">ReferenceType</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( <A HREF="#prod10">Identifier</A> ( "." <A HREF="#prod32">AnyIdentifier</A> )* )</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod29">PrimitiveType</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"boolean"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"bytes"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"int"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"string"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"float"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"double"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"long"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"null"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"date"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"time_ms"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"timestamp_ms"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"decimal"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod33">DecimalTypeProperties</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"(" "," ")"</TD> | |
| </TR> | |
| <!-- Special token --> | |
| <TR> | |
| <TD> | |
| <PRE> | |
| /** | |
| * Result types are like other types, except we provide "void" as | |
| * an alias of "null" | |
| */</PRE> | |
| </TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod24">ResultType</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"void"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><A HREF="#prod8">Type</A></TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod20">PropertyName</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><IDENTIFIER> ( <DASH> <IDENTIFIER> )*</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod10">Identifier</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( <IDENTIFIER> )</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>|</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( "`" <A HREF="#prod32">AnyIdentifier</A> "`" )</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod32">AnyIdentifier</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( <ARRAY> | <BOOLEAN> | <DOUBLE> | <ENUM> | <ERROR> | <FALSE> | <FIXED> | <FLOAT> | <INT> | <LONG> | <MAP> | <BYTES> | <STRING> | <PROTOCOL> | <RECORD> | <THROWS> | <TRUE> | <UNION> | <VOID> | <DATE> | <TIME> | <TIMESTAMP> | <DECIMAL> | <IDENTIFIER> )</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod21">Json</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>( <A HREF="#prod18">JsonString</A> | ( <INTEGER_LITERAL> ) | ( <FLOATING_POINT_LITERAL> ) | <A HREF="#prod34">JsonObject</A> | <A HREF="#prod35">JsonArray</A> | ( "true" ) | ( "false" ) | ( "null" ) )</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod18">JsonString</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><STRING_LITERAL></TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod34">JsonObject</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE>"{" ( <A HREF="#prod36">JsonFields</A> )? "}"</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod36">JsonFields</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><A HREF="#prod37">JsonPair</A> ( "," <A HREF="#prod36">JsonFields</A> )?</TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod37">JsonPair</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><A HREF="#prod18">JsonString</A> <COLON> <A HREF="#prod21">Json</A></TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod35">JsonArray</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><LBRACK> ( <A HREF="#prod38">JsonElements</A> )? <RBRACK></TD> | |
| </TR> | |
| <TR> | |
| <TD ALIGN=RIGHT VALIGN=BASELINE><A NAME="prod38">JsonElements</A></TD> | |
| <TD ALIGN=CENTER VALIGN=BASELINE>::=</TD> | |
| <TD ALIGN=LEFT VALIGN=BASELINE><A HREF="#prod21">Json</A> ( "," <A HREF="#prod38">JsonElements</A> )?</TD> | |
| </TR> | |
| </TABLE> | |
| </BODY> | |
| </HTML> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment