onnx-proto.js 58 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737
  1. var $root = protobuf.get('onnx');
  2. $root.onnx = {};
  3. $root.onnx.Version = {
  4. "_START_VERSION": 0,
  5. "IR_VERSION_2017_10_10": 1,
  6. "IR_VERSION_2017_10_30": 2,
  7. "IR_VERSION_2017_11_3": 3,
  8. "IR_VERSION_2019_1_22": 4,
  9. "IR_VERSION_2019_3_18": 5,
  10. "IR_VERSION_2019_9_19": 6,
  11. "IR_VERSION_2020_5_8": 7,
  12. "IR_VERSION": 8
  13. };
  14. $root.onnx.AttributeProto = class AttributeProto {
  15. constructor() {
  16. this.floats = [];
  17. this.ints = [];
  18. this.strings = [];
  19. this.tensors = [];
  20. this.graphs = [];
  21. this.sparse_tensors = [];
  22. this.type_protos = [];
  23. }
  24. static decode(reader, length) {
  25. const message = new $root.onnx.AttributeProto();
  26. const end = length !== undefined ? reader.position + length : reader.length;
  27. while (reader.position < end) {
  28. const tag = reader.uint32();
  29. switch (tag >>> 3) {
  30. case 1:
  31. message.name = reader.string();
  32. break;
  33. case 21:
  34. message.ref_attr_name = reader.string();
  35. break;
  36. case 13:
  37. message.doc_string = reader.string();
  38. break;
  39. case 20:
  40. message.type = reader.int32();
  41. break;
  42. case 2:
  43. message.f = reader.float();
  44. break;
  45. case 3:
  46. message.i = reader.int64();
  47. break;
  48. case 4:
  49. message.s = reader.bytes();
  50. break;
  51. case 5:
  52. message.t = $root.onnx.TensorProto.decode(reader, reader.uint32());
  53. break;
  54. case 6:
  55. message.g = $root.onnx.GraphProto.decode(reader, reader.uint32());
  56. break;
  57. case 22:
  58. message.sparse_tensor = $root.onnx.SparseTensorProto.decode(reader, reader.uint32());
  59. break;
  60. case 14:
  61. message.tp = $root.onnx.TypeProto.decode(reader, reader.uint32());
  62. break;
  63. case 7:
  64. message.floats = reader.floats(message.floats, tag);
  65. break;
  66. case 8:
  67. message.ints = reader.array(message.ints, () => reader.int64(), tag);
  68. break;
  69. case 9:
  70. message.strings.push(reader.bytes());
  71. break;
  72. case 10:
  73. message.tensors.push($root.onnx.TensorProto.decode(reader, reader.uint32()));
  74. break;
  75. case 11:
  76. message.graphs.push($root.onnx.GraphProto.decode(reader, reader.uint32()));
  77. break;
  78. case 23:
  79. message.sparse_tensors.push($root.onnx.SparseTensorProto.decode(reader, reader.uint32()));
  80. break;
  81. case 15:
  82. message.type_protos.push($root.onnx.TypeProto.decode(reader, reader.uint32()));
  83. break;
  84. default:
  85. reader.skipType(tag & 7);
  86. break;
  87. }
  88. }
  89. return message;
  90. }
  91. static decodeText(reader) {
  92. const message = new $root.onnx.AttributeProto();
  93. reader.start();
  94. while (!reader.end()) {
  95. const tag = reader.tag();
  96. switch (tag) {
  97. case "name":
  98. message.name = reader.string();
  99. break;
  100. case "ref_attr_name":
  101. message.ref_attr_name = reader.string();
  102. break;
  103. case "doc_string":
  104. message.doc_string = reader.string();
  105. break;
  106. case "type":
  107. message.type = reader.enum($root.onnx.AttributeProto.AttributeType);
  108. break;
  109. case "f":
  110. message.f = reader.float();
  111. break;
  112. case "i":
  113. message.i = reader.int64();
  114. break;
  115. case "s":
  116. message.s = reader.bytes();
  117. break;
  118. case "t":
  119. message.t = $root.onnx.TensorProto.decodeText(reader);
  120. break;
  121. case "g":
  122. message.g = $root.onnx.GraphProto.decodeText(reader);
  123. break;
  124. case "sparse_tensor":
  125. message.sparse_tensor = $root.onnx.SparseTensorProto.decodeText(reader);
  126. break;
  127. case "tp":
  128. message.tp = $root.onnx.TypeProto.decodeText(reader);
  129. break;
  130. case "floats":
  131. reader.array(message.floats, () => reader.float());
  132. break;
  133. case "ints":
  134. reader.array(message.ints, () => reader.int64());
  135. break;
  136. case "strings":
  137. reader.array(message.strings, () => reader.bytes());
  138. break;
  139. case "tensors":
  140. message.tensors.push($root.onnx.TensorProto.decodeText(reader));
  141. break;
  142. case "graphs":
  143. message.graphs.push($root.onnx.GraphProto.decodeText(reader));
  144. break;
  145. case "sparse_tensors":
  146. message.sparse_tensors.push($root.onnx.SparseTensorProto.decodeText(reader));
  147. break;
  148. case "type_protos":
  149. message.type_protos.push($root.onnx.TypeProto.decodeText(reader));
  150. break;
  151. default:
  152. reader.field(tag, message);
  153. break;
  154. }
  155. }
  156. return message;
  157. }
  158. };
  159. $root.onnx.AttributeProto.prototype.name = "";
  160. $root.onnx.AttributeProto.prototype.ref_attr_name = "";
  161. $root.onnx.AttributeProto.prototype.doc_string = "";
  162. $root.onnx.AttributeProto.prototype.type = 0;
  163. $root.onnx.AttributeProto.prototype.f = 0;
  164. $root.onnx.AttributeProto.prototype.i = protobuf.Int64.create(0);
  165. $root.onnx.AttributeProto.prototype.s = new Uint8Array([]);
  166. $root.onnx.AttributeProto.prototype.t = null;
  167. $root.onnx.AttributeProto.prototype.g = null;
  168. $root.onnx.AttributeProto.prototype.sparse_tensor = null;
  169. $root.onnx.AttributeProto.prototype.tp = null;
  170. $root.onnx.AttributeProto.AttributeType = {
  171. "UNDEFINED": 0,
  172. "FLOAT": 1,
  173. "INT": 2,
  174. "STRING": 3,
  175. "TENSOR": 4,
  176. "GRAPH": 5,
  177. "SPARSE_TENSOR": 11,
  178. "TYPE_PROTO": 13,
  179. "FLOATS": 6,
  180. "INTS": 7,
  181. "STRINGS": 8,
  182. "TENSORS": 9,
  183. "GRAPHS": 10,
  184. "SPARSE_TENSORS": 12,
  185. "TYPE_PROTOS": 14
  186. };
  187. $root.onnx.ValueInfoProto = class ValueInfoProto {
  188. constructor() {
  189. }
  190. static decode(reader, length) {
  191. const message = new $root.onnx.ValueInfoProto();
  192. const end = length !== undefined ? reader.position + length : reader.length;
  193. while (reader.position < end) {
  194. const tag = reader.uint32();
  195. switch (tag >>> 3) {
  196. case 1:
  197. message.name = reader.string();
  198. break;
  199. case 2:
  200. message.type = $root.onnx.TypeProto.decode(reader, reader.uint32());
  201. break;
  202. case 3:
  203. message.doc_string = reader.string();
  204. break;
  205. default:
  206. reader.skipType(tag & 7);
  207. break;
  208. }
  209. }
  210. return message;
  211. }
  212. static decodeText(reader) {
  213. const message = new $root.onnx.ValueInfoProto();
  214. reader.start();
  215. while (!reader.end()) {
  216. const tag = reader.tag();
  217. switch (tag) {
  218. case "name":
  219. message.name = reader.string();
  220. break;
  221. case "type":
  222. message.type = $root.onnx.TypeProto.decodeText(reader);
  223. break;
  224. case "doc_string":
  225. message.doc_string = reader.string();
  226. break;
  227. default:
  228. reader.field(tag, message);
  229. break;
  230. }
  231. }
  232. return message;
  233. }
  234. };
  235. $root.onnx.ValueInfoProto.prototype.name = "";
  236. $root.onnx.ValueInfoProto.prototype.type = null;
  237. $root.onnx.ValueInfoProto.prototype.doc_string = "";
  238. $root.onnx.NodeProto = class NodeProto {
  239. constructor() {
  240. this.input = [];
  241. this.output = [];
  242. this.attribute = [];
  243. }
  244. static decode(reader, length) {
  245. const message = new $root.onnx.NodeProto();
  246. const end = length !== undefined ? reader.position + length : reader.length;
  247. while (reader.position < end) {
  248. const tag = reader.uint32();
  249. switch (tag >>> 3) {
  250. case 1:
  251. message.input.push(reader.string());
  252. break;
  253. case 2:
  254. message.output.push(reader.string());
  255. break;
  256. case 3:
  257. message.name = reader.string();
  258. break;
  259. case 4:
  260. message.op_type = reader.string();
  261. break;
  262. case 7:
  263. message.domain = reader.string();
  264. break;
  265. case 5:
  266. message.attribute.push($root.onnx.AttributeProto.decode(reader, reader.uint32()));
  267. break;
  268. case 6:
  269. message.doc_string = reader.string();
  270. break;
  271. default:
  272. reader.skipType(tag & 7);
  273. break;
  274. }
  275. }
  276. return message;
  277. }
  278. static decodeText(reader) {
  279. const message = new $root.onnx.NodeProto();
  280. reader.start();
  281. while (!reader.end()) {
  282. const tag = reader.tag();
  283. switch (tag) {
  284. case "input":
  285. reader.array(message.input, () => reader.string());
  286. break;
  287. case "output":
  288. reader.array(message.output, () => reader.string());
  289. break;
  290. case "name":
  291. message.name = reader.string();
  292. break;
  293. case "op_type":
  294. message.op_type = reader.string();
  295. break;
  296. case "domain":
  297. message.domain = reader.string();
  298. break;
  299. case "attribute":
  300. message.attribute.push($root.onnx.AttributeProto.decodeText(reader));
  301. break;
  302. case "doc_string":
  303. message.doc_string = reader.string();
  304. break;
  305. default:
  306. reader.field(tag, message);
  307. break;
  308. }
  309. }
  310. return message;
  311. }
  312. };
  313. $root.onnx.NodeProto.prototype.name = "";
  314. $root.onnx.NodeProto.prototype.op_type = "";
  315. $root.onnx.NodeProto.prototype.domain = "";
  316. $root.onnx.NodeProto.prototype.doc_string = "";
  317. $root.onnx.TrainingInfoProto = class TrainingInfoProto {
  318. constructor() {
  319. this.initialization_binding = [];
  320. this.update_binding = [];
  321. }
  322. static decode(reader, length) {
  323. const message = new $root.onnx.TrainingInfoProto();
  324. const end = length !== undefined ? reader.position + length : reader.length;
  325. while (reader.position < end) {
  326. const tag = reader.uint32();
  327. switch (tag >>> 3) {
  328. case 1:
  329. message.initialization = $root.onnx.GraphProto.decode(reader, reader.uint32());
  330. break;
  331. case 2:
  332. message.algorithm = $root.onnx.GraphProto.decode(reader, reader.uint32());
  333. break;
  334. case 3:
  335. message.initialization_binding.push($root.onnx.StringStringEntryProto.decode(reader, reader.uint32()));
  336. break;
  337. case 4:
  338. message.update_binding.push($root.onnx.StringStringEntryProto.decode(reader, reader.uint32()));
  339. break;
  340. default:
  341. reader.skipType(tag & 7);
  342. break;
  343. }
  344. }
  345. return message;
  346. }
  347. static decodeText(reader) {
  348. const message = new $root.onnx.TrainingInfoProto();
  349. reader.start();
  350. while (!reader.end()) {
  351. const tag = reader.tag();
  352. switch (tag) {
  353. case "initialization":
  354. message.initialization = $root.onnx.GraphProto.decodeText(reader);
  355. break;
  356. case "algorithm":
  357. message.algorithm = $root.onnx.GraphProto.decodeText(reader);
  358. break;
  359. case "initialization_binding":
  360. message.initialization_binding.push($root.onnx.StringStringEntryProto.decodeText(reader));
  361. break;
  362. case "update_binding":
  363. message.update_binding.push($root.onnx.StringStringEntryProto.decodeText(reader));
  364. break;
  365. default:
  366. reader.field(tag, message);
  367. break;
  368. }
  369. }
  370. return message;
  371. }
  372. };
  373. $root.onnx.TrainingInfoProto.prototype.initialization = null;
  374. $root.onnx.TrainingInfoProto.prototype.algorithm = null;
  375. $root.onnx.ModelProto = class ModelProto {
  376. constructor() {
  377. this.opset_import = [];
  378. this.metadata_props = [];
  379. this.training_info = [];
  380. this.functions = [];
  381. }
  382. static decode(reader, length) {
  383. const message = new $root.onnx.ModelProto();
  384. const end = length !== undefined ? reader.position + length : reader.length;
  385. while (reader.position < end) {
  386. const tag = reader.uint32();
  387. switch (tag >>> 3) {
  388. case 1:
  389. message.ir_version = reader.int64();
  390. break;
  391. case 8:
  392. message.opset_import.push($root.onnx.OperatorSetIdProto.decode(reader, reader.uint32()));
  393. break;
  394. case 2:
  395. message.producer_name = reader.string();
  396. break;
  397. case 3:
  398. message.producer_version = reader.string();
  399. break;
  400. case 4:
  401. message.domain = reader.string();
  402. break;
  403. case 5:
  404. message.model_version = reader.int64();
  405. break;
  406. case 6:
  407. message.doc_string = reader.string();
  408. break;
  409. case 7:
  410. message.graph = $root.onnx.GraphProto.decode(reader, reader.uint32());
  411. break;
  412. case 14:
  413. message.metadata_props.push($root.onnx.StringStringEntryProto.decode(reader, reader.uint32()));
  414. break;
  415. case 20:
  416. message.training_info.push($root.onnx.TrainingInfoProto.decode(reader, reader.uint32()));
  417. break;
  418. case 25:
  419. message.functions.push($root.onnx.FunctionProto.decode(reader, reader.uint32()));
  420. break;
  421. default:
  422. reader.skipType(tag & 7);
  423. break;
  424. }
  425. }
  426. return message;
  427. }
  428. static decodeText(reader) {
  429. const message = new $root.onnx.ModelProto();
  430. reader.start();
  431. while (!reader.end()) {
  432. const tag = reader.tag();
  433. switch (tag) {
  434. case "ir_version":
  435. message.ir_version = reader.int64();
  436. break;
  437. case "opset_import":
  438. message.opset_import.push($root.onnx.OperatorSetIdProto.decodeText(reader));
  439. break;
  440. case "producer_name":
  441. message.producer_name = reader.string();
  442. break;
  443. case "producer_version":
  444. message.producer_version = reader.string();
  445. break;
  446. case "domain":
  447. message.domain = reader.string();
  448. break;
  449. case "model_version":
  450. message.model_version = reader.int64();
  451. break;
  452. case "doc_string":
  453. message.doc_string = reader.string();
  454. break;
  455. case "graph":
  456. message.graph = $root.onnx.GraphProto.decodeText(reader);
  457. break;
  458. case "metadata_props":
  459. message.metadata_props.push($root.onnx.StringStringEntryProto.decodeText(reader));
  460. break;
  461. case "training_info":
  462. message.training_info.push($root.onnx.TrainingInfoProto.decodeText(reader));
  463. break;
  464. case "functions":
  465. message.functions.push($root.onnx.FunctionProto.decodeText(reader));
  466. break;
  467. default:
  468. reader.field(tag, message);
  469. break;
  470. }
  471. }
  472. return message;
  473. }
  474. };
  475. $root.onnx.ModelProto.prototype.ir_version = protobuf.Int64.create(0);
  476. $root.onnx.ModelProto.prototype.producer_name = "";
  477. $root.onnx.ModelProto.prototype.producer_version = "";
  478. $root.onnx.ModelProto.prototype.domain = "";
  479. $root.onnx.ModelProto.prototype.model_version = protobuf.Int64.create(0);
  480. $root.onnx.ModelProto.prototype.doc_string = "";
  481. $root.onnx.ModelProto.prototype.graph = null;
  482. $root.onnx.StringStringEntryProto = class StringStringEntryProto {
  483. constructor() {
  484. }
  485. static decode(reader, length) {
  486. const message = new $root.onnx.StringStringEntryProto();
  487. const end = length !== undefined ? reader.position + length : reader.length;
  488. while (reader.position < end) {
  489. const tag = reader.uint32();
  490. switch (tag >>> 3) {
  491. case 1:
  492. message.key = reader.string();
  493. break;
  494. case 2:
  495. message.value = reader.string();
  496. break;
  497. default:
  498. reader.skipType(tag & 7);
  499. break;
  500. }
  501. }
  502. return message;
  503. }
  504. static decodeText(reader) {
  505. const message = new $root.onnx.StringStringEntryProto();
  506. reader.start();
  507. while (!reader.end()) {
  508. const tag = reader.tag();
  509. switch (tag) {
  510. case "key":
  511. message.key = reader.string();
  512. break;
  513. case "value":
  514. message.value = reader.string();
  515. break;
  516. default:
  517. reader.field(tag, message);
  518. break;
  519. }
  520. }
  521. return message;
  522. }
  523. };
  524. $root.onnx.StringStringEntryProto.prototype.key = "";
  525. $root.onnx.StringStringEntryProto.prototype.value = "";
  526. $root.onnx.TensorAnnotation = class TensorAnnotation {
  527. constructor() {
  528. this.quant_parameter_tensor_names = [];
  529. }
  530. static decode(reader, length) {
  531. const message = new $root.onnx.TensorAnnotation();
  532. const end = length !== undefined ? reader.position + length : reader.length;
  533. while (reader.position < end) {
  534. const tag = reader.uint32();
  535. switch (tag >>> 3) {
  536. case 1:
  537. message.tensor_name = reader.string();
  538. break;
  539. case 2:
  540. message.quant_parameter_tensor_names.push($root.onnx.StringStringEntryProto.decode(reader, reader.uint32()));
  541. break;
  542. default:
  543. reader.skipType(tag & 7);
  544. break;
  545. }
  546. }
  547. return message;
  548. }
  549. static decodeText(reader) {
  550. const message = new $root.onnx.TensorAnnotation();
  551. reader.start();
  552. while (!reader.end()) {
  553. const tag = reader.tag();
  554. switch (tag) {
  555. case "tensor_name":
  556. message.tensor_name = reader.string();
  557. break;
  558. case "quant_parameter_tensor_names":
  559. message.quant_parameter_tensor_names.push($root.onnx.StringStringEntryProto.decodeText(reader));
  560. break;
  561. default:
  562. reader.field(tag, message);
  563. break;
  564. }
  565. }
  566. return message;
  567. }
  568. };
  569. $root.onnx.TensorAnnotation.prototype.tensor_name = "";
  570. $root.onnx.GraphProto = class GraphProto {
  571. constructor() {
  572. this.node = [];
  573. this.initializer = [];
  574. this.sparse_initializer = [];
  575. this.input = [];
  576. this.output = [];
  577. this.value_info = [];
  578. this.quantization_annotation = [];
  579. }
  580. static decode(reader, length) {
  581. const message = new $root.onnx.GraphProto();
  582. const end = length !== undefined ? reader.position + length : reader.length;
  583. while (reader.position < end) {
  584. const tag = reader.uint32();
  585. switch (tag >>> 3) {
  586. case 1:
  587. message.node.push($root.onnx.NodeProto.decode(reader, reader.uint32()));
  588. break;
  589. case 2:
  590. message.name = reader.string();
  591. break;
  592. case 5:
  593. message.initializer.push($root.onnx.TensorProto.decode(reader, reader.uint32()));
  594. break;
  595. case 15:
  596. message.sparse_initializer.push($root.onnx.SparseTensorProto.decode(reader, reader.uint32()));
  597. break;
  598. case 10:
  599. message.doc_string = reader.string();
  600. break;
  601. case 11:
  602. message.input.push($root.onnx.ValueInfoProto.decode(reader, reader.uint32()));
  603. break;
  604. case 12:
  605. message.output.push($root.onnx.ValueInfoProto.decode(reader, reader.uint32()));
  606. break;
  607. case 13:
  608. message.value_info.push($root.onnx.ValueInfoProto.decode(reader, reader.uint32()));
  609. break;
  610. case 14:
  611. message.quantization_annotation.push($root.onnx.TensorAnnotation.decode(reader, reader.uint32()));
  612. break;
  613. default:
  614. reader.skipType(tag & 7);
  615. break;
  616. }
  617. }
  618. return message;
  619. }
  620. static decodeText(reader) {
  621. const message = new $root.onnx.GraphProto();
  622. reader.start();
  623. while (!reader.end()) {
  624. const tag = reader.tag();
  625. switch (tag) {
  626. case "node":
  627. message.node.push($root.onnx.NodeProto.decodeText(reader));
  628. break;
  629. case "name":
  630. message.name = reader.string();
  631. break;
  632. case "initializer":
  633. message.initializer.push($root.onnx.TensorProto.decodeText(reader));
  634. break;
  635. case "sparse_initializer":
  636. message.sparse_initializer.push($root.onnx.SparseTensorProto.decodeText(reader));
  637. break;
  638. case "doc_string":
  639. message.doc_string = reader.string();
  640. break;
  641. case "input":
  642. message.input.push($root.onnx.ValueInfoProto.decodeText(reader));
  643. break;
  644. case "output":
  645. message.output.push($root.onnx.ValueInfoProto.decodeText(reader));
  646. break;
  647. case "value_info":
  648. message.value_info.push($root.onnx.ValueInfoProto.decodeText(reader));
  649. break;
  650. case "quantization_annotation":
  651. message.quantization_annotation.push($root.onnx.TensorAnnotation.decodeText(reader));
  652. break;
  653. default:
  654. reader.field(tag, message);
  655. break;
  656. }
  657. }
  658. return message;
  659. }
  660. };
  661. $root.onnx.GraphProto.prototype.name = "";
  662. $root.onnx.GraphProto.prototype.doc_string = "";
  663. $root.onnx.TensorProto = class TensorProto {
  664. constructor() {
  665. this.dims = [];
  666. this.float_data = [];
  667. this.int32_data = [];
  668. this.string_data = [];
  669. this.int64_data = [];
  670. this.external_data = [];
  671. this.double_data = [];
  672. this.uint64_data = [];
  673. }
  674. static decode(reader, length) {
  675. const message = new $root.onnx.TensorProto();
  676. const end = length !== undefined ? reader.position + length : reader.length;
  677. while (reader.position < end) {
  678. const tag = reader.uint32();
  679. switch (tag >>> 3) {
  680. case 1:
  681. message.dims = reader.array(message.dims, () => reader.int64(), tag);
  682. break;
  683. case 2:
  684. message.data_type = reader.int32();
  685. break;
  686. case 3:
  687. message.segment = $root.onnx.TensorProto.Segment.decode(reader, reader.uint32());
  688. break;
  689. case 4:
  690. message.float_data = reader.floats(message.float_data, tag);
  691. break;
  692. case 5:
  693. message.int32_data = reader.array(message.int32_data, () => reader.int32(), tag);
  694. break;
  695. case 6:
  696. message.string_data.push(reader.bytes());
  697. break;
  698. case 7:
  699. message.int64_data = reader.array(message.int64_data, () => reader.int64(), tag);
  700. break;
  701. case 8:
  702. message.name = reader.string();
  703. break;
  704. case 12:
  705. message.doc_string = reader.string();
  706. break;
  707. case 9:
  708. message.raw_data = reader.bytes();
  709. break;
  710. case 13:
  711. message.external_data.push($root.onnx.StringStringEntryProto.decode(reader, reader.uint32()));
  712. break;
  713. case 14:
  714. message.data_location = reader.int32();
  715. break;
  716. case 10:
  717. message.double_data = reader.doubles(message.double_data, tag);
  718. break;
  719. case 11:
  720. message.uint64_data = reader.array(message.uint64_data, () => reader.uint64(), tag);
  721. break;
  722. default:
  723. reader.skipType(tag & 7);
  724. break;
  725. }
  726. }
  727. return message;
  728. }
  729. static decodeText(reader) {
  730. const message = new $root.onnx.TensorProto();
  731. reader.start();
  732. while (!reader.end()) {
  733. const tag = reader.tag();
  734. switch (tag) {
  735. case "dims":
  736. reader.array(message.dims, () => reader.int64());
  737. break;
  738. case "data_type":
  739. message.data_type = reader.int32();
  740. break;
  741. case "segment":
  742. message.segment = $root.onnx.TensorProto.Segment.decodeText(reader);
  743. break;
  744. case "float_data":
  745. reader.array(message.float_data, () => reader.float());
  746. break;
  747. case "int32_data":
  748. reader.array(message.int32_data, () => reader.int32());
  749. break;
  750. case "string_data":
  751. reader.array(message.string_data, () => reader.bytes());
  752. break;
  753. case "int64_data":
  754. reader.array(message.int64_data, () => reader.int64());
  755. break;
  756. case "name":
  757. message.name = reader.string();
  758. break;
  759. case "doc_string":
  760. message.doc_string = reader.string();
  761. break;
  762. case "raw_data":
  763. message.raw_data = reader.bytes();
  764. break;
  765. case "external_data":
  766. message.external_data.push($root.onnx.StringStringEntryProto.decodeText(reader));
  767. break;
  768. case "data_location":
  769. message.data_location = reader.enum($root.onnx.TensorProto.DataLocation);
  770. break;
  771. case "double_data":
  772. reader.array(message.double_data, () => reader.double());
  773. break;
  774. case "uint64_data":
  775. reader.array(message.uint64_data, () => reader.uint64());
  776. break;
  777. default:
  778. reader.field(tag, message);
  779. break;
  780. }
  781. }
  782. return message;
  783. }
  784. };
  785. $root.onnx.TensorProto.prototype.data_type = 0;
  786. $root.onnx.TensorProto.prototype.segment = null;
  787. $root.onnx.TensorProto.prototype.name = "";
  788. $root.onnx.TensorProto.prototype.doc_string = "";
  789. $root.onnx.TensorProto.prototype.raw_data = new Uint8Array([]);
  790. $root.onnx.TensorProto.prototype.data_location = 0;
  791. $root.onnx.TensorProto.DataType = {
  792. "UNDEFINED": 0,
  793. "FLOAT": 1,
  794. "UINT8": 2,
  795. "INT8": 3,
  796. "UINT16": 4,
  797. "INT16": 5,
  798. "INT32": 6,
  799. "INT64": 7,
  800. "STRING": 8,
  801. "BOOL": 9,
  802. "FLOAT16": 10,
  803. "DOUBLE": 11,
  804. "UINT32": 12,
  805. "UINT64": 13,
  806. "COMPLEX64": 14,
  807. "COMPLEX128": 15,
  808. "BFLOAT16": 16
  809. };
  810. $root.onnx.TensorProto.Segment = class Segment {
  811. constructor() {
  812. }
  813. static decode(reader, length) {
  814. const message = new $root.onnx.TensorProto.Segment();
  815. const end = length !== undefined ? reader.position + length : reader.length;
  816. while (reader.position < end) {
  817. const tag = reader.uint32();
  818. switch (tag >>> 3) {
  819. case 1:
  820. message.begin = reader.int64();
  821. break;
  822. case 2:
  823. message.end = reader.int64();
  824. break;
  825. default:
  826. reader.skipType(tag & 7);
  827. break;
  828. }
  829. }
  830. return message;
  831. }
  832. static decodeText(reader) {
  833. const message = new $root.onnx.TensorProto.Segment();
  834. reader.start();
  835. while (!reader.end()) {
  836. const tag = reader.tag();
  837. switch (tag) {
  838. case "begin":
  839. message.begin = reader.int64();
  840. break;
  841. case "end":
  842. message.end = reader.int64();
  843. break;
  844. default:
  845. reader.field(tag, message);
  846. break;
  847. }
  848. }
  849. return message;
  850. }
  851. };
  852. $root.onnx.TensorProto.Segment.prototype.begin = protobuf.Int64.create(0);
  853. $root.onnx.TensorProto.Segment.prototype.end = protobuf.Int64.create(0);
  854. $root.onnx.TensorProto.DataLocation = {
  855. "DEFAULT": 0,
  856. "EXTERNAL": 1
  857. };
  858. $root.onnx.SparseTensorProto = class SparseTensorProto {
  859. constructor() {
  860. this.dims = [];
  861. }
  862. static decode(reader, length) {
  863. const message = new $root.onnx.SparseTensorProto();
  864. const end = length !== undefined ? reader.position + length : reader.length;
  865. while (reader.position < end) {
  866. const tag = reader.uint32();
  867. switch (tag >>> 3) {
  868. case 1:
  869. message.values = $root.onnx.TensorProto.decode(reader, reader.uint32());
  870. break;
  871. case 2:
  872. message.indices = $root.onnx.TensorProto.decode(reader, reader.uint32());
  873. break;
  874. case 3:
  875. message.dims = reader.array(message.dims, () => reader.int64(), tag);
  876. break;
  877. default:
  878. reader.skipType(tag & 7);
  879. break;
  880. }
  881. }
  882. return message;
  883. }
  884. static decodeText(reader) {
  885. const message = new $root.onnx.SparseTensorProto();
  886. reader.start();
  887. while (!reader.end()) {
  888. const tag = reader.tag();
  889. switch (tag) {
  890. case "values":
  891. message.values = $root.onnx.TensorProto.decodeText(reader);
  892. break;
  893. case "indices":
  894. message.indices = $root.onnx.TensorProto.decodeText(reader);
  895. break;
  896. case "dims":
  897. reader.array(message.dims, () => reader.int64());
  898. break;
  899. default:
  900. reader.field(tag, message);
  901. break;
  902. }
  903. }
  904. return message;
  905. }
  906. };
  907. $root.onnx.SparseTensorProto.prototype.values = null;
  908. $root.onnx.SparseTensorProto.prototype.indices = null;
  909. $root.onnx.TensorShapeProto = class TensorShapeProto {
  910. constructor() {
  911. this.dim = [];
  912. }
  913. static decode(reader, length) {
  914. const message = new $root.onnx.TensorShapeProto();
  915. const end = length !== undefined ? reader.position + length : reader.length;
  916. while (reader.position < end) {
  917. const tag = reader.uint32();
  918. switch (tag >>> 3) {
  919. case 1:
  920. message.dim.push($root.onnx.TensorShapeProto.Dimension.decode(reader, reader.uint32()));
  921. break;
  922. default:
  923. reader.skipType(tag & 7);
  924. break;
  925. }
  926. }
  927. return message;
  928. }
  929. static decodeText(reader) {
  930. const message = new $root.onnx.TensorShapeProto();
  931. reader.start();
  932. while (!reader.end()) {
  933. const tag = reader.tag();
  934. switch (tag) {
  935. case "dim":
  936. message.dim.push($root.onnx.TensorShapeProto.Dimension.decodeText(reader));
  937. break;
  938. default:
  939. reader.field(tag, message);
  940. break;
  941. }
  942. }
  943. return message;
  944. }
  945. };
  946. $root.onnx.TensorShapeProto.Dimension = class Dimension {
  947. constructor() {
  948. }
  949. get value() {
  950. $root.onnx.TensorShapeProto.Dimension.valueSet = $root.onnx.TensorShapeProto.Dimension.valueSet || new Set([ "dim_value", "dim_param"]);
  951. return Object.keys(this).find((key) => $root.onnx.TensorShapeProto.Dimension.valueSet.has(key) && this[key] != null);
  952. }
  953. static decode(reader, length) {
  954. const message = new $root.onnx.TensorShapeProto.Dimension();
  955. const end = length !== undefined ? reader.position + length : reader.length;
  956. while (reader.position < end) {
  957. const tag = reader.uint32();
  958. switch (tag >>> 3) {
  959. case 1:
  960. message.dim_value = reader.int64();
  961. break;
  962. case 2:
  963. message.dim_param = reader.string();
  964. break;
  965. case 3:
  966. message.denotation = reader.string();
  967. break;
  968. default:
  969. reader.skipType(tag & 7);
  970. break;
  971. }
  972. }
  973. return message;
  974. }
  975. static decodeText(reader) {
  976. const message = new $root.onnx.TensorShapeProto.Dimension();
  977. reader.start();
  978. while (!reader.end()) {
  979. const tag = reader.tag();
  980. switch (tag) {
  981. case "dim_value":
  982. message.dim_value = reader.int64();
  983. break;
  984. case "dim_param":
  985. message.dim_param = reader.string();
  986. break;
  987. case "denotation":
  988. message.denotation = reader.string();
  989. break;
  990. default:
  991. reader.field(tag, message);
  992. break;
  993. }
  994. }
  995. return message;
  996. }
  997. };
  998. $root.onnx.TensorShapeProto.Dimension.prototype.denotation = "";
  999. $root.onnx.TypeProto = class TypeProto {
  1000. constructor() {
  1001. }
  1002. get value() {
  1003. $root.onnx.TypeProto.valueSet = $root.onnx.TypeProto.valueSet || new Set([ "tensor_type", "sequence_type", "map_type", "optional_type", "sparse_tensor_type", "opaque_type"]);
  1004. return Object.keys(this).find((key) => $root.onnx.TypeProto.valueSet.has(key) && this[key] != null);
  1005. }
  1006. static decode(reader, length) {
  1007. const message = new $root.onnx.TypeProto();
  1008. const end = length !== undefined ? reader.position + length : reader.length;
  1009. while (reader.position < end) {
  1010. const tag = reader.uint32();
  1011. switch (tag >>> 3) {
  1012. case 1:
  1013. message.tensor_type = $root.onnx.TypeProto.Tensor.decode(reader, reader.uint32());
  1014. break;
  1015. case 4:
  1016. message.sequence_type = $root.onnx.TypeProto.Sequence.decode(reader, reader.uint32());
  1017. break;
  1018. case 5:
  1019. message.map_type = $root.onnx.TypeProto.Map.decode(reader, reader.uint32());
  1020. break;
  1021. case 9:
  1022. message.optional_type = $root.onnx.TypeProto.Optional.decode(reader, reader.uint32());
  1023. break;
  1024. case 8:
  1025. message.sparse_tensor_type = $root.onnx.TypeProto.SparseTensor.decode(reader, reader.uint32());
  1026. break;
  1027. case 7:
  1028. message.opaque_type = $root.onnx.TypeProto.Opaque.decode(reader, reader.uint32());
  1029. break;
  1030. case 6:
  1031. message.denotation = reader.string();
  1032. break;
  1033. default:
  1034. reader.skipType(tag & 7);
  1035. break;
  1036. }
  1037. }
  1038. return message;
  1039. }
  1040. static decodeText(reader) {
  1041. const message = new $root.onnx.TypeProto();
  1042. reader.start();
  1043. while (!reader.end()) {
  1044. const tag = reader.tag();
  1045. switch (tag) {
  1046. case "tensor_type":
  1047. message.tensor_type = $root.onnx.TypeProto.Tensor.decodeText(reader);
  1048. break;
  1049. case "sequence_type":
  1050. message.sequence_type = $root.onnx.TypeProto.Sequence.decodeText(reader);
  1051. break;
  1052. case "map_type":
  1053. message.map_type = $root.onnx.TypeProto.Map.decodeText(reader);
  1054. break;
  1055. case "optional_type":
  1056. message.optional_type = $root.onnx.TypeProto.Optional.decodeText(reader);
  1057. break;
  1058. case "sparse_tensor_type":
  1059. message.sparse_tensor_type = $root.onnx.TypeProto.SparseTensor.decodeText(reader);
  1060. break;
  1061. case "opaque_type":
  1062. message.opaque_type = $root.onnx.TypeProto.Opaque.decodeText(reader);
  1063. break;
  1064. case "denotation":
  1065. message.denotation = reader.string();
  1066. break;
  1067. default:
  1068. reader.field(tag, message);
  1069. break;
  1070. }
  1071. }
  1072. return message;
  1073. }
  1074. };
  1075. $root.onnx.TypeProto.prototype.denotation = "";
  1076. $root.onnx.TypeProto.Tensor = class Tensor {
  1077. constructor() {
  1078. }
  1079. static decode(reader, length) {
  1080. const message = new $root.onnx.TypeProto.Tensor();
  1081. const end = length !== undefined ? reader.position + length : reader.length;
  1082. while (reader.position < end) {
  1083. const tag = reader.uint32();
  1084. switch (tag >>> 3) {
  1085. case 1:
  1086. message.elem_type = reader.int32();
  1087. break;
  1088. case 2:
  1089. message.shape = $root.onnx.TensorShapeProto.decode(reader, reader.uint32());
  1090. break;
  1091. default:
  1092. reader.skipType(tag & 7);
  1093. break;
  1094. }
  1095. }
  1096. return message;
  1097. }
  1098. static decodeText(reader) {
  1099. const message = new $root.onnx.TypeProto.Tensor();
  1100. reader.start();
  1101. while (!reader.end()) {
  1102. const tag = reader.tag();
  1103. switch (tag) {
  1104. case "elem_type":
  1105. message.elem_type = reader.int32();
  1106. break;
  1107. case "shape":
  1108. message.shape = $root.onnx.TensorShapeProto.decodeText(reader);
  1109. break;
  1110. default:
  1111. reader.field(tag, message);
  1112. break;
  1113. }
  1114. }
  1115. return message;
  1116. }
  1117. };
  1118. $root.onnx.TypeProto.Tensor.prototype.elem_type = 0;
  1119. $root.onnx.TypeProto.Tensor.prototype.shape = null;
  1120. $root.onnx.TypeProto.Sequence = class Sequence {
  1121. constructor() {
  1122. }
  1123. static decode(reader, length) {
  1124. const message = new $root.onnx.TypeProto.Sequence();
  1125. const end = length !== undefined ? reader.position + length : reader.length;
  1126. while (reader.position < end) {
  1127. const tag = reader.uint32();
  1128. switch (tag >>> 3) {
  1129. case 1:
  1130. message.elem_type = $root.onnx.TypeProto.decode(reader, reader.uint32());
  1131. break;
  1132. default:
  1133. reader.skipType(tag & 7);
  1134. break;
  1135. }
  1136. }
  1137. return message;
  1138. }
  1139. static decodeText(reader) {
  1140. const message = new $root.onnx.TypeProto.Sequence();
  1141. reader.start();
  1142. while (!reader.end()) {
  1143. const tag = reader.tag();
  1144. switch (tag) {
  1145. case "elem_type":
  1146. message.elem_type = $root.onnx.TypeProto.decodeText(reader);
  1147. break;
  1148. default:
  1149. reader.field(tag, message);
  1150. break;
  1151. }
  1152. }
  1153. return message;
  1154. }
  1155. };
  1156. $root.onnx.TypeProto.Sequence.prototype.elem_type = null;
  1157. $root.onnx.TypeProto.Map = class Map {
  1158. constructor() {
  1159. }
  1160. static decode(reader, length) {
  1161. const message = new $root.onnx.TypeProto.Map();
  1162. const end = length !== undefined ? reader.position + length : reader.length;
  1163. while (reader.position < end) {
  1164. const tag = reader.uint32();
  1165. switch (tag >>> 3) {
  1166. case 1:
  1167. message.key_type = reader.int32();
  1168. break;
  1169. case 2:
  1170. message.value_type = $root.onnx.TypeProto.decode(reader, reader.uint32());
  1171. break;
  1172. default:
  1173. reader.skipType(tag & 7);
  1174. break;
  1175. }
  1176. }
  1177. return message;
  1178. }
  1179. static decodeText(reader) {
  1180. const message = new $root.onnx.TypeProto.Map();
  1181. reader.start();
  1182. while (!reader.end()) {
  1183. const tag = reader.tag();
  1184. switch (tag) {
  1185. case "key_type":
  1186. message.key_type = reader.int32();
  1187. break;
  1188. case "value_type":
  1189. message.value_type = $root.onnx.TypeProto.decodeText(reader);
  1190. break;
  1191. default:
  1192. reader.field(tag, message);
  1193. break;
  1194. }
  1195. }
  1196. return message;
  1197. }
  1198. };
  1199. $root.onnx.TypeProto.Map.prototype.key_type = 0;
  1200. $root.onnx.TypeProto.Map.prototype.value_type = null;
  1201. $root.onnx.TypeProto.Optional = class Optional {
  1202. constructor() {
  1203. }
  1204. static decode(reader, length) {
  1205. const message = new $root.onnx.TypeProto.Optional();
  1206. const end = length !== undefined ? reader.position + length : reader.length;
  1207. while (reader.position < end) {
  1208. const tag = reader.uint32();
  1209. switch (tag >>> 3) {
  1210. case 1:
  1211. message.elem_type = $root.onnx.TypeProto.decode(reader, reader.uint32());
  1212. break;
  1213. default:
  1214. reader.skipType(tag & 7);
  1215. break;
  1216. }
  1217. }
  1218. return message;
  1219. }
  1220. static decodeText(reader) {
  1221. const message = new $root.onnx.TypeProto.Optional();
  1222. reader.start();
  1223. while (!reader.end()) {
  1224. const tag = reader.tag();
  1225. switch (tag) {
  1226. case "elem_type":
  1227. message.elem_type = $root.onnx.TypeProto.decodeText(reader);
  1228. break;
  1229. default:
  1230. reader.field(tag, message);
  1231. break;
  1232. }
  1233. }
  1234. return message;
  1235. }
  1236. };
  1237. $root.onnx.TypeProto.Optional.prototype.elem_type = null;
  1238. $root.onnx.TypeProto.SparseTensor = class SparseTensor {
  1239. constructor() {
  1240. }
  1241. static decode(reader, length) {
  1242. const message = new $root.onnx.TypeProto.SparseTensor();
  1243. const end = length !== undefined ? reader.position + length : reader.length;
  1244. while (reader.position < end) {
  1245. const tag = reader.uint32();
  1246. switch (tag >>> 3) {
  1247. case 1:
  1248. message.elem_type = reader.int32();
  1249. break;
  1250. case 2:
  1251. message.shape = $root.onnx.TensorShapeProto.decode(reader, reader.uint32());
  1252. break;
  1253. default:
  1254. reader.skipType(tag & 7);
  1255. break;
  1256. }
  1257. }
  1258. return message;
  1259. }
  1260. static decodeText(reader) {
  1261. const message = new $root.onnx.TypeProto.SparseTensor();
  1262. reader.start();
  1263. while (!reader.end()) {
  1264. const tag = reader.tag();
  1265. switch (tag) {
  1266. case "elem_type":
  1267. message.elem_type = reader.int32();
  1268. break;
  1269. case "shape":
  1270. message.shape = $root.onnx.TensorShapeProto.decodeText(reader);
  1271. break;
  1272. default:
  1273. reader.field(tag, message);
  1274. break;
  1275. }
  1276. }
  1277. return message;
  1278. }
  1279. };
  1280. $root.onnx.TypeProto.SparseTensor.prototype.elem_type = 0;
  1281. $root.onnx.TypeProto.SparseTensor.prototype.shape = null;
  1282. $root.onnx.TypeProto.Opaque = class Opaque {
  1283. constructor() {
  1284. }
  1285. static decode(reader, length) {
  1286. const message = new $root.onnx.TypeProto.Opaque();
  1287. const end = length !== undefined ? reader.position + length : reader.length;
  1288. while (reader.position < end) {
  1289. const tag = reader.uint32();
  1290. switch (tag >>> 3) {
  1291. case 1:
  1292. message.domain = reader.string();
  1293. break;
  1294. case 2:
  1295. message.name = reader.string();
  1296. break;
  1297. default:
  1298. reader.skipType(tag & 7);
  1299. break;
  1300. }
  1301. }
  1302. return message;
  1303. }
  1304. static decodeText(reader) {
  1305. const message = new $root.onnx.TypeProto.Opaque();
  1306. reader.start();
  1307. while (!reader.end()) {
  1308. const tag = reader.tag();
  1309. switch (tag) {
  1310. case "domain":
  1311. message.domain = reader.string();
  1312. break;
  1313. case "name":
  1314. message.name = reader.string();
  1315. break;
  1316. default:
  1317. reader.field(tag, message);
  1318. break;
  1319. }
  1320. }
  1321. return message;
  1322. }
  1323. };
  1324. $root.onnx.TypeProto.Opaque.prototype.domain = "";
  1325. $root.onnx.TypeProto.Opaque.prototype.name = "";
  1326. $root.onnx.OperatorSetIdProto = class OperatorSetIdProto {
  1327. constructor() {
  1328. }
  1329. static decode(reader, length) {
  1330. const message = new $root.onnx.OperatorSetIdProto();
  1331. const end = length !== undefined ? reader.position + length : reader.length;
  1332. while (reader.position < end) {
  1333. const tag = reader.uint32();
  1334. switch (tag >>> 3) {
  1335. case 1:
  1336. message.domain = reader.string();
  1337. break;
  1338. case 2:
  1339. message.version = reader.int64();
  1340. break;
  1341. default:
  1342. reader.skipType(tag & 7);
  1343. break;
  1344. }
  1345. }
  1346. return message;
  1347. }
  1348. static decodeText(reader) {
  1349. const message = new $root.onnx.OperatorSetIdProto();
  1350. reader.start();
  1351. while (!reader.end()) {
  1352. const tag = reader.tag();
  1353. switch (tag) {
  1354. case "domain":
  1355. message.domain = reader.string();
  1356. break;
  1357. case "version":
  1358. message.version = reader.int64();
  1359. break;
  1360. default:
  1361. reader.field(tag, message);
  1362. break;
  1363. }
  1364. }
  1365. return message;
  1366. }
  1367. };
  1368. $root.onnx.OperatorSetIdProto.prototype.domain = "";
  1369. $root.onnx.OperatorSetIdProto.prototype.version = protobuf.Int64.create(0);
  1370. $root.onnx.OperatorStatus = {
  1371. "EXPERIMENTAL": 0,
  1372. "STABLE": 1
  1373. };
  1374. $root.onnx.FunctionProto = class FunctionProto {
  1375. constructor() {
  1376. this.input = [];
  1377. this.output = [];
  1378. this.attribute = [];
  1379. this.node = [];
  1380. this.opset_import = [];
  1381. }
  1382. static decode(reader, length) {
  1383. const message = new $root.onnx.FunctionProto();
  1384. const end = length !== undefined ? reader.position + length : reader.length;
  1385. while (reader.position < end) {
  1386. const tag = reader.uint32();
  1387. switch (tag >>> 3) {
  1388. case 1:
  1389. message.name = reader.string();
  1390. break;
  1391. case 4:
  1392. message.input.push(reader.string());
  1393. break;
  1394. case 5:
  1395. message.output.push(reader.string());
  1396. break;
  1397. case 6:
  1398. message.attribute.push(reader.string());
  1399. break;
  1400. case 7:
  1401. message.node.push($root.onnx.NodeProto.decode(reader, reader.uint32()));
  1402. break;
  1403. case 8:
  1404. message.doc_string = reader.string();
  1405. break;
  1406. case 9:
  1407. message.opset_import.push($root.onnx.OperatorSetIdProto.decode(reader, reader.uint32()));
  1408. break;
  1409. case 10:
  1410. message.domain = reader.string();
  1411. break;
  1412. default:
  1413. reader.skipType(tag & 7);
  1414. break;
  1415. }
  1416. }
  1417. return message;
  1418. }
  1419. static decodeText(reader) {
  1420. const message = new $root.onnx.FunctionProto();
  1421. reader.start();
  1422. while (!reader.end()) {
  1423. const tag = reader.tag();
  1424. switch (tag) {
  1425. case "name":
  1426. message.name = reader.string();
  1427. break;
  1428. case "input":
  1429. reader.array(message.input, () => reader.string());
  1430. break;
  1431. case "output":
  1432. reader.array(message.output, () => reader.string());
  1433. break;
  1434. case "attribute":
  1435. reader.array(message.attribute, () => reader.string());
  1436. break;
  1437. case "node":
  1438. message.node.push($root.onnx.NodeProto.decodeText(reader));
  1439. break;
  1440. case "doc_string":
  1441. message.doc_string = reader.string();
  1442. break;
  1443. case "opset_import":
  1444. message.opset_import.push($root.onnx.OperatorSetIdProto.decodeText(reader));
  1445. break;
  1446. case "domain":
  1447. message.domain = reader.string();
  1448. break;
  1449. default:
  1450. reader.field(tag, message);
  1451. break;
  1452. }
  1453. }
  1454. return message;
  1455. }
  1456. };
  1457. $root.onnx.FunctionProto.prototype.name = "";
  1458. $root.onnx.FunctionProto.prototype.doc_string = "";
  1459. $root.onnx.FunctionProto.prototype.domain = "";
  1460. $root.onnx.OperatorProto = class OperatorProto {
  1461. constructor() {
  1462. }
  1463. static decode(reader, length) {
  1464. const message = new $root.onnx.OperatorProto();
  1465. const end = length !== undefined ? reader.position + length : reader.length;
  1466. while (reader.position < end) {
  1467. const tag = reader.uint32();
  1468. switch (tag >>> 3) {
  1469. case 1:
  1470. message.op_type = reader.string();
  1471. break;
  1472. case 2:
  1473. message.since_version = reader.int64();
  1474. break;
  1475. case 3:
  1476. message.status = reader.int32();
  1477. break;
  1478. case 10:
  1479. message.doc_string = reader.string();
  1480. break;
  1481. default:
  1482. reader.skipType(tag & 7);
  1483. break;
  1484. }
  1485. }
  1486. return message;
  1487. }
  1488. static decodeText(reader) {
  1489. const message = new $root.onnx.OperatorProto();
  1490. reader.start();
  1491. while (!reader.end()) {
  1492. const tag = reader.tag();
  1493. switch (tag) {
  1494. case "op_type":
  1495. message.op_type = reader.string();
  1496. break;
  1497. case "since_version":
  1498. message.since_version = reader.int64();
  1499. break;
  1500. case "status":
  1501. message.status = reader.enum($root.onnx.OperatorStatus);
  1502. break;
  1503. case "doc_string":
  1504. message.doc_string = reader.string();
  1505. break;
  1506. default:
  1507. reader.field(tag, message);
  1508. break;
  1509. }
  1510. }
  1511. return message;
  1512. }
  1513. };
  1514. $root.onnx.OperatorProto.prototype.op_type = "";
  1515. $root.onnx.OperatorProto.prototype.since_version = protobuf.Int64.create(0);
  1516. $root.onnx.OperatorProto.prototype.status = 0;
  1517. $root.onnx.OperatorProto.prototype.doc_string = "";
  1518. $root.onnx.OperatorSetProto = class OperatorSetProto {
  1519. constructor() {
  1520. this.operator = [];
  1521. this.functions = [];
  1522. }
  1523. static decode(reader, length) {
  1524. const message = new $root.onnx.OperatorSetProto();
  1525. const end = length !== undefined ? reader.position + length : reader.length;
  1526. while (reader.position < end) {
  1527. const tag = reader.uint32();
  1528. switch (tag >>> 3) {
  1529. case 1:
  1530. message.magic = reader.string();
  1531. break;
  1532. case 2:
  1533. message.ir_version = reader.int64();
  1534. break;
  1535. case 3:
  1536. message.ir_version_prerelease = reader.string();
  1537. break;
  1538. case 7:
  1539. message.ir_build_metadata = reader.string();
  1540. break;
  1541. case 4:
  1542. message.domain = reader.string();
  1543. break;
  1544. case 5:
  1545. message.opset_version = reader.int64();
  1546. break;
  1547. case 6:
  1548. message.doc_string = reader.string();
  1549. break;
  1550. case 8:
  1551. message.operator.push($root.onnx.OperatorProto.decode(reader, reader.uint32()));
  1552. break;
  1553. case 9:
  1554. message.functions.push($root.onnx.FunctionProto.decode(reader, reader.uint32()));
  1555. break;
  1556. default:
  1557. reader.skipType(tag & 7);
  1558. break;
  1559. }
  1560. }
  1561. return message;
  1562. }
  1563. static decodeText(reader) {
  1564. const message = new $root.onnx.OperatorSetProto();
  1565. reader.start();
  1566. while (!reader.end()) {
  1567. const tag = reader.tag();
  1568. switch (tag) {
  1569. case "magic":
  1570. message.magic = reader.string();
  1571. break;
  1572. case "ir_version":
  1573. message.ir_version = reader.int64();
  1574. break;
  1575. case "ir_version_prerelease":
  1576. message.ir_version_prerelease = reader.string();
  1577. break;
  1578. case "ir_build_metadata":
  1579. message.ir_build_metadata = reader.string();
  1580. break;
  1581. case "domain":
  1582. message.domain = reader.string();
  1583. break;
  1584. case "opset_version":
  1585. message.opset_version = reader.int64();
  1586. break;
  1587. case "doc_string":
  1588. message.doc_string = reader.string();
  1589. break;
  1590. case "operator":
  1591. message.operator.push($root.onnx.OperatorProto.decodeText(reader));
  1592. break;
  1593. case "functions":
  1594. message.functions.push($root.onnx.FunctionProto.decodeText(reader));
  1595. break;
  1596. default:
  1597. reader.field(tag, message);
  1598. break;
  1599. }
  1600. }
  1601. return message;
  1602. }
  1603. };
  1604. $root.onnx.OperatorSetProto.prototype.magic = "";
  1605. $root.onnx.OperatorSetProto.prototype.ir_version = protobuf.Int64.create(0);
  1606. $root.onnx.OperatorSetProto.prototype.ir_version_prerelease = "";
  1607. $root.onnx.OperatorSetProto.prototype.ir_build_metadata = "";
  1608. $root.onnx.OperatorSetProto.prototype.domain = "";
  1609. $root.onnx.OperatorSetProto.prototype.opset_version = protobuf.Int64.create(0);
  1610. $root.onnx.OperatorSetProto.prototype.doc_string = "";