schema_generated.h 835 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086160871608816089160901609116092160931609416095160961609716098160991610016101161021610316104161051610616107161081610916110161111611216113161141611516116161171611816119161201612116122161231612416125161261612716128161291613016131161321613316134161351613616137161381613916140161411614216143161441614516146161471614816149161501615116152161531615416155161561615716158161591616016161161621616316164161651616616167161681616916170161711617216173161741617516176161771617816179161801618116182161831618416185161861618716188161891619016191161921619316194161951619616197161981619916200162011620216203162041620516206162071620816209162101621116212162131621416215162161621716218162191622016221162221622316224162251622616227162281622916230162311623216233162341623516236162371623816239162401624116242162431624416245162461624716248162491625016251162521625316254162551625616257162581625916260162611626216263162641626516266162671626816269162701627116272162731627416275162761627716278162791628016281162821628316284162851628616287162881628916290162911629216293162941629516296162971629816299163001630116302163031630416305163061630716308163091631016311163121631316314163151631616317163181631916320163211632216323163241632516326163271632816329163301633116332163331633416335163361633716338163391634016341163421634316344163451634616347163481634916350163511635216353163541635516356163571635816359163601636116362163631636416365163661636716368163691637016371163721637316374163751637616377163781637916380163811638216383163841638516386163871638816389163901639116392163931639416395163961639716398163991640016401164021640316404164051640616407164081640916410164111641216413164141641516416164171641816419164201642116422164231642416425164261642716428164291643016431164321643316434164351643616437164381643916440164411644216443164441644516446164471644816449164501645116452164531645416455164561645716458164591646016461164621646316464164651646616467164681646916470164711647216473164741647516476164771647816479164801648116482164831648416485164861648716488164891649016491164921649316494164951649616497164981649916500165011650216503165041650516506165071650816509165101651116512165131651416515165161651716518165191652016521165221652316524165251652616527165281652916530165311653216533165341653516536165371653816539165401654116542165431654416545165461654716548165491655016551165521655316554165551655616557165581655916560165611656216563165641656516566165671656816569165701657116572165731657416575165761657716578165791658016581165821658316584165851658616587165881658916590165911659216593165941659516596165971659816599166001660116602166031660416605166061660716608166091661016611166121661316614166151661616617166181661916620166211662216623166241662516626166271662816629166301663116632166331663416635166361663716638166391664016641166421664316644166451664616647166481664916650166511665216653166541665516656166571665816659166601666116662166631666416665166661666716668166691667016671166721667316674166751667616677166781667916680166811668216683166841668516686166871668816689166901669116692166931669416695166961669716698166991670016701167021670316704167051670616707167081670916710167111671216713167141671516716167171671816719167201672116722167231672416725167261672716728167291673016731167321673316734167351673616737167381673916740167411674216743167441674516746167471674816749167501675116752167531675416755167561675716758167591676016761167621676316764167651676616767167681676916770167711677216773167741677516776167771677816779167801678116782167831678416785167861678716788167891679016791167921679316794167951679616797167981679916800168011680216803168041680516806168071680816809168101681116812168131681416815168161681716818168191682016821168221682316824168251682616827168281682916830168311683216833168341683516836168371683816839168401684116842168431684416845168461684716848168491685016851168521685316854168551685616857168581685916860168611686216863168641686516866168671686816869168701687116872168731687416875168761687716878168791688016881168821688316884168851688616887168881688916890168911689216893168941689516896168971689816899169001690116902169031690416905169061690716908169091691016911169121691316914169151691616917169181691916920169211692216923169241692516926169271692816929169301693116932169331693416935169361693716938169391694016941169421694316944169451694616947169481694916950169511695216953169541695516956169571695816959169601696116962169631696416965169661696716968169691697016971169721697316974169751697616977169781697916980169811698216983169841698516986169871698816989169901699116992169931699416995169961699716998169991700017001170021700317004170051700617007170081700917010170111701217013170141701517016170171701817019170201702117022170231702417025170261702717028170291703017031170321703317034170351703617037170381703917040170411704217043170441704517046170471704817049170501705117052170531705417055170561705717058170591706017061170621706317064170651706617067170681706917070170711707217073170741707517076170771707817079170801708117082170831708417085170861708717088170891709017091170921709317094170951709617097170981709917100171011710217103171041710517106171071710817109171101711117112171131711417115171161711717118171191712017121171221712317124171251712617127171281712917130171311713217133171341713517136171371713817139171401714117142171431714417145171461714717148171491715017151171521715317154171551715617157171581715917160171611716217163171641716517166171671716817169171701717117172171731717417175171761717717178171791718017181171821718317184171851718617187171881718917190171911719217193171941719517196171971719817199172001720117202172031720417205172061720717208172091721017211172121721317214172151721617217172181721917220172211722217223172241722517226172271722817229172301723117232172331723417235172361723717238172391724017241172421724317244172451724617247172481724917250172511725217253172541725517256172571725817259172601726117262172631726417265172661726717268172691727017271172721727317274172751727617277172781727917280172811728217283172841728517286172871728817289172901729117292172931729417295172961729717298172991730017301173021730317304173051730617307173081730917310173111731217313173141731517316173171731817319173201732117322173231732417325173261732717328173291733017331173321733317334173351733617337173381733917340173411734217343173441734517346173471734817349173501735117352173531735417355173561735717358173591736017361173621736317364173651736617367173681736917370173711737217373173741737517376173771737817379173801738117382173831738417385173861738717388173891739017391173921739317394173951739617397173981739917400174011740217403174041740517406174071740817409174101741117412174131741417415174161741717418174191742017421174221742317424174251742617427174281742917430174311743217433174341743517436174371743817439174401744117442174431744417445174461744717448174491745017451174521745317454174551745617457174581745917460174611746217463174641746517466174671746817469174701747117472174731747417475174761747717478174791748017481174821748317484174851748617487174881748917490174911749217493174941749517496174971749817499175001750117502175031750417505175061750717508175091751017511175121751317514175151751617517175181751917520175211752217523175241752517526175271752817529175301753117532175331753417535175361753717538175391754017541175421754317544175451754617547175481754917550175511755217553175541755517556175571755817559175601756117562175631756417565175661756717568175691757017571175721757317574175751757617577175781757917580175811758217583175841758517586175871758817589175901759117592175931759417595175961759717598175991760017601176021760317604176051760617607176081760917610176111761217613176141761517616176171761817619176201762117622176231762417625176261762717628176291763017631176321763317634176351763617637176381763917640176411764217643176441764517646176471764817649176501765117652176531765417655176561765717658176591766017661176621766317664176651766617667176681766917670176711767217673176741767517676176771767817679176801768117682176831768417685176861768717688176891769017691176921769317694176951769617697176981769917700177011770217703177041770517706177071770817709177101771117712177131771417715177161771717718177191772017721177221772317724177251772617727177281772917730177311773217733177341773517736177371773817739177401774117742177431774417745177461774717748177491775017751177521775317754177551775617757177581775917760177611776217763177641776517766177671776817769177701777117772177731777417775177761777717778177791778017781177821778317784177851778617787177881778917790177911779217793177941779517796177971779817799178001780117802178031780417805178061780717808178091781017811178121781317814178151781617817178181781917820178211782217823178241782517826178271782817829178301783117832178331783417835178361783717838178391784017841178421784317844178451784617847178481784917850178511785217853178541785517856178571785817859178601786117862178631786417865178661786717868178691787017871178721787317874178751787617877178781787917880178811788217883178841788517886178871788817889178901789117892178931789417895178961789717898178991790017901179021790317904179051790617907179081790917910179111791217913179141791517916179171791817919179201792117922179231792417925179261792717928179291793017931179321793317934179351793617937179381793917940179411794217943179441794517946179471794817949179501795117952179531795417955179561795717958179591796017961179621796317964179651796617967179681796917970179711797217973179741797517976179771797817979179801798117982179831798417985179861798717988179891799017991179921799317994179951799617997179981799918000180011800218003180041800518006180071800818009180101801118012180131801418015180161801718018180191802018021180221802318024180251802618027180281802918030180311803218033180341803518036180371803818039180401804118042180431804418045180461804718048180491805018051180521805318054180551805618057180581805918060180611806218063180641806518066180671806818069180701807118072180731807418075180761807718078180791808018081180821808318084180851808618087180881808918090180911809218093180941809518096180971809818099181001810118102181031810418105181061810718108181091811018111181121811318114181151811618117181181811918120181211812218123181241812518126181271812818129181301813118132181331813418135181361813718138181391814018141181421814318144181451814618147181481814918150181511815218153181541815518156181571815818159181601816118162181631816418165181661816718168181691817018171181721817318174181751817618177181781817918180181811818218183181841818518186181871818818189181901819118192181931819418195181961819718198181991820018201182021820318204182051820618207182081820918210182111821218213182141821518216182171821818219182201822118222182231822418225182261822718228182291823018231182321823318234182351823618237182381823918240182411824218243182441824518246182471824818249182501825118252182531825418255182561825718258182591826018261182621826318264182651826618267182681826918270182711827218273182741827518276182771827818279182801828118282182831828418285182861828718288182891829018291182921829318294182951829618297182981829918300183011830218303183041830518306183071830818309183101831118312183131831418315183161831718318183191832018321183221832318324183251832618327183281832918330183311833218333183341833518336183371833818339183401834118342183431834418345183461834718348183491835018351183521835318354183551835618357183581835918360183611836218363183641836518366183671836818369183701837118372183731837418375183761837718378183791838018381183821838318384183851838618387183881838918390183911839218393183941839518396183971839818399184001840118402184031840418405184061840718408184091841018411184121841318414184151841618417184181841918420184211842218423184241842518426184271842818429184301843118432184331843418435184361843718438184391844018441184421844318444184451844618447184481844918450184511845218453184541845518456184571845818459184601846118462184631846418465184661846718468184691847018471184721847318474184751847618477184781847918480184811848218483184841848518486184871848818489184901849118492184931849418495184961849718498184991850018501185021850318504185051850618507185081850918510185111851218513185141851518516185171851818519185201852118522185231852418525185261852718528185291853018531185321853318534185351853618537185381853918540185411854218543185441854518546185471854818549185501855118552185531855418555185561855718558185591856018561185621856318564185651856618567185681856918570185711857218573185741857518576185771857818579185801858118582185831858418585185861858718588185891859018591185921859318594185951859618597185981859918600186011860218603186041860518606186071860818609186101861118612186131861418615186161861718618186191862018621186221862318624186251862618627186281862918630186311863218633186341863518636186371863818639186401864118642186431864418645186461864718648186491865018651186521865318654186551865618657186581865918660186611866218663186641866518666186671866818669186701867118672186731867418675186761867718678186791868018681186821868318684186851868618687186881868918690186911869218693186941869518696186971869818699187001870118702187031870418705187061870718708187091871018711187121871318714187151871618717187181871918720187211872218723187241872518726187271872818729187301873118732187331873418735187361873718738187391874018741187421874318744187451874618747187481874918750187511875218753187541875518756187571875818759187601876118762187631876418765187661876718768187691877018771187721877318774187751877618777187781877918780187811878218783187841878518786187871878818789187901879118792187931879418795187961879718798187991880018801188021880318804188051880618807188081880918810188111881218813188141881518816188171881818819188201882118822188231882418825188261882718828188291883018831188321883318834188351883618837188381883918840188411884218843188441884518846188471884818849188501885118852188531885418855188561885718858188591886018861188621886318864188651886618867188681886918870188711887218873188741887518876188771887818879188801888118882188831888418885188861888718888188891889018891188921889318894188951889618897188981889918900189011890218903189041890518906189071890818909189101891118912189131891418915189161891718918189191892018921189221892318924189251892618927189281892918930189311893218933189341893518936189371893818939189401894118942189431894418945189461894718948189491895018951189521895318954189551895618957189581895918960189611896218963189641896518966189671896818969189701897118972189731897418975189761897718978189791898018981189821898318984189851898618987189881898918990189911899218993189941899518996189971899818999190001900119002190031900419005190061900719008190091901019011190121901319014190151901619017190181901919020190211902219023190241902519026190271902819029190301903119032190331903419035190361903719038190391904019041190421904319044190451904619047190481904919050190511905219053190541905519056190571905819059190601906119062190631906419065190661906719068190691907019071190721907319074190751907619077190781907919080190811908219083190841908519086190871908819089190901909119092190931909419095190961909719098190991910019101191021910319104191051910619107191081910919110191111911219113191141911519116191171911819119191201912119122191231912419125191261912719128191291913019131191321913319134191351913619137191381913919140191411914219143191441914519146191471914819149191501915119152191531915419155191561915719158191591916019161191621916319164191651916619167191681916919170191711917219173191741917519176191771917819179191801918119182191831918419185191861918719188191891919019191191921919319194191951919619197191981919919200192011920219203192041920519206192071920819209192101921119212192131921419215192161921719218192191922019221192221922319224192251922619227192281922919230192311923219233192341923519236192371923819239192401924119242192431924419245192461924719248192491925019251192521925319254192551925619257192581925919260192611926219263192641926519266192671926819269192701927119272192731927419275192761927719278192791928019281192821928319284192851928619287192881928919290192911929219293192941929519296192971929819299193001930119302193031930419305193061930719308193091931019311193121931319314193151931619317193181931919320193211932219323193241932519326193271932819329193301933119332193331933419335193361933719338193391934019341193421934319344193451934619347193481934919350193511935219353193541935519356193571935819359193601936119362193631936419365193661936719368193691937019371193721937319374193751937619377193781937919380193811938219383193841938519386193871938819389193901939119392193931939419395193961939719398193991940019401194021940319404194051940619407194081940919410194111941219413194141941519416194171941819419194201942119422194231942419425194261942719428194291943019431194321943319434194351943619437194381943919440194411944219443194441944519446194471944819449194501945119452194531945419455194561945719458194591946019461194621946319464194651946619467194681946919470194711947219473194741947519476194771947819479194801948119482194831948419485194861948719488194891949019491194921949319494194951949619497194981949919500195011950219503195041950519506195071950819509195101951119512195131951419515195161951719518195191952019521195221952319524195251952619527195281952919530195311953219533195341953519536195371953819539195401954119542195431954419545195461954719548195491955019551195521955319554195551955619557195581955919560195611956219563195641956519566195671956819569195701957119572195731957419575195761957719578195791958019581195821958319584195851958619587195881958919590195911959219593195941959519596195971959819599196001960119602196031960419605196061960719608196091961019611196121961319614196151961619617196181961919620196211962219623196241962519626196271962819629196301963119632196331963419635196361963719638196391964019641196421964319644196451964619647196481964919650196511965219653196541965519656196571965819659196601966119662196631966419665196661966719668196691967019671196721967319674196751967619677196781967919680196811968219683196841968519686196871968819689196901969119692196931969419695196961969719698196991970019701197021970319704197051970619707197081970919710197111971219713197141971519716197171971819719197201972119722197231972419725197261972719728197291973019731197321973319734197351973619737197381973919740197411974219743197441974519746197471974819749197501975119752197531975419755197561975719758197591976019761197621976319764197651976619767197681976919770197711977219773197741977519776197771977819779197801978119782197831978419785197861978719788197891979019791197921979319794197951979619797197981979919800198011980219803198041980519806198071980819809198101981119812198131981419815198161981719818198191982019821198221982319824198251982619827198281982919830198311983219833198341983519836198371983819839198401984119842198431984419845198461984719848198491985019851198521985319854198551985619857198581985919860198611986219863198641986519866198671986819869198701987119872198731987419875198761987719878198791988019881198821988319884198851988619887198881988919890198911989219893198941989519896198971989819899199001990119902199031990419905199061990719908199091991019911199121991319914199151991619917199181991919920199211992219923199241992519926199271992819929199301993119932199331993419935199361993719938199391994019941199421994319944199451994619947199481994919950199511995219953199541995519956199571995819959199601996119962199631996419965199661996719968199691997019971199721997319974199751997619977199781997919980199811998219983199841998519986199871998819989199901999119992199931999419995199961999719998199992000020001200022000320004200052000620007200082000920010200112001220013200142001520016200172001820019200202002120022200232002420025200262002720028200292003020031200322003320034200352003620037200382003920040200412004220043200442004520046200472004820049200502005120052200532005420055200562005720058200592006020061200622006320064200652006620067200682006920070200712007220073200742007520076200772007820079200802008120082200832008420085200862008720088200892009020091200922009320094200952009620097200982009920100201012010220103201042010520106201072010820109201102011120112201132011420115201162011720118201192012020121201222012320124201252012620127201282012920130201312013220133201342013520136
  1. // automatically generated by the FlatBuffers compiler, do not modify
  2. #ifndef FLATBUFFERS_GENERATED_SCHEMA_TFLITE_H_
  3. #define FLATBUFFERS_GENERATED_SCHEMA_TFLITE_H_
  4. #include "flatbuffers/flatbuffers.h"
  5. // Ensure the included flatbuffers.h is the same version as when this file was
  6. // generated, otherwise it may not be compatible.
  7. static_assert(FLATBUFFERS_VERSION_MAJOR == 2 &&
  8. FLATBUFFERS_VERSION_MINOR == 0 &&
  9. FLATBUFFERS_VERSION_REVISION == 6,
  10. "Non-compatible flatbuffers version included");
  11. namespace tflite {
  12. struct CustomQuantization;
  13. struct CustomQuantizationBuilder;
  14. struct CustomQuantizationT;
  15. struct QuantizationParameters;
  16. struct QuantizationParametersBuilder;
  17. struct QuantizationParametersT;
  18. struct Int32Vector;
  19. struct Int32VectorBuilder;
  20. struct Int32VectorT;
  21. struct Uint16Vector;
  22. struct Uint16VectorBuilder;
  23. struct Uint16VectorT;
  24. struct Uint8Vector;
  25. struct Uint8VectorBuilder;
  26. struct Uint8VectorT;
  27. struct DimensionMetadata;
  28. struct DimensionMetadataBuilder;
  29. struct DimensionMetadataT;
  30. struct SparsityParameters;
  31. struct SparsityParametersBuilder;
  32. struct SparsityParametersT;
  33. struct VariantSubType;
  34. struct VariantSubTypeBuilder;
  35. struct VariantSubTypeT;
  36. struct Tensor;
  37. struct TensorBuilder;
  38. struct TensorT;
  39. struct Conv2DOptions;
  40. struct Conv2DOptionsBuilder;
  41. struct Conv2DOptionsT;
  42. struct Conv3DOptions;
  43. struct Conv3DOptionsBuilder;
  44. struct Conv3DOptionsT;
  45. struct Pool2DOptions;
  46. struct Pool2DOptionsBuilder;
  47. struct Pool2DOptionsT;
  48. struct DepthwiseConv2DOptions;
  49. struct DepthwiseConv2DOptionsBuilder;
  50. struct DepthwiseConv2DOptionsT;
  51. struct ConcatEmbeddingsOptions;
  52. struct ConcatEmbeddingsOptionsBuilder;
  53. struct ConcatEmbeddingsOptionsT;
  54. struct LSHProjectionOptions;
  55. struct LSHProjectionOptionsBuilder;
  56. struct LSHProjectionOptionsT;
  57. struct SVDFOptions;
  58. struct SVDFOptionsBuilder;
  59. struct SVDFOptionsT;
  60. struct RNNOptions;
  61. struct RNNOptionsBuilder;
  62. struct RNNOptionsT;
  63. struct SequenceRNNOptions;
  64. struct SequenceRNNOptionsBuilder;
  65. struct SequenceRNNOptionsT;
  66. struct BidirectionalSequenceRNNOptions;
  67. struct BidirectionalSequenceRNNOptionsBuilder;
  68. struct BidirectionalSequenceRNNOptionsT;
  69. struct FullyConnectedOptions;
  70. struct FullyConnectedOptionsBuilder;
  71. struct FullyConnectedOptionsT;
  72. struct SoftmaxOptions;
  73. struct SoftmaxOptionsBuilder;
  74. struct SoftmaxOptionsT;
  75. struct ConcatenationOptions;
  76. struct ConcatenationOptionsBuilder;
  77. struct ConcatenationOptionsT;
  78. struct AddOptions;
  79. struct AddOptionsBuilder;
  80. struct AddOptionsT;
  81. struct MulOptions;
  82. struct MulOptionsBuilder;
  83. struct MulOptionsT;
  84. struct L2NormOptions;
  85. struct L2NormOptionsBuilder;
  86. struct L2NormOptionsT;
  87. struct LocalResponseNormalizationOptions;
  88. struct LocalResponseNormalizationOptionsBuilder;
  89. struct LocalResponseNormalizationOptionsT;
  90. struct LSTMOptions;
  91. struct LSTMOptionsBuilder;
  92. struct LSTMOptionsT;
  93. struct UnidirectionalSequenceLSTMOptions;
  94. struct UnidirectionalSequenceLSTMOptionsBuilder;
  95. struct UnidirectionalSequenceLSTMOptionsT;
  96. struct BidirectionalSequenceLSTMOptions;
  97. struct BidirectionalSequenceLSTMOptionsBuilder;
  98. struct BidirectionalSequenceLSTMOptionsT;
  99. struct ResizeBilinearOptions;
  100. struct ResizeBilinearOptionsBuilder;
  101. struct ResizeBilinearOptionsT;
  102. struct ResizeNearestNeighborOptions;
  103. struct ResizeNearestNeighborOptionsBuilder;
  104. struct ResizeNearestNeighborOptionsT;
  105. struct CallOptions;
  106. struct CallOptionsBuilder;
  107. struct CallOptionsT;
  108. struct PadOptions;
  109. struct PadOptionsBuilder;
  110. struct PadOptionsT;
  111. struct PadV2Options;
  112. struct PadV2OptionsBuilder;
  113. struct PadV2OptionsT;
  114. struct ReshapeOptions;
  115. struct ReshapeOptionsBuilder;
  116. struct ReshapeOptionsT;
  117. struct SpaceToBatchNDOptions;
  118. struct SpaceToBatchNDOptionsBuilder;
  119. struct SpaceToBatchNDOptionsT;
  120. struct BatchToSpaceNDOptions;
  121. struct BatchToSpaceNDOptionsBuilder;
  122. struct BatchToSpaceNDOptionsT;
  123. struct SkipGramOptions;
  124. struct SkipGramOptionsBuilder;
  125. struct SkipGramOptionsT;
  126. struct SpaceToDepthOptions;
  127. struct SpaceToDepthOptionsBuilder;
  128. struct SpaceToDepthOptionsT;
  129. struct DepthToSpaceOptions;
  130. struct DepthToSpaceOptionsBuilder;
  131. struct DepthToSpaceOptionsT;
  132. struct SubOptions;
  133. struct SubOptionsBuilder;
  134. struct SubOptionsT;
  135. struct DivOptions;
  136. struct DivOptionsBuilder;
  137. struct DivOptionsT;
  138. struct TopKV2Options;
  139. struct TopKV2OptionsBuilder;
  140. struct TopKV2OptionsT;
  141. struct EmbeddingLookupSparseOptions;
  142. struct EmbeddingLookupSparseOptionsBuilder;
  143. struct EmbeddingLookupSparseOptionsT;
  144. struct GatherOptions;
  145. struct GatherOptionsBuilder;
  146. struct GatherOptionsT;
  147. struct TransposeOptions;
  148. struct TransposeOptionsBuilder;
  149. struct TransposeOptionsT;
  150. struct ExpOptions;
  151. struct ExpOptionsBuilder;
  152. struct ExpOptionsT;
  153. struct CosOptions;
  154. struct CosOptionsBuilder;
  155. struct CosOptionsT;
  156. struct ReducerOptions;
  157. struct ReducerOptionsBuilder;
  158. struct ReducerOptionsT;
  159. struct SqueezeOptions;
  160. struct SqueezeOptionsBuilder;
  161. struct SqueezeOptionsT;
  162. struct SplitOptions;
  163. struct SplitOptionsBuilder;
  164. struct SplitOptionsT;
  165. struct SplitVOptions;
  166. struct SplitVOptionsBuilder;
  167. struct SplitVOptionsT;
  168. struct StridedSliceOptions;
  169. struct StridedSliceOptionsBuilder;
  170. struct StridedSliceOptionsT;
  171. struct LogSoftmaxOptions;
  172. struct LogSoftmaxOptionsBuilder;
  173. struct LogSoftmaxOptionsT;
  174. struct CastOptions;
  175. struct CastOptionsBuilder;
  176. struct CastOptionsT;
  177. struct DequantizeOptions;
  178. struct DequantizeOptionsBuilder;
  179. struct DequantizeOptionsT;
  180. struct MaximumMinimumOptions;
  181. struct MaximumMinimumOptionsBuilder;
  182. struct MaximumMinimumOptionsT;
  183. struct TileOptions;
  184. struct TileOptionsBuilder;
  185. struct TileOptionsT;
  186. struct ArgMaxOptions;
  187. struct ArgMaxOptionsBuilder;
  188. struct ArgMaxOptionsT;
  189. struct ArgMinOptions;
  190. struct ArgMinOptionsBuilder;
  191. struct ArgMinOptionsT;
  192. struct GreaterOptions;
  193. struct GreaterOptionsBuilder;
  194. struct GreaterOptionsT;
  195. struct GreaterEqualOptions;
  196. struct GreaterEqualOptionsBuilder;
  197. struct GreaterEqualOptionsT;
  198. struct LessOptions;
  199. struct LessOptionsBuilder;
  200. struct LessOptionsT;
  201. struct LessEqualOptions;
  202. struct LessEqualOptionsBuilder;
  203. struct LessEqualOptionsT;
  204. struct NegOptions;
  205. struct NegOptionsBuilder;
  206. struct NegOptionsT;
  207. struct SelectOptions;
  208. struct SelectOptionsBuilder;
  209. struct SelectOptionsT;
  210. struct SliceOptions;
  211. struct SliceOptionsBuilder;
  212. struct SliceOptionsT;
  213. struct TransposeConvOptions;
  214. struct TransposeConvOptionsBuilder;
  215. struct TransposeConvOptionsT;
  216. struct ExpandDimsOptions;
  217. struct ExpandDimsOptionsBuilder;
  218. struct ExpandDimsOptionsT;
  219. struct SparseToDenseOptions;
  220. struct SparseToDenseOptionsBuilder;
  221. struct SparseToDenseOptionsT;
  222. struct EqualOptions;
  223. struct EqualOptionsBuilder;
  224. struct EqualOptionsT;
  225. struct NotEqualOptions;
  226. struct NotEqualOptionsBuilder;
  227. struct NotEqualOptionsT;
  228. struct ShapeOptions;
  229. struct ShapeOptionsBuilder;
  230. struct ShapeOptionsT;
  231. struct RankOptions;
  232. struct RankOptionsBuilder;
  233. struct RankOptionsT;
  234. struct PowOptions;
  235. struct PowOptionsBuilder;
  236. struct PowOptionsT;
  237. struct FakeQuantOptions;
  238. struct FakeQuantOptionsBuilder;
  239. struct FakeQuantOptionsT;
  240. struct PackOptions;
  241. struct PackOptionsBuilder;
  242. struct PackOptionsT;
  243. struct LogicalOrOptions;
  244. struct LogicalOrOptionsBuilder;
  245. struct LogicalOrOptionsT;
  246. struct OneHotOptions;
  247. struct OneHotOptionsBuilder;
  248. struct OneHotOptionsT;
  249. struct AbsOptions;
  250. struct AbsOptionsBuilder;
  251. struct AbsOptionsT;
  252. struct HardSwishOptions;
  253. struct HardSwishOptionsBuilder;
  254. struct HardSwishOptionsT;
  255. struct LogicalAndOptions;
  256. struct LogicalAndOptionsBuilder;
  257. struct LogicalAndOptionsT;
  258. struct LogicalNotOptions;
  259. struct LogicalNotOptionsBuilder;
  260. struct LogicalNotOptionsT;
  261. struct UnpackOptions;
  262. struct UnpackOptionsBuilder;
  263. struct UnpackOptionsT;
  264. struct FloorDivOptions;
  265. struct FloorDivOptionsBuilder;
  266. struct FloorDivOptionsT;
  267. struct SquareOptions;
  268. struct SquareOptionsBuilder;
  269. struct SquareOptionsT;
  270. struct ZerosLikeOptions;
  271. struct ZerosLikeOptionsBuilder;
  272. struct ZerosLikeOptionsT;
  273. struct FillOptions;
  274. struct FillOptionsBuilder;
  275. struct FillOptionsT;
  276. struct FloorModOptions;
  277. struct FloorModOptionsBuilder;
  278. struct FloorModOptionsT;
  279. struct RangeOptions;
  280. struct RangeOptionsBuilder;
  281. struct RangeOptionsT;
  282. struct LeakyReluOptions;
  283. struct LeakyReluOptionsBuilder;
  284. struct LeakyReluOptionsT;
  285. struct SquaredDifferenceOptions;
  286. struct SquaredDifferenceOptionsBuilder;
  287. struct SquaredDifferenceOptionsT;
  288. struct MirrorPadOptions;
  289. struct MirrorPadOptionsBuilder;
  290. struct MirrorPadOptionsT;
  291. struct UniqueOptions;
  292. struct UniqueOptionsBuilder;
  293. struct UniqueOptionsT;
  294. struct ReverseV2Options;
  295. struct ReverseV2OptionsBuilder;
  296. struct ReverseV2OptionsT;
  297. struct AddNOptions;
  298. struct AddNOptionsBuilder;
  299. struct AddNOptionsT;
  300. struct GatherNdOptions;
  301. struct GatherNdOptionsBuilder;
  302. struct GatherNdOptionsT;
  303. struct WhereOptions;
  304. struct WhereOptionsBuilder;
  305. struct WhereOptionsT;
  306. struct ReverseSequenceOptions;
  307. struct ReverseSequenceOptionsBuilder;
  308. struct ReverseSequenceOptionsT;
  309. struct MatrixDiagOptions;
  310. struct MatrixDiagOptionsBuilder;
  311. struct MatrixDiagOptionsT;
  312. struct QuantizeOptions;
  313. struct QuantizeOptionsBuilder;
  314. struct QuantizeOptionsT;
  315. struct MatrixSetDiagOptions;
  316. struct MatrixSetDiagOptionsBuilder;
  317. struct MatrixSetDiagOptionsT;
  318. struct IfOptions;
  319. struct IfOptionsBuilder;
  320. struct IfOptionsT;
  321. struct CallOnceOptions;
  322. struct CallOnceOptionsBuilder;
  323. struct CallOnceOptionsT;
  324. struct WhileOptions;
  325. struct WhileOptionsBuilder;
  326. struct WhileOptionsT;
  327. struct NonMaxSuppressionV4Options;
  328. struct NonMaxSuppressionV4OptionsBuilder;
  329. struct NonMaxSuppressionV4OptionsT;
  330. struct NonMaxSuppressionV5Options;
  331. struct NonMaxSuppressionV5OptionsBuilder;
  332. struct NonMaxSuppressionV5OptionsT;
  333. struct ScatterNdOptions;
  334. struct ScatterNdOptionsBuilder;
  335. struct ScatterNdOptionsT;
  336. struct SelectV2Options;
  337. struct SelectV2OptionsBuilder;
  338. struct SelectV2OptionsT;
  339. struct DensifyOptions;
  340. struct DensifyOptionsBuilder;
  341. struct DensifyOptionsT;
  342. struct SegmentSumOptions;
  343. struct SegmentSumOptionsBuilder;
  344. struct SegmentSumOptionsT;
  345. struct BatchMatMulOptions;
  346. struct BatchMatMulOptionsBuilder;
  347. struct BatchMatMulOptionsT;
  348. struct CumsumOptions;
  349. struct CumsumOptionsBuilder;
  350. struct CumsumOptionsT;
  351. struct BroadcastToOptions;
  352. struct BroadcastToOptionsBuilder;
  353. struct BroadcastToOptionsT;
  354. struct Rfft2dOptions;
  355. struct Rfft2dOptionsBuilder;
  356. struct Rfft2dOptionsT;
  357. struct HashtableOptions;
  358. struct HashtableOptionsBuilder;
  359. struct HashtableOptionsT;
  360. struct HashtableFindOptions;
  361. struct HashtableFindOptionsBuilder;
  362. struct HashtableFindOptionsT;
  363. struct HashtableImportOptions;
  364. struct HashtableImportOptionsBuilder;
  365. struct HashtableImportOptionsT;
  366. struct HashtableSizeOptions;
  367. struct HashtableSizeOptionsBuilder;
  368. struct HashtableSizeOptionsT;
  369. struct VarHandleOptions;
  370. struct VarHandleOptionsBuilder;
  371. struct VarHandleOptionsT;
  372. struct ReadVariableOptions;
  373. struct ReadVariableOptionsBuilder;
  374. struct ReadVariableOptionsT;
  375. struct AssignVariableOptions;
  376. struct AssignVariableOptionsBuilder;
  377. struct AssignVariableOptionsT;
  378. struct RandomOptions;
  379. struct RandomOptionsBuilder;
  380. struct RandomOptionsT;
  381. struct BucketizeOptions;
  382. struct BucketizeOptionsBuilder;
  383. struct BucketizeOptionsT;
  384. struct GeluOptions;
  385. struct GeluOptionsBuilder;
  386. struct GeluOptionsT;
  387. struct DynamicUpdateSliceOptions;
  388. struct DynamicUpdateSliceOptionsBuilder;
  389. struct DynamicUpdateSliceOptionsT;
  390. struct UnsortedSegmentProdOptions;
  391. struct UnsortedSegmentProdOptionsBuilder;
  392. struct UnsortedSegmentProdOptionsT;
  393. struct UnsortedSegmentMaxOptions;
  394. struct UnsortedSegmentMaxOptionsBuilder;
  395. struct UnsortedSegmentMaxOptionsT;
  396. struct UnsortedSegmentSumOptions;
  397. struct UnsortedSegmentSumOptionsBuilder;
  398. struct UnsortedSegmentSumOptionsT;
  399. struct ATan2Options;
  400. struct ATan2OptionsBuilder;
  401. struct ATan2OptionsT;
  402. struct UnsortedSegmentMinOptions;
  403. struct UnsortedSegmentMinOptionsBuilder;
  404. struct UnsortedSegmentMinOptionsT;
  405. struct SignOptions;
  406. struct SignOptionsBuilder;
  407. struct SignOptionsT;
  408. struct OperatorCode;
  409. struct OperatorCodeBuilder;
  410. struct OperatorCodeT;
  411. struct Operator;
  412. struct OperatorBuilder;
  413. struct OperatorT;
  414. struct SubGraph;
  415. struct SubGraphBuilder;
  416. struct SubGraphT;
  417. struct Buffer;
  418. struct BufferBuilder;
  419. struct BufferT;
  420. struct Metadata;
  421. struct MetadataBuilder;
  422. struct MetadataT;
  423. struct TensorMap;
  424. struct TensorMapBuilder;
  425. struct TensorMapT;
  426. struct SignatureDef;
  427. struct SignatureDefBuilder;
  428. struct SignatureDefT;
  429. struct Model;
  430. struct ModelBuilder;
  431. struct ModelT;
  432. enum TensorType : int8_t {
  433. TensorType_FLOAT32 = 0,
  434. TensorType_FLOAT16 = 1,
  435. TensorType_INT32 = 2,
  436. TensorType_UINT8 = 3,
  437. TensorType_INT64 = 4,
  438. TensorType_STRING = 5,
  439. TensorType_BOOL = 6,
  440. TensorType_INT16 = 7,
  441. TensorType_COMPLEX64 = 8,
  442. TensorType_INT8 = 9,
  443. TensorType_FLOAT64 = 10,
  444. TensorType_COMPLEX128 = 11,
  445. TensorType_UINT64 = 12,
  446. TensorType_RESOURCE = 13,
  447. TensorType_VARIANT = 14,
  448. TensorType_UINT32 = 15,
  449. TensorType_UINT16 = 16,
  450. TensorType_MIN = TensorType_FLOAT32,
  451. TensorType_MAX = TensorType_UINT16
  452. };
  453. inline const TensorType (&EnumValuesTensorType())[17] {
  454. static const TensorType values[] = {
  455. TensorType_FLOAT32,
  456. TensorType_FLOAT16,
  457. TensorType_INT32,
  458. TensorType_UINT8,
  459. TensorType_INT64,
  460. TensorType_STRING,
  461. TensorType_BOOL,
  462. TensorType_INT16,
  463. TensorType_COMPLEX64,
  464. TensorType_INT8,
  465. TensorType_FLOAT64,
  466. TensorType_COMPLEX128,
  467. TensorType_UINT64,
  468. TensorType_RESOURCE,
  469. TensorType_VARIANT,
  470. TensorType_UINT32,
  471. TensorType_UINT16
  472. };
  473. return values;
  474. }
  475. inline const char * const *EnumNamesTensorType() {
  476. static const char * const names[18] = {
  477. "FLOAT32",
  478. "FLOAT16",
  479. "INT32",
  480. "UINT8",
  481. "INT64",
  482. "STRING",
  483. "BOOL",
  484. "INT16",
  485. "COMPLEX64",
  486. "INT8",
  487. "FLOAT64",
  488. "COMPLEX128",
  489. "UINT64",
  490. "RESOURCE",
  491. "VARIANT",
  492. "UINT32",
  493. "UINT16",
  494. nullptr
  495. };
  496. return names;
  497. }
  498. inline const char *EnumNameTensorType(TensorType e) {
  499. if (flatbuffers::IsOutRange(e, TensorType_FLOAT32, TensorType_UINT16)) return "";
  500. const size_t index = static_cast<size_t>(e);
  501. return EnumNamesTensorType()[index];
  502. }
  503. enum QuantizationDetails : uint8_t {
  504. QuantizationDetails_NONE = 0,
  505. QuantizationDetails_CustomQuantization = 1,
  506. QuantizationDetails_MIN = QuantizationDetails_NONE,
  507. QuantizationDetails_MAX = QuantizationDetails_CustomQuantization
  508. };
  509. inline const QuantizationDetails (&EnumValuesQuantizationDetails())[2] {
  510. static const QuantizationDetails values[] = {
  511. QuantizationDetails_NONE,
  512. QuantizationDetails_CustomQuantization
  513. };
  514. return values;
  515. }
  516. inline const char * const *EnumNamesQuantizationDetails() {
  517. static const char * const names[3] = {
  518. "NONE",
  519. "CustomQuantization",
  520. nullptr
  521. };
  522. return names;
  523. }
  524. inline const char *EnumNameQuantizationDetails(QuantizationDetails e) {
  525. if (flatbuffers::IsOutRange(e, QuantizationDetails_NONE, QuantizationDetails_CustomQuantization)) return "";
  526. const size_t index = static_cast<size_t>(e);
  527. return EnumNamesQuantizationDetails()[index];
  528. }
  529. template<typename T> struct QuantizationDetailsTraits {
  530. static const QuantizationDetails enum_value = QuantizationDetails_NONE;
  531. };
  532. template<> struct QuantizationDetailsTraits<tflite::CustomQuantization> {
  533. static const QuantizationDetails enum_value = QuantizationDetails_CustomQuantization;
  534. };
  535. template<typename T> struct QuantizationDetailsUnionTraits {
  536. static const QuantizationDetails enum_value = QuantizationDetails_NONE;
  537. };
  538. template<> struct QuantizationDetailsUnionTraits<tflite::CustomQuantizationT> {
  539. static const QuantizationDetails enum_value = QuantizationDetails_CustomQuantization;
  540. };
  541. struct QuantizationDetailsUnion {
  542. QuantizationDetails type;
  543. void *value;
  544. QuantizationDetailsUnion() : type(QuantizationDetails_NONE), value(nullptr) {}
  545. QuantizationDetailsUnion(QuantizationDetailsUnion&& u) FLATBUFFERS_NOEXCEPT :
  546. type(QuantizationDetails_NONE), value(nullptr)
  547. { std::swap(type, u.type); std::swap(value, u.value); }
  548. QuantizationDetailsUnion(const QuantizationDetailsUnion &);
  549. QuantizationDetailsUnion &operator=(const QuantizationDetailsUnion &u)
  550. { QuantizationDetailsUnion t(u); std::swap(type, t.type); std::swap(value, t.value); return *this; }
  551. QuantizationDetailsUnion &operator=(QuantizationDetailsUnion &&u) FLATBUFFERS_NOEXCEPT
  552. { std::swap(type, u.type); std::swap(value, u.value); return *this; }
  553. ~QuantizationDetailsUnion() { Reset(); }
  554. void Reset();
  555. template <typename T>
  556. void Set(T&& val) {
  557. typedef typename std::remove_reference<T>::type RT;
  558. Reset();
  559. type = QuantizationDetailsUnionTraits<RT>::enum_value;
  560. if (type != QuantizationDetails_NONE) {
  561. value = new RT(std::forward<T>(val));
  562. }
  563. }
  564. static void *UnPack(const void *obj, QuantizationDetails type, const flatbuffers::resolver_function_t *resolver);
  565. flatbuffers::Offset<void> Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher = nullptr) const;
  566. tflite::CustomQuantizationT *AsCustomQuantization() {
  567. return type == QuantizationDetails_CustomQuantization ?
  568. reinterpret_cast<tflite::CustomQuantizationT *>(value) : nullptr;
  569. }
  570. const tflite::CustomQuantizationT *AsCustomQuantization() const {
  571. return type == QuantizationDetails_CustomQuantization ?
  572. reinterpret_cast<const tflite::CustomQuantizationT *>(value) : nullptr;
  573. }
  574. };
  575. bool VerifyQuantizationDetails(flatbuffers::Verifier &verifier, const void *obj, QuantizationDetails type);
  576. bool VerifyQuantizationDetailsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types);
  577. enum DimensionType : int8_t {
  578. DimensionType_DENSE = 0,
  579. DimensionType_SPARSE_CSR = 1,
  580. DimensionType_MIN = DimensionType_DENSE,
  581. DimensionType_MAX = DimensionType_SPARSE_CSR
  582. };
  583. inline const DimensionType (&EnumValuesDimensionType())[2] {
  584. static const DimensionType values[] = {
  585. DimensionType_DENSE,
  586. DimensionType_SPARSE_CSR
  587. };
  588. return values;
  589. }
  590. inline const char * const *EnumNamesDimensionType() {
  591. static const char * const names[3] = {
  592. "DENSE",
  593. "SPARSE_CSR",
  594. nullptr
  595. };
  596. return names;
  597. }
  598. inline const char *EnumNameDimensionType(DimensionType e) {
  599. if (flatbuffers::IsOutRange(e, DimensionType_DENSE, DimensionType_SPARSE_CSR)) return "";
  600. const size_t index = static_cast<size_t>(e);
  601. return EnumNamesDimensionType()[index];
  602. }
  603. enum SparseIndexVector : uint8_t {
  604. SparseIndexVector_NONE = 0,
  605. SparseIndexVector_Int32Vector = 1,
  606. SparseIndexVector_Uint16Vector = 2,
  607. SparseIndexVector_Uint8Vector = 3,
  608. SparseIndexVector_MIN = SparseIndexVector_NONE,
  609. SparseIndexVector_MAX = SparseIndexVector_Uint8Vector
  610. };
  611. inline const SparseIndexVector (&EnumValuesSparseIndexVector())[4] {
  612. static const SparseIndexVector values[] = {
  613. SparseIndexVector_NONE,
  614. SparseIndexVector_Int32Vector,
  615. SparseIndexVector_Uint16Vector,
  616. SparseIndexVector_Uint8Vector
  617. };
  618. return values;
  619. }
  620. inline const char * const *EnumNamesSparseIndexVector() {
  621. static const char * const names[5] = {
  622. "NONE",
  623. "Int32Vector",
  624. "Uint16Vector",
  625. "Uint8Vector",
  626. nullptr
  627. };
  628. return names;
  629. }
  630. inline const char *EnumNameSparseIndexVector(SparseIndexVector e) {
  631. if (flatbuffers::IsOutRange(e, SparseIndexVector_NONE, SparseIndexVector_Uint8Vector)) return "";
  632. const size_t index = static_cast<size_t>(e);
  633. return EnumNamesSparseIndexVector()[index];
  634. }
  635. template<typename T> struct SparseIndexVectorTraits {
  636. static const SparseIndexVector enum_value = SparseIndexVector_NONE;
  637. };
  638. template<> struct SparseIndexVectorTraits<tflite::Int32Vector> {
  639. static const SparseIndexVector enum_value = SparseIndexVector_Int32Vector;
  640. };
  641. template<> struct SparseIndexVectorTraits<tflite::Uint16Vector> {
  642. static const SparseIndexVector enum_value = SparseIndexVector_Uint16Vector;
  643. };
  644. template<> struct SparseIndexVectorTraits<tflite::Uint8Vector> {
  645. static const SparseIndexVector enum_value = SparseIndexVector_Uint8Vector;
  646. };
  647. template<typename T> struct SparseIndexVectorUnionTraits {
  648. static const SparseIndexVector enum_value = SparseIndexVector_NONE;
  649. };
  650. template<> struct SparseIndexVectorUnionTraits<tflite::Int32VectorT> {
  651. static const SparseIndexVector enum_value = SparseIndexVector_Int32Vector;
  652. };
  653. template<> struct SparseIndexVectorUnionTraits<tflite::Uint16VectorT> {
  654. static const SparseIndexVector enum_value = SparseIndexVector_Uint16Vector;
  655. };
  656. template<> struct SparseIndexVectorUnionTraits<tflite::Uint8VectorT> {
  657. static const SparseIndexVector enum_value = SparseIndexVector_Uint8Vector;
  658. };
  659. struct SparseIndexVectorUnion {
  660. SparseIndexVector type;
  661. void *value;
  662. SparseIndexVectorUnion() : type(SparseIndexVector_NONE), value(nullptr) {}
  663. SparseIndexVectorUnion(SparseIndexVectorUnion&& u) FLATBUFFERS_NOEXCEPT :
  664. type(SparseIndexVector_NONE), value(nullptr)
  665. { std::swap(type, u.type); std::swap(value, u.value); }
  666. SparseIndexVectorUnion(const SparseIndexVectorUnion &);
  667. SparseIndexVectorUnion &operator=(const SparseIndexVectorUnion &u)
  668. { SparseIndexVectorUnion t(u); std::swap(type, t.type); std::swap(value, t.value); return *this; }
  669. SparseIndexVectorUnion &operator=(SparseIndexVectorUnion &&u) FLATBUFFERS_NOEXCEPT
  670. { std::swap(type, u.type); std::swap(value, u.value); return *this; }
  671. ~SparseIndexVectorUnion() { Reset(); }
  672. void Reset();
  673. template <typename T>
  674. void Set(T&& val) {
  675. typedef typename std::remove_reference<T>::type RT;
  676. Reset();
  677. type = SparseIndexVectorUnionTraits<RT>::enum_value;
  678. if (type != SparseIndexVector_NONE) {
  679. value = new RT(std::forward<T>(val));
  680. }
  681. }
  682. static void *UnPack(const void *obj, SparseIndexVector type, const flatbuffers::resolver_function_t *resolver);
  683. flatbuffers::Offset<void> Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher = nullptr) const;
  684. tflite::Int32VectorT *AsInt32Vector() {
  685. return type == SparseIndexVector_Int32Vector ?
  686. reinterpret_cast<tflite::Int32VectorT *>(value) : nullptr;
  687. }
  688. const tflite::Int32VectorT *AsInt32Vector() const {
  689. return type == SparseIndexVector_Int32Vector ?
  690. reinterpret_cast<const tflite::Int32VectorT *>(value) : nullptr;
  691. }
  692. tflite::Uint16VectorT *AsUint16Vector() {
  693. return type == SparseIndexVector_Uint16Vector ?
  694. reinterpret_cast<tflite::Uint16VectorT *>(value) : nullptr;
  695. }
  696. const tflite::Uint16VectorT *AsUint16Vector() const {
  697. return type == SparseIndexVector_Uint16Vector ?
  698. reinterpret_cast<const tflite::Uint16VectorT *>(value) : nullptr;
  699. }
  700. tflite::Uint8VectorT *AsUint8Vector() {
  701. return type == SparseIndexVector_Uint8Vector ?
  702. reinterpret_cast<tflite::Uint8VectorT *>(value) : nullptr;
  703. }
  704. const tflite::Uint8VectorT *AsUint8Vector() const {
  705. return type == SparseIndexVector_Uint8Vector ?
  706. reinterpret_cast<const tflite::Uint8VectorT *>(value) : nullptr;
  707. }
  708. };
  709. bool VerifySparseIndexVector(flatbuffers::Verifier &verifier, const void *obj, SparseIndexVector type);
  710. bool VerifySparseIndexVectorVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types);
  711. enum BuiltinOperator : int32_t {
  712. BuiltinOperator_ADD = 0,
  713. BuiltinOperator_AVERAGE_POOL_2D = 1,
  714. BuiltinOperator_CONCATENATION = 2,
  715. BuiltinOperator_CONV_2D = 3,
  716. BuiltinOperator_DEPTHWISE_CONV_2D = 4,
  717. BuiltinOperator_DEPTH_TO_SPACE = 5,
  718. BuiltinOperator_DEQUANTIZE = 6,
  719. BuiltinOperator_EMBEDDING_LOOKUP = 7,
  720. BuiltinOperator_FLOOR = 8,
  721. BuiltinOperator_FULLY_CONNECTED = 9,
  722. BuiltinOperator_HASHTABLE_LOOKUP = 10,
  723. BuiltinOperator_L2_NORMALIZATION = 11,
  724. BuiltinOperator_L2_POOL_2D = 12,
  725. BuiltinOperator_LOCAL_RESPONSE_NORMALIZATION = 13,
  726. BuiltinOperator_LOGISTIC = 14,
  727. BuiltinOperator_LSH_PROJECTION = 15,
  728. BuiltinOperator_LSTM = 16,
  729. BuiltinOperator_MAX_POOL_2D = 17,
  730. BuiltinOperator_MUL = 18,
  731. BuiltinOperator_RELU = 19,
  732. BuiltinOperator_RELU_N1_TO_1 = 20,
  733. BuiltinOperator_RELU6 = 21,
  734. BuiltinOperator_RESHAPE = 22,
  735. BuiltinOperator_RESIZE_BILINEAR = 23,
  736. BuiltinOperator_RNN = 24,
  737. BuiltinOperator_SOFTMAX = 25,
  738. BuiltinOperator_SPACE_TO_DEPTH = 26,
  739. BuiltinOperator_SVDF = 27,
  740. BuiltinOperator_TANH = 28,
  741. BuiltinOperator_CONCAT_EMBEDDINGS = 29,
  742. BuiltinOperator_SKIP_GRAM = 30,
  743. BuiltinOperator_CALL = 31,
  744. BuiltinOperator_CUSTOM = 32,
  745. BuiltinOperator_EMBEDDING_LOOKUP_SPARSE = 33,
  746. BuiltinOperator_PAD = 34,
  747. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_RNN = 35,
  748. BuiltinOperator_GATHER = 36,
  749. BuiltinOperator_BATCH_TO_SPACE_ND = 37,
  750. BuiltinOperator_SPACE_TO_BATCH_ND = 38,
  751. BuiltinOperator_TRANSPOSE = 39,
  752. BuiltinOperator_MEAN = 40,
  753. BuiltinOperator_SUB = 41,
  754. BuiltinOperator_DIV = 42,
  755. BuiltinOperator_SQUEEZE = 43,
  756. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_LSTM = 44,
  757. BuiltinOperator_STRIDED_SLICE = 45,
  758. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_RNN = 46,
  759. BuiltinOperator_EXP = 47,
  760. BuiltinOperator_TOPK_V2 = 48,
  761. BuiltinOperator_SPLIT = 49,
  762. BuiltinOperator_LOG_SOFTMAX = 50,
  763. BuiltinOperator_DELEGATE = 51,
  764. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_LSTM = 52,
  765. BuiltinOperator_CAST = 53,
  766. BuiltinOperator_PRELU = 54,
  767. BuiltinOperator_MAXIMUM = 55,
  768. BuiltinOperator_ARG_MAX = 56,
  769. BuiltinOperator_MINIMUM = 57,
  770. BuiltinOperator_LESS = 58,
  771. BuiltinOperator_NEG = 59,
  772. BuiltinOperator_PADV2 = 60,
  773. BuiltinOperator_GREATER = 61,
  774. BuiltinOperator_GREATER_EQUAL = 62,
  775. BuiltinOperator_LESS_EQUAL = 63,
  776. BuiltinOperator_SELECT = 64,
  777. BuiltinOperator_SLICE = 65,
  778. BuiltinOperator_SIN = 66,
  779. BuiltinOperator_TRANSPOSE_CONV = 67,
  780. BuiltinOperator_SPARSE_TO_DENSE = 68,
  781. BuiltinOperator_TILE = 69,
  782. BuiltinOperator_EXPAND_DIMS = 70,
  783. BuiltinOperator_EQUAL = 71,
  784. BuiltinOperator_NOT_EQUAL = 72,
  785. BuiltinOperator_LOG = 73,
  786. BuiltinOperator_SUM = 74,
  787. BuiltinOperator_SQRT = 75,
  788. BuiltinOperator_RSQRT = 76,
  789. BuiltinOperator_SHAPE = 77,
  790. BuiltinOperator_POW = 78,
  791. BuiltinOperator_ARG_MIN = 79,
  792. BuiltinOperator_FAKE_QUANT = 80,
  793. BuiltinOperator_REDUCE_PROD = 81,
  794. BuiltinOperator_REDUCE_MAX = 82,
  795. BuiltinOperator_PACK = 83,
  796. BuiltinOperator_LOGICAL_OR = 84,
  797. BuiltinOperator_ONE_HOT = 85,
  798. BuiltinOperator_LOGICAL_AND = 86,
  799. BuiltinOperator_LOGICAL_NOT = 87,
  800. BuiltinOperator_UNPACK = 88,
  801. BuiltinOperator_REDUCE_MIN = 89,
  802. BuiltinOperator_FLOOR_DIV = 90,
  803. BuiltinOperator_REDUCE_ANY = 91,
  804. BuiltinOperator_SQUARE = 92,
  805. BuiltinOperator_ZEROS_LIKE = 93,
  806. BuiltinOperator_FILL = 94,
  807. BuiltinOperator_FLOOR_MOD = 95,
  808. BuiltinOperator_RANGE = 96,
  809. BuiltinOperator_RESIZE_NEAREST_NEIGHBOR = 97,
  810. BuiltinOperator_LEAKY_RELU = 98,
  811. BuiltinOperator_SQUARED_DIFFERENCE = 99,
  812. BuiltinOperator_MIRROR_PAD = 100,
  813. BuiltinOperator_ABS = 101,
  814. BuiltinOperator_SPLIT_V = 102,
  815. BuiltinOperator_UNIQUE = 103,
  816. BuiltinOperator_CEIL = 104,
  817. BuiltinOperator_REVERSE_V2 = 105,
  818. BuiltinOperator_ADD_N = 106,
  819. BuiltinOperator_GATHER_ND = 107,
  820. BuiltinOperator_COS = 108,
  821. BuiltinOperator_WHERE = 109,
  822. BuiltinOperator_RANK = 110,
  823. BuiltinOperator_ELU = 111,
  824. BuiltinOperator_REVERSE_SEQUENCE = 112,
  825. BuiltinOperator_MATRIX_DIAG = 113,
  826. BuiltinOperator_QUANTIZE = 114,
  827. BuiltinOperator_MATRIX_SET_DIAG = 115,
  828. BuiltinOperator_ROUND = 116,
  829. BuiltinOperator_HARD_SWISH = 117,
  830. BuiltinOperator_IF = 118,
  831. BuiltinOperator_WHILE = 119,
  832. BuiltinOperator_NON_MAX_SUPPRESSION_V4 = 120,
  833. BuiltinOperator_NON_MAX_SUPPRESSION_V5 = 121,
  834. BuiltinOperator_SCATTER_ND = 122,
  835. BuiltinOperator_SELECT_V2 = 123,
  836. BuiltinOperator_DENSIFY = 124,
  837. BuiltinOperator_SEGMENT_SUM = 125,
  838. BuiltinOperator_BATCH_MATMUL = 126,
  839. BuiltinOperator_PLACEHOLDER_FOR_GREATER_OP_CODES = 127,
  840. BuiltinOperator_CUMSUM = 128,
  841. BuiltinOperator_CALL_ONCE = 129,
  842. BuiltinOperator_BROADCAST_TO = 130,
  843. BuiltinOperator_RFFT2D = 131,
  844. BuiltinOperator_CONV_3D = 132,
  845. BuiltinOperator_IMAG = 133,
  846. BuiltinOperator_REAL = 134,
  847. BuiltinOperator_COMPLEX_ABS = 135,
  848. BuiltinOperator_HASHTABLE = 136,
  849. BuiltinOperator_HASHTABLE_FIND = 137,
  850. BuiltinOperator_HASHTABLE_IMPORT = 138,
  851. BuiltinOperator_HASHTABLE_SIZE = 139,
  852. BuiltinOperator_REDUCE_ALL = 140,
  853. BuiltinOperator_CONV_3D_TRANSPOSE = 141,
  854. BuiltinOperator_VAR_HANDLE = 142,
  855. BuiltinOperator_READ_VARIABLE = 143,
  856. BuiltinOperator_ASSIGN_VARIABLE = 144,
  857. BuiltinOperator_BROADCAST_ARGS = 145,
  858. BuiltinOperator_RANDOM_STANDARD_NORMAL = 146,
  859. BuiltinOperator_BUCKETIZE = 147,
  860. BuiltinOperator_RANDOM_UNIFORM = 148,
  861. BuiltinOperator_MULTINOMIAL = 149,
  862. BuiltinOperator_GELU = 150,
  863. BuiltinOperator_DYNAMIC_UPDATE_SLICE = 151,
  864. BuiltinOperator_RELU_0_TO_1 = 152,
  865. BuiltinOperator_UNSORTED_SEGMENT_PROD = 153,
  866. BuiltinOperator_UNSORTED_SEGMENT_MAX = 154,
  867. BuiltinOperator_UNSORTED_SEGMENT_SUM = 155,
  868. BuiltinOperator_ATAN2 = 156,
  869. BuiltinOperator_UNSORTED_SEGMENT_MIN = 157,
  870. BuiltinOperator_SIGN = 158,
  871. BuiltinOperator_MIN = BuiltinOperator_ADD,
  872. BuiltinOperator_MAX = BuiltinOperator_SIGN
  873. };
  874. inline const BuiltinOperator (&EnumValuesBuiltinOperator())[159] {
  875. static const BuiltinOperator values[] = {
  876. BuiltinOperator_ADD,
  877. BuiltinOperator_AVERAGE_POOL_2D,
  878. BuiltinOperator_CONCATENATION,
  879. BuiltinOperator_CONV_2D,
  880. BuiltinOperator_DEPTHWISE_CONV_2D,
  881. BuiltinOperator_DEPTH_TO_SPACE,
  882. BuiltinOperator_DEQUANTIZE,
  883. BuiltinOperator_EMBEDDING_LOOKUP,
  884. BuiltinOperator_FLOOR,
  885. BuiltinOperator_FULLY_CONNECTED,
  886. BuiltinOperator_HASHTABLE_LOOKUP,
  887. BuiltinOperator_L2_NORMALIZATION,
  888. BuiltinOperator_L2_POOL_2D,
  889. BuiltinOperator_LOCAL_RESPONSE_NORMALIZATION,
  890. BuiltinOperator_LOGISTIC,
  891. BuiltinOperator_LSH_PROJECTION,
  892. BuiltinOperator_LSTM,
  893. BuiltinOperator_MAX_POOL_2D,
  894. BuiltinOperator_MUL,
  895. BuiltinOperator_RELU,
  896. BuiltinOperator_RELU_N1_TO_1,
  897. BuiltinOperator_RELU6,
  898. BuiltinOperator_RESHAPE,
  899. BuiltinOperator_RESIZE_BILINEAR,
  900. BuiltinOperator_RNN,
  901. BuiltinOperator_SOFTMAX,
  902. BuiltinOperator_SPACE_TO_DEPTH,
  903. BuiltinOperator_SVDF,
  904. BuiltinOperator_TANH,
  905. BuiltinOperator_CONCAT_EMBEDDINGS,
  906. BuiltinOperator_SKIP_GRAM,
  907. BuiltinOperator_CALL,
  908. BuiltinOperator_CUSTOM,
  909. BuiltinOperator_EMBEDDING_LOOKUP_SPARSE,
  910. BuiltinOperator_PAD,
  911. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_RNN,
  912. BuiltinOperator_GATHER,
  913. BuiltinOperator_BATCH_TO_SPACE_ND,
  914. BuiltinOperator_SPACE_TO_BATCH_ND,
  915. BuiltinOperator_TRANSPOSE,
  916. BuiltinOperator_MEAN,
  917. BuiltinOperator_SUB,
  918. BuiltinOperator_DIV,
  919. BuiltinOperator_SQUEEZE,
  920. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_LSTM,
  921. BuiltinOperator_STRIDED_SLICE,
  922. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_RNN,
  923. BuiltinOperator_EXP,
  924. BuiltinOperator_TOPK_V2,
  925. BuiltinOperator_SPLIT,
  926. BuiltinOperator_LOG_SOFTMAX,
  927. BuiltinOperator_DELEGATE,
  928. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_LSTM,
  929. BuiltinOperator_CAST,
  930. BuiltinOperator_PRELU,
  931. BuiltinOperator_MAXIMUM,
  932. BuiltinOperator_ARG_MAX,
  933. BuiltinOperator_MINIMUM,
  934. BuiltinOperator_LESS,
  935. BuiltinOperator_NEG,
  936. BuiltinOperator_PADV2,
  937. BuiltinOperator_GREATER,
  938. BuiltinOperator_GREATER_EQUAL,
  939. BuiltinOperator_LESS_EQUAL,
  940. BuiltinOperator_SELECT,
  941. BuiltinOperator_SLICE,
  942. BuiltinOperator_SIN,
  943. BuiltinOperator_TRANSPOSE_CONV,
  944. BuiltinOperator_SPARSE_TO_DENSE,
  945. BuiltinOperator_TILE,
  946. BuiltinOperator_EXPAND_DIMS,
  947. BuiltinOperator_EQUAL,
  948. BuiltinOperator_NOT_EQUAL,
  949. BuiltinOperator_LOG,
  950. BuiltinOperator_SUM,
  951. BuiltinOperator_SQRT,
  952. BuiltinOperator_RSQRT,
  953. BuiltinOperator_SHAPE,
  954. BuiltinOperator_POW,
  955. BuiltinOperator_ARG_MIN,
  956. BuiltinOperator_FAKE_QUANT,
  957. BuiltinOperator_REDUCE_PROD,
  958. BuiltinOperator_REDUCE_MAX,
  959. BuiltinOperator_PACK,
  960. BuiltinOperator_LOGICAL_OR,
  961. BuiltinOperator_ONE_HOT,
  962. BuiltinOperator_LOGICAL_AND,
  963. BuiltinOperator_LOGICAL_NOT,
  964. BuiltinOperator_UNPACK,
  965. BuiltinOperator_REDUCE_MIN,
  966. BuiltinOperator_FLOOR_DIV,
  967. BuiltinOperator_REDUCE_ANY,
  968. BuiltinOperator_SQUARE,
  969. BuiltinOperator_ZEROS_LIKE,
  970. BuiltinOperator_FILL,
  971. BuiltinOperator_FLOOR_MOD,
  972. BuiltinOperator_RANGE,
  973. BuiltinOperator_RESIZE_NEAREST_NEIGHBOR,
  974. BuiltinOperator_LEAKY_RELU,
  975. BuiltinOperator_SQUARED_DIFFERENCE,
  976. BuiltinOperator_MIRROR_PAD,
  977. BuiltinOperator_ABS,
  978. BuiltinOperator_SPLIT_V,
  979. BuiltinOperator_UNIQUE,
  980. BuiltinOperator_CEIL,
  981. BuiltinOperator_REVERSE_V2,
  982. BuiltinOperator_ADD_N,
  983. BuiltinOperator_GATHER_ND,
  984. BuiltinOperator_COS,
  985. BuiltinOperator_WHERE,
  986. BuiltinOperator_RANK,
  987. BuiltinOperator_ELU,
  988. BuiltinOperator_REVERSE_SEQUENCE,
  989. BuiltinOperator_MATRIX_DIAG,
  990. BuiltinOperator_QUANTIZE,
  991. BuiltinOperator_MATRIX_SET_DIAG,
  992. BuiltinOperator_ROUND,
  993. BuiltinOperator_HARD_SWISH,
  994. BuiltinOperator_IF,
  995. BuiltinOperator_WHILE,
  996. BuiltinOperator_NON_MAX_SUPPRESSION_V4,
  997. BuiltinOperator_NON_MAX_SUPPRESSION_V5,
  998. BuiltinOperator_SCATTER_ND,
  999. BuiltinOperator_SELECT_V2,
  1000. BuiltinOperator_DENSIFY,
  1001. BuiltinOperator_SEGMENT_SUM,
  1002. BuiltinOperator_BATCH_MATMUL,
  1003. BuiltinOperator_PLACEHOLDER_FOR_GREATER_OP_CODES,
  1004. BuiltinOperator_CUMSUM,
  1005. BuiltinOperator_CALL_ONCE,
  1006. BuiltinOperator_BROADCAST_TO,
  1007. BuiltinOperator_RFFT2D,
  1008. BuiltinOperator_CONV_3D,
  1009. BuiltinOperator_IMAG,
  1010. BuiltinOperator_REAL,
  1011. BuiltinOperator_COMPLEX_ABS,
  1012. BuiltinOperator_HASHTABLE,
  1013. BuiltinOperator_HASHTABLE_FIND,
  1014. BuiltinOperator_HASHTABLE_IMPORT,
  1015. BuiltinOperator_HASHTABLE_SIZE,
  1016. BuiltinOperator_REDUCE_ALL,
  1017. BuiltinOperator_CONV_3D_TRANSPOSE,
  1018. BuiltinOperator_VAR_HANDLE,
  1019. BuiltinOperator_READ_VARIABLE,
  1020. BuiltinOperator_ASSIGN_VARIABLE,
  1021. BuiltinOperator_BROADCAST_ARGS,
  1022. BuiltinOperator_RANDOM_STANDARD_NORMAL,
  1023. BuiltinOperator_BUCKETIZE,
  1024. BuiltinOperator_RANDOM_UNIFORM,
  1025. BuiltinOperator_MULTINOMIAL,
  1026. BuiltinOperator_GELU,
  1027. BuiltinOperator_DYNAMIC_UPDATE_SLICE,
  1028. BuiltinOperator_RELU_0_TO_1,
  1029. BuiltinOperator_UNSORTED_SEGMENT_PROD,
  1030. BuiltinOperator_UNSORTED_SEGMENT_MAX,
  1031. BuiltinOperator_UNSORTED_SEGMENT_SUM,
  1032. BuiltinOperator_ATAN2,
  1033. BuiltinOperator_UNSORTED_SEGMENT_MIN,
  1034. BuiltinOperator_SIGN
  1035. };
  1036. return values;
  1037. }
  1038. inline const char * const *EnumNamesBuiltinOperator() {
  1039. static const char * const names[160] = {
  1040. "ADD",
  1041. "AVERAGE_POOL_2D",
  1042. "CONCATENATION",
  1043. "CONV_2D",
  1044. "DEPTHWISE_CONV_2D",
  1045. "DEPTH_TO_SPACE",
  1046. "DEQUANTIZE",
  1047. "EMBEDDING_LOOKUP",
  1048. "FLOOR",
  1049. "FULLY_CONNECTED",
  1050. "HASHTABLE_LOOKUP",
  1051. "L2_NORMALIZATION",
  1052. "L2_POOL_2D",
  1053. "LOCAL_RESPONSE_NORMALIZATION",
  1054. "LOGISTIC",
  1055. "LSH_PROJECTION",
  1056. "LSTM",
  1057. "MAX_POOL_2D",
  1058. "MUL",
  1059. "RELU",
  1060. "RELU_N1_TO_1",
  1061. "RELU6",
  1062. "RESHAPE",
  1063. "RESIZE_BILINEAR",
  1064. "RNN",
  1065. "SOFTMAX",
  1066. "SPACE_TO_DEPTH",
  1067. "SVDF",
  1068. "TANH",
  1069. "CONCAT_EMBEDDINGS",
  1070. "SKIP_GRAM",
  1071. "CALL",
  1072. "CUSTOM",
  1073. "EMBEDDING_LOOKUP_SPARSE",
  1074. "PAD",
  1075. "UNIDIRECTIONAL_SEQUENCE_RNN",
  1076. "GATHER",
  1077. "BATCH_TO_SPACE_ND",
  1078. "SPACE_TO_BATCH_ND",
  1079. "TRANSPOSE",
  1080. "MEAN",
  1081. "SUB",
  1082. "DIV",
  1083. "SQUEEZE",
  1084. "UNIDIRECTIONAL_SEQUENCE_LSTM",
  1085. "STRIDED_SLICE",
  1086. "BIDIRECTIONAL_SEQUENCE_RNN",
  1087. "EXP",
  1088. "TOPK_V2",
  1089. "SPLIT",
  1090. "LOG_SOFTMAX",
  1091. "DELEGATE",
  1092. "BIDIRECTIONAL_SEQUENCE_LSTM",
  1093. "CAST",
  1094. "PRELU",
  1095. "MAXIMUM",
  1096. "ARG_MAX",
  1097. "MINIMUM",
  1098. "LESS",
  1099. "NEG",
  1100. "PADV2",
  1101. "GREATER",
  1102. "GREATER_EQUAL",
  1103. "LESS_EQUAL",
  1104. "SELECT",
  1105. "SLICE",
  1106. "SIN",
  1107. "TRANSPOSE_CONV",
  1108. "SPARSE_TO_DENSE",
  1109. "TILE",
  1110. "EXPAND_DIMS",
  1111. "EQUAL",
  1112. "NOT_EQUAL",
  1113. "LOG",
  1114. "SUM",
  1115. "SQRT",
  1116. "RSQRT",
  1117. "SHAPE",
  1118. "POW",
  1119. "ARG_MIN",
  1120. "FAKE_QUANT",
  1121. "REDUCE_PROD",
  1122. "REDUCE_MAX",
  1123. "PACK",
  1124. "LOGICAL_OR",
  1125. "ONE_HOT",
  1126. "LOGICAL_AND",
  1127. "LOGICAL_NOT",
  1128. "UNPACK",
  1129. "REDUCE_MIN",
  1130. "FLOOR_DIV",
  1131. "REDUCE_ANY",
  1132. "SQUARE",
  1133. "ZEROS_LIKE",
  1134. "FILL",
  1135. "FLOOR_MOD",
  1136. "RANGE",
  1137. "RESIZE_NEAREST_NEIGHBOR",
  1138. "LEAKY_RELU",
  1139. "SQUARED_DIFFERENCE",
  1140. "MIRROR_PAD",
  1141. "ABS",
  1142. "SPLIT_V",
  1143. "UNIQUE",
  1144. "CEIL",
  1145. "REVERSE_V2",
  1146. "ADD_N",
  1147. "GATHER_ND",
  1148. "COS",
  1149. "WHERE",
  1150. "RANK",
  1151. "ELU",
  1152. "REVERSE_SEQUENCE",
  1153. "MATRIX_DIAG",
  1154. "QUANTIZE",
  1155. "MATRIX_SET_DIAG",
  1156. "ROUND",
  1157. "HARD_SWISH",
  1158. "IF",
  1159. "WHILE",
  1160. "NON_MAX_SUPPRESSION_V4",
  1161. "NON_MAX_SUPPRESSION_V5",
  1162. "SCATTER_ND",
  1163. "SELECT_V2",
  1164. "DENSIFY",
  1165. "SEGMENT_SUM",
  1166. "BATCH_MATMUL",
  1167. "PLACEHOLDER_FOR_GREATER_OP_CODES",
  1168. "CUMSUM",
  1169. "CALL_ONCE",
  1170. "BROADCAST_TO",
  1171. "RFFT2D",
  1172. "CONV_3D",
  1173. "IMAG",
  1174. "REAL",
  1175. "COMPLEX_ABS",
  1176. "HASHTABLE",
  1177. "HASHTABLE_FIND",
  1178. "HASHTABLE_IMPORT",
  1179. "HASHTABLE_SIZE",
  1180. "REDUCE_ALL",
  1181. "CONV_3D_TRANSPOSE",
  1182. "VAR_HANDLE",
  1183. "READ_VARIABLE",
  1184. "ASSIGN_VARIABLE",
  1185. "BROADCAST_ARGS",
  1186. "RANDOM_STANDARD_NORMAL",
  1187. "BUCKETIZE",
  1188. "RANDOM_UNIFORM",
  1189. "MULTINOMIAL",
  1190. "GELU",
  1191. "DYNAMIC_UPDATE_SLICE",
  1192. "RELU_0_TO_1",
  1193. "UNSORTED_SEGMENT_PROD",
  1194. "UNSORTED_SEGMENT_MAX",
  1195. "UNSORTED_SEGMENT_SUM",
  1196. "ATAN2",
  1197. "UNSORTED_SEGMENT_MIN",
  1198. "SIGN",
  1199. nullptr
  1200. };
  1201. return names;
  1202. }
  1203. inline const char *EnumNameBuiltinOperator(BuiltinOperator e) {
  1204. if (flatbuffers::IsOutRange(e, BuiltinOperator_ADD, BuiltinOperator_SIGN)) return "";
  1205. const size_t index = static_cast<size_t>(e);
  1206. return EnumNamesBuiltinOperator()[index];
  1207. }
  1208. enum BuiltinOptions : uint8_t {
  1209. BuiltinOptions_NONE = 0,
  1210. BuiltinOptions_Conv2DOptions = 1,
  1211. BuiltinOptions_DepthwiseConv2DOptions = 2,
  1212. BuiltinOptions_ConcatEmbeddingsOptions = 3,
  1213. BuiltinOptions_LSHProjectionOptions = 4,
  1214. BuiltinOptions_Pool2DOptions = 5,
  1215. BuiltinOptions_SVDFOptions = 6,
  1216. BuiltinOptions_RNNOptions = 7,
  1217. BuiltinOptions_FullyConnectedOptions = 8,
  1218. BuiltinOptions_SoftmaxOptions = 9,
  1219. BuiltinOptions_ConcatenationOptions = 10,
  1220. BuiltinOptions_AddOptions = 11,
  1221. BuiltinOptions_L2NormOptions = 12,
  1222. BuiltinOptions_LocalResponseNormalizationOptions = 13,
  1223. BuiltinOptions_LSTMOptions = 14,
  1224. BuiltinOptions_ResizeBilinearOptions = 15,
  1225. BuiltinOptions_CallOptions = 16,
  1226. BuiltinOptions_ReshapeOptions = 17,
  1227. BuiltinOptions_SkipGramOptions = 18,
  1228. BuiltinOptions_SpaceToDepthOptions = 19,
  1229. BuiltinOptions_EmbeddingLookupSparseOptions = 20,
  1230. BuiltinOptions_MulOptions = 21,
  1231. BuiltinOptions_PadOptions = 22,
  1232. BuiltinOptions_GatherOptions = 23,
  1233. BuiltinOptions_BatchToSpaceNDOptions = 24,
  1234. BuiltinOptions_SpaceToBatchNDOptions = 25,
  1235. BuiltinOptions_TransposeOptions = 26,
  1236. BuiltinOptions_ReducerOptions = 27,
  1237. BuiltinOptions_SubOptions = 28,
  1238. BuiltinOptions_DivOptions = 29,
  1239. BuiltinOptions_SqueezeOptions = 30,
  1240. BuiltinOptions_SequenceRNNOptions = 31,
  1241. BuiltinOptions_StridedSliceOptions = 32,
  1242. BuiltinOptions_ExpOptions = 33,
  1243. BuiltinOptions_TopKV2Options = 34,
  1244. BuiltinOptions_SplitOptions = 35,
  1245. BuiltinOptions_LogSoftmaxOptions = 36,
  1246. BuiltinOptions_CastOptions = 37,
  1247. BuiltinOptions_DequantizeOptions = 38,
  1248. BuiltinOptions_MaximumMinimumOptions = 39,
  1249. BuiltinOptions_ArgMaxOptions = 40,
  1250. BuiltinOptions_LessOptions = 41,
  1251. BuiltinOptions_NegOptions = 42,
  1252. BuiltinOptions_PadV2Options = 43,
  1253. BuiltinOptions_GreaterOptions = 44,
  1254. BuiltinOptions_GreaterEqualOptions = 45,
  1255. BuiltinOptions_LessEqualOptions = 46,
  1256. BuiltinOptions_SelectOptions = 47,
  1257. BuiltinOptions_SliceOptions = 48,
  1258. BuiltinOptions_TransposeConvOptions = 49,
  1259. BuiltinOptions_SparseToDenseOptions = 50,
  1260. BuiltinOptions_TileOptions = 51,
  1261. BuiltinOptions_ExpandDimsOptions = 52,
  1262. BuiltinOptions_EqualOptions = 53,
  1263. BuiltinOptions_NotEqualOptions = 54,
  1264. BuiltinOptions_ShapeOptions = 55,
  1265. BuiltinOptions_PowOptions = 56,
  1266. BuiltinOptions_ArgMinOptions = 57,
  1267. BuiltinOptions_FakeQuantOptions = 58,
  1268. BuiltinOptions_PackOptions = 59,
  1269. BuiltinOptions_LogicalOrOptions = 60,
  1270. BuiltinOptions_OneHotOptions = 61,
  1271. BuiltinOptions_LogicalAndOptions = 62,
  1272. BuiltinOptions_LogicalNotOptions = 63,
  1273. BuiltinOptions_UnpackOptions = 64,
  1274. BuiltinOptions_FloorDivOptions = 65,
  1275. BuiltinOptions_SquareOptions = 66,
  1276. BuiltinOptions_ZerosLikeOptions = 67,
  1277. BuiltinOptions_FillOptions = 68,
  1278. BuiltinOptions_BidirectionalSequenceLSTMOptions = 69,
  1279. BuiltinOptions_BidirectionalSequenceRNNOptions = 70,
  1280. BuiltinOptions_UnidirectionalSequenceLSTMOptions = 71,
  1281. BuiltinOptions_FloorModOptions = 72,
  1282. BuiltinOptions_RangeOptions = 73,
  1283. BuiltinOptions_ResizeNearestNeighborOptions = 74,
  1284. BuiltinOptions_LeakyReluOptions = 75,
  1285. BuiltinOptions_SquaredDifferenceOptions = 76,
  1286. BuiltinOptions_MirrorPadOptions = 77,
  1287. BuiltinOptions_AbsOptions = 78,
  1288. BuiltinOptions_SplitVOptions = 79,
  1289. BuiltinOptions_UniqueOptions = 80,
  1290. BuiltinOptions_ReverseV2Options = 81,
  1291. BuiltinOptions_AddNOptions = 82,
  1292. BuiltinOptions_GatherNdOptions = 83,
  1293. BuiltinOptions_CosOptions = 84,
  1294. BuiltinOptions_WhereOptions = 85,
  1295. BuiltinOptions_RankOptions = 86,
  1296. BuiltinOptions_ReverseSequenceOptions = 87,
  1297. BuiltinOptions_MatrixDiagOptions = 88,
  1298. BuiltinOptions_QuantizeOptions = 89,
  1299. BuiltinOptions_MatrixSetDiagOptions = 90,
  1300. BuiltinOptions_HardSwishOptions = 91,
  1301. BuiltinOptions_IfOptions = 92,
  1302. BuiltinOptions_WhileOptions = 93,
  1303. BuiltinOptions_DepthToSpaceOptions = 94,
  1304. BuiltinOptions_NonMaxSuppressionV4Options = 95,
  1305. BuiltinOptions_NonMaxSuppressionV5Options = 96,
  1306. BuiltinOptions_ScatterNdOptions = 97,
  1307. BuiltinOptions_SelectV2Options = 98,
  1308. BuiltinOptions_DensifyOptions = 99,
  1309. BuiltinOptions_SegmentSumOptions = 100,
  1310. BuiltinOptions_BatchMatMulOptions = 101,
  1311. BuiltinOptions_CumsumOptions = 102,
  1312. BuiltinOptions_CallOnceOptions = 103,
  1313. BuiltinOptions_BroadcastToOptions = 104,
  1314. BuiltinOptions_Rfft2dOptions = 105,
  1315. BuiltinOptions_Conv3DOptions = 106,
  1316. BuiltinOptions_HashtableOptions = 107,
  1317. BuiltinOptions_HashtableFindOptions = 108,
  1318. BuiltinOptions_HashtableImportOptions = 109,
  1319. BuiltinOptions_HashtableSizeOptions = 110,
  1320. BuiltinOptions_VarHandleOptions = 111,
  1321. BuiltinOptions_ReadVariableOptions = 112,
  1322. BuiltinOptions_AssignVariableOptions = 113,
  1323. BuiltinOptions_RandomOptions = 114,
  1324. BuiltinOptions_BucketizeOptions = 115,
  1325. BuiltinOptions_GeluOptions = 116,
  1326. BuiltinOptions_DynamicUpdateSliceOptions = 117,
  1327. BuiltinOptions_UnsortedSegmentProdOptions = 118,
  1328. BuiltinOptions_UnsortedSegmentMaxOptions = 119,
  1329. BuiltinOptions_UnsortedSegmentMinOptions = 120,
  1330. BuiltinOptions_UnsortedSegmentSumOptions = 121,
  1331. BuiltinOptions_ATan2Options = 122,
  1332. BuiltinOptions_SignOptions = 123,
  1333. BuiltinOptions_MIN = BuiltinOptions_NONE,
  1334. BuiltinOptions_MAX = BuiltinOptions_SignOptions
  1335. };
  1336. inline const BuiltinOptions (&EnumValuesBuiltinOptions())[124] {
  1337. static const BuiltinOptions values[] = {
  1338. BuiltinOptions_NONE,
  1339. BuiltinOptions_Conv2DOptions,
  1340. BuiltinOptions_DepthwiseConv2DOptions,
  1341. BuiltinOptions_ConcatEmbeddingsOptions,
  1342. BuiltinOptions_LSHProjectionOptions,
  1343. BuiltinOptions_Pool2DOptions,
  1344. BuiltinOptions_SVDFOptions,
  1345. BuiltinOptions_RNNOptions,
  1346. BuiltinOptions_FullyConnectedOptions,
  1347. BuiltinOptions_SoftmaxOptions,
  1348. BuiltinOptions_ConcatenationOptions,
  1349. BuiltinOptions_AddOptions,
  1350. BuiltinOptions_L2NormOptions,
  1351. BuiltinOptions_LocalResponseNormalizationOptions,
  1352. BuiltinOptions_LSTMOptions,
  1353. BuiltinOptions_ResizeBilinearOptions,
  1354. BuiltinOptions_CallOptions,
  1355. BuiltinOptions_ReshapeOptions,
  1356. BuiltinOptions_SkipGramOptions,
  1357. BuiltinOptions_SpaceToDepthOptions,
  1358. BuiltinOptions_EmbeddingLookupSparseOptions,
  1359. BuiltinOptions_MulOptions,
  1360. BuiltinOptions_PadOptions,
  1361. BuiltinOptions_GatherOptions,
  1362. BuiltinOptions_BatchToSpaceNDOptions,
  1363. BuiltinOptions_SpaceToBatchNDOptions,
  1364. BuiltinOptions_TransposeOptions,
  1365. BuiltinOptions_ReducerOptions,
  1366. BuiltinOptions_SubOptions,
  1367. BuiltinOptions_DivOptions,
  1368. BuiltinOptions_SqueezeOptions,
  1369. BuiltinOptions_SequenceRNNOptions,
  1370. BuiltinOptions_StridedSliceOptions,
  1371. BuiltinOptions_ExpOptions,
  1372. BuiltinOptions_TopKV2Options,
  1373. BuiltinOptions_SplitOptions,
  1374. BuiltinOptions_LogSoftmaxOptions,
  1375. BuiltinOptions_CastOptions,
  1376. BuiltinOptions_DequantizeOptions,
  1377. BuiltinOptions_MaximumMinimumOptions,
  1378. BuiltinOptions_ArgMaxOptions,
  1379. BuiltinOptions_LessOptions,
  1380. BuiltinOptions_NegOptions,
  1381. BuiltinOptions_PadV2Options,
  1382. BuiltinOptions_GreaterOptions,
  1383. BuiltinOptions_GreaterEqualOptions,
  1384. BuiltinOptions_LessEqualOptions,
  1385. BuiltinOptions_SelectOptions,
  1386. BuiltinOptions_SliceOptions,
  1387. BuiltinOptions_TransposeConvOptions,
  1388. BuiltinOptions_SparseToDenseOptions,
  1389. BuiltinOptions_TileOptions,
  1390. BuiltinOptions_ExpandDimsOptions,
  1391. BuiltinOptions_EqualOptions,
  1392. BuiltinOptions_NotEqualOptions,
  1393. BuiltinOptions_ShapeOptions,
  1394. BuiltinOptions_PowOptions,
  1395. BuiltinOptions_ArgMinOptions,
  1396. BuiltinOptions_FakeQuantOptions,
  1397. BuiltinOptions_PackOptions,
  1398. BuiltinOptions_LogicalOrOptions,
  1399. BuiltinOptions_OneHotOptions,
  1400. BuiltinOptions_LogicalAndOptions,
  1401. BuiltinOptions_LogicalNotOptions,
  1402. BuiltinOptions_UnpackOptions,
  1403. BuiltinOptions_FloorDivOptions,
  1404. BuiltinOptions_SquareOptions,
  1405. BuiltinOptions_ZerosLikeOptions,
  1406. BuiltinOptions_FillOptions,
  1407. BuiltinOptions_BidirectionalSequenceLSTMOptions,
  1408. BuiltinOptions_BidirectionalSequenceRNNOptions,
  1409. BuiltinOptions_UnidirectionalSequenceLSTMOptions,
  1410. BuiltinOptions_FloorModOptions,
  1411. BuiltinOptions_RangeOptions,
  1412. BuiltinOptions_ResizeNearestNeighborOptions,
  1413. BuiltinOptions_LeakyReluOptions,
  1414. BuiltinOptions_SquaredDifferenceOptions,
  1415. BuiltinOptions_MirrorPadOptions,
  1416. BuiltinOptions_AbsOptions,
  1417. BuiltinOptions_SplitVOptions,
  1418. BuiltinOptions_UniqueOptions,
  1419. BuiltinOptions_ReverseV2Options,
  1420. BuiltinOptions_AddNOptions,
  1421. BuiltinOptions_GatherNdOptions,
  1422. BuiltinOptions_CosOptions,
  1423. BuiltinOptions_WhereOptions,
  1424. BuiltinOptions_RankOptions,
  1425. BuiltinOptions_ReverseSequenceOptions,
  1426. BuiltinOptions_MatrixDiagOptions,
  1427. BuiltinOptions_QuantizeOptions,
  1428. BuiltinOptions_MatrixSetDiagOptions,
  1429. BuiltinOptions_HardSwishOptions,
  1430. BuiltinOptions_IfOptions,
  1431. BuiltinOptions_WhileOptions,
  1432. BuiltinOptions_DepthToSpaceOptions,
  1433. BuiltinOptions_NonMaxSuppressionV4Options,
  1434. BuiltinOptions_NonMaxSuppressionV5Options,
  1435. BuiltinOptions_ScatterNdOptions,
  1436. BuiltinOptions_SelectV2Options,
  1437. BuiltinOptions_DensifyOptions,
  1438. BuiltinOptions_SegmentSumOptions,
  1439. BuiltinOptions_BatchMatMulOptions,
  1440. BuiltinOptions_CumsumOptions,
  1441. BuiltinOptions_CallOnceOptions,
  1442. BuiltinOptions_BroadcastToOptions,
  1443. BuiltinOptions_Rfft2dOptions,
  1444. BuiltinOptions_Conv3DOptions,
  1445. BuiltinOptions_HashtableOptions,
  1446. BuiltinOptions_HashtableFindOptions,
  1447. BuiltinOptions_HashtableImportOptions,
  1448. BuiltinOptions_HashtableSizeOptions,
  1449. BuiltinOptions_VarHandleOptions,
  1450. BuiltinOptions_ReadVariableOptions,
  1451. BuiltinOptions_AssignVariableOptions,
  1452. BuiltinOptions_RandomOptions,
  1453. BuiltinOptions_BucketizeOptions,
  1454. BuiltinOptions_GeluOptions,
  1455. BuiltinOptions_DynamicUpdateSliceOptions,
  1456. BuiltinOptions_UnsortedSegmentProdOptions,
  1457. BuiltinOptions_UnsortedSegmentMaxOptions,
  1458. BuiltinOptions_UnsortedSegmentMinOptions,
  1459. BuiltinOptions_UnsortedSegmentSumOptions,
  1460. BuiltinOptions_ATan2Options,
  1461. BuiltinOptions_SignOptions
  1462. };
  1463. return values;
  1464. }
  1465. inline const char * const *EnumNamesBuiltinOptions() {
  1466. static const char * const names[125] = {
  1467. "NONE",
  1468. "Conv2DOptions",
  1469. "DepthwiseConv2DOptions",
  1470. "ConcatEmbeddingsOptions",
  1471. "LSHProjectionOptions",
  1472. "Pool2DOptions",
  1473. "SVDFOptions",
  1474. "RNNOptions",
  1475. "FullyConnectedOptions",
  1476. "SoftmaxOptions",
  1477. "ConcatenationOptions",
  1478. "AddOptions",
  1479. "L2NormOptions",
  1480. "LocalResponseNormalizationOptions",
  1481. "LSTMOptions",
  1482. "ResizeBilinearOptions",
  1483. "CallOptions",
  1484. "ReshapeOptions",
  1485. "SkipGramOptions",
  1486. "SpaceToDepthOptions",
  1487. "EmbeddingLookupSparseOptions",
  1488. "MulOptions",
  1489. "PadOptions",
  1490. "GatherOptions",
  1491. "BatchToSpaceNDOptions",
  1492. "SpaceToBatchNDOptions",
  1493. "TransposeOptions",
  1494. "ReducerOptions",
  1495. "SubOptions",
  1496. "DivOptions",
  1497. "SqueezeOptions",
  1498. "SequenceRNNOptions",
  1499. "StridedSliceOptions",
  1500. "ExpOptions",
  1501. "TopKV2Options",
  1502. "SplitOptions",
  1503. "LogSoftmaxOptions",
  1504. "CastOptions",
  1505. "DequantizeOptions",
  1506. "MaximumMinimumOptions",
  1507. "ArgMaxOptions",
  1508. "LessOptions",
  1509. "NegOptions",
  1510. "PadV2Options",
  1511. "GreaterOptions",
  1512. "GreaterEqualOptions",
  1513. "LessEqualOptions",
  1514. "SelectOptions",
  1515. "SliceOptions",
  1516. "TransposeConvOptions",
  1517. "SparseToDenseOptions",
  1518. "TileOptions",
  1519. "ExpandDimsOptions",
  1520. "EqualOptions",
  1521. "NotEqualOptions",
  1522. "ShapeOptions",
  1523. "PowOptions",
  1524. "ArgMinOptions",
  1525. "FakeQuantOptions",
  1526. "PackOptions",
  1527. "LogicalOrOptions",
  1528. "OneHotOptions",
  1529. "LogicalAndOptions",
  1530. "LogicalNotOptions",
  1531. "UnpackOptions",
  1532. "FloorDivOptions",
  1533. "SquareOptions",
  1534. "ZerosLikeOptions",
  1535. "FillOptions",
  1536. "BidirectionalSequenceLSTMOptions",
  1537. "BidirectionalSequenceRNNOptions",
  1538. "UnidirectionalSequenceLSTMOptions",
  1539. "FloorModOptions",
  1540. "RangeOptions",
  1541. "ResizeNearestNeighborOptions",
  1542. "LeakyReluOptions",
  1543. "SquaredDifferenceOptions",
  1544. "MirrorPadOptions",
  1545. "AbsOptions",
  1546. "SplitVOptions",
  1547. "UniqueOptions",
  1548. "ReverseV2Options",
  1549. "AddNOptions",
  1550. "GatherNdOptions",
  1551. "CosOptions",
  1552. "WhereOptions",
  1553. "RankOptions",
  1554. "ReverseSequenceOptions",
  1555. "MatrixDiagOptions",
  1556. "QuantizeOptions",
  1557. "MatrixSetDiagOptions",
  1558. "HardSwishOptions",
  1559. "IfOptions",
  1560. "WhileOptions",
  1561. "DepthToSpaceOptions",
  1562. "NonMaxSuppressionV4Options",
  1563. "NonMaxSuppressionV5Options",
  1564. "ScatterNdOptions",
  1565. "SelectV2Options",
  1566. "DensifyOptions",
  1567. "SegmentSumOptions",
  1568. "BatchMatMulOptions",
  1569. "CumsumOptions",
  1570. "CallOnceOptions",
  1571. "BroadcastToOptions",
  1572. "Rfft2dOptions",
  1573. "Conv3DOptions",
  1574. "HashtableOptions",
  1575. "HashtableFindOptions",
  1576. "HashtableImportOptions",
  1577. "HashtableSizeOptions",
  1578. "VarHandleOptions",
  1579. "ReadVariableOptions",
  1580. "AssignVariableOptions",
  1581. "RandomOptions",
  1582. "BucketizeOptions",
  1583. "GeluOptions",
  1584. "DynamicUpdateSliceOptions",
  1585. "UnsortedSegmentProdOptions",
  1586. "UnsortedSegmentMaxOptions",
  1587. "UnsortedSegmentMinOptions",
  1588. "UnsortedSegmentSumOptions",
  1589. "ATan2Options",
  1590. "SignOptions",
  1591. nullptr
  1592. };
  1593. return names;
  1594. }
  1595. inline const char *EnumNameBuiltinOptions(BuiltinOptions e) {
  1596. if (flatbuffers::IsOutRange(e, BuiltinOptions_NONE, BuiltinOptions_SignOptions)) return "";
  1597. const size_t index = static_cast<size_t>(e);
  1598. return EnumNamesBuiltinOptions()[index];
  1599. }
  1600. template<typename T> struct BuiltinOptionsTraits {
  1601. static const BuiltinOptions enum_value = BuiltinOptions_NONE;
  1602. };
  1603. template<> struct BuiltinOptionsTraits<tflite::Conv2DOptions> {
  1604. static const BuiltinOptions enum_value = BuiltinOptions_Conv2DOptions;
  1605. };
  1606. template<> struct BuiltinOptionsTraits<tflite::DepthwiseConv2DOptions> {
  1607. static const BuiltinOptions enum_value = BuiltinOptions_DepthwiseConv2DOptions;
  1608. };
  1609. template<> struct BuiltinOptionsTraits<tflite::ConcatEmbeddingsOptions> {
  1610. static const BuiltinOptions enum_value = BuiltinOptions_ConcatEmbeddingsOptions;
  1611. };
  1612. template<> struct BuiltinOptionsTraits<tflite::LSHProjectionOptions> {
  1613. static const BuiltinOptions enum_value = BuiltinOptions_LSHProjectionOptions;
  1614. };
  1615. template<> struct BuiltinOptionsTraits<tflite::Pool2DOptions> {
  1616. static const BuiltinOptions enum_value = BuiltinOptions_Pool2DOptions;
  1617. };
  1618. template<> struct BuiltinOptionsTraits<tflite::SVDFOptions> {
  1619. static const BuiltinOptions enum_value = BuiltinOptions_SVDFOptions;
  1620. };
  1621. template<> struct BuiltinOptionsTraits<tflite::RNNOptions> {
  1622. static const BuiltinOptions enum_value = BuiltinOptions_RNNOptions;
  1623. };
  1624. template<> struct BuiltinOptionsTraits<tflite::FullyConnectedOptions> {
  1625. static const BuiltinOptions enum_value = BuiltinOptions_FullyConnectedOptions;
  1626. };
  1627. template<> struct BuiltinOptionsTraits<tflite::SoftmaxOptions> {
  1628. static const BuiltinOptions enum_value = BuiltinOptions_SoftmaxOptions;
  1629. };
  1630. template<> struct BuiltinOptionsTraits<tflite::ConcatenationOptions> {
  1631. static const BuiltinOptions enum_value = BuiltinOptions_ConcatenationOptions;
  1632. };
  1633. template<> struct BuiltinOptionsTraits<tflite::AddOptions> {
  1634. static const BuiltinOptions enum_value = BuiltinOptions_AddOptions;
  1635. };
  1636. template<> struct BuiltinOptionsTraits<tflite::L2NormOptions> {
  1637. static const BuiltinOptions enum_value = BuiltinOptions_L2NormOptions;
  1638. };
  1639. template<> struct BuiltinOptionsTraits<tflite::LocalResponseNormalizationOptions> {
  1640. static const BuiltinOptions enum_value = BuiltinOptions_LocalResponseNormalizationOptions;
  1641. };
  1642. template<> struct BuiltinOptionsTraits<tflite::LSTMOptions> {
  1643. static const BuiltinOptions enum_value = BuiltinOptions_LSTMOptions;
  1644. };
  1645. template<> struct BuiltinOptionsTraits<tflite::ResizeBilinearOptions> {
  1646. static const BuiltinOptions enum_value = BuiltinOptions_ResizeBilinearOptions;
  1647. };
  1648. template<> struct BuiltinOptionsTraits<tflite::CallOptions> {
  1649. static const BuiltinOptions enum_value = BuiltinOptions_CallOptions;
  1650. };
  1651. template<> struct BuiltinOptionsTraits<tflite::ReshapeOptions> {
  1652. static const BuiltinOptions enum_value = BuiltinOptions_ReshapeOptions;
  1653. };
  1654. template<> struct BuiltinOptionsTraits<tflite::SkipGramOptions> {
  1655. static const BuiltinOptions enum_value = BuiltinOptions_SkipGramOptions;
  1656. };
  1657. template<> struct BuiltinOptionsTraits<tflite::SpaceToDepthOptions> {
  1658. static const BuiltinOptions enum_value = BuiltinOptions_SpaceToDepthOptions;
  1659. };
  1660. template<> struct BuiltinOptionsTraits<tflite::EmbeddingLookupSparseOptions> {
  1661. static const BuiltinOptions enum_value = BuiltinOptions_EmbeddingLookupSparseOptions;
  1662. };
  1663. template<> struct BuiltinOptionsTraits<tflite::MulOptions> {
  1664. static const BuiltinOptions enum_value = BuiltinOptions_MulOptions;
  1665. };
  1666. template<> struct BuiltinOptionsTraits<tflite::PadOptions> {
  1667. static const BuiltinOptions enum_value = BuiltinOptions_PadOptions;
  1668. };
  1669. template<> struct BuiltinOptionsTraits<tflite::GatherOptions> {
  1670. static const BuiltinOptions enum_value = BuiltinOptions_GatherOptions;
  1671. };
  1672. template<> struct BuiltinOptionsTraits<tflite::BatchToSpaceNDOptions> {
  1673. static const BuiltinOptions enum_value = BuiltinOptions_BatchToSpaceNDOptions;
  1674. };
  1675. template<> struct BuiltinOptionsTraits<tflite::SpaceToBatchNDOptions> {
  1676. static const BuiltinOptions enum_value = BuiltinOptions_SpaceToBatchNDOptions;
  1677. };
  1678. template<> struct BuiltinOptionsTraits<tflite::TransposeOptions> {
  1679. static const BuiltinOptions enum_value = BuiltinOptions_TransposeOptions;
  1680. };
  1681. template<> struct BuiltinOptionsTraits<tflite::ReducerOptions> {
  1682. static const BuiltinOptions enum_value = BuiltinOptions_ReducerOptions;
  1683. };
  1684. template<> struct BuiltinOptionsTraits<tflite::SubOptions> {
  1685. static const BuiltinOptions enum_value = BuiltinOptions_SubOptions;
  1686. };
  1687. template<> struct BuiltinOptionsTraits<tflite::DivOptions> {
  1688. static const BuiltinOptions enum_value = BuiltinOptions_DivOptions;
  1689. };
  1690. template<> struct BuiltinOptionsTraits<tflite::SqueezeOptions> {
  1691. static const BuiltinOptions enum_value = BuiltinOptions_SqueezeOptions;
  1692. };
  1693. template<> struct BuiltinOptionsTraits<tflite::SequenceRNNOptions> {
  1694. static const BuiltinOptions enum_value = BuiltinOptions_SequenceRNNOptions;
  1695. };
  1696. template<> struct BuiltinOptionsTraits<tflite::StridedSliceOptions> {
  1697. static const BuiltinOptions enum_value = BuiltinOptions_StridedSliceOptions;
  1698. };
  1699. template<> struct BuiltinOptionsTraits<tflite::ExpOptions> {
  1700. static const BuiltinOptions enum_value = BuiltinOptions_ExpOptions;
  1701. };
  1702. template<> struct BuiltinOptionsTraits<tflite::TopKV2Options> {
  1703. static const BuiltinOptions enum_value = BuiltinOptions_TopKV2Options;
  1704. };
  1705. template<> struct BuiltinOptionsTraits<tflite::SplitOptions> {
  1706. static const BuiltinOptions enum_value = BuiltinOptions_SplitOptions;
  1707. };
  1708. template<> struct BuiltinOptionsTraits<tflite::LogSoftmaxOptions> {
  1709. static const BuiltinOptions enum_value = BuiltinOptions_LogSoftmaxOptions;
  1710. };
  1711. template<> struct BuiltinOptionsTraits<tflite::CastOptions> {
  1712. static const BuiltinOptions enum_value = BuiltinOptions_CastOptions;
  1713. };
  1714. template<> struct BuiltinOptionsTraits<tflite::DequantizeOptions> {
  1715. static const BuiltinOptions enum_value = BuiltinOptions_DequantizeOptions;
  1716. };
  1717. template<> struct BuiltinOptionsTraits<tflite::MaximumMinimumOptions> {
  1718. static const BuiltinOptions enum_value = BuiltinOptions_MaximumMinimumOptions;
  1719. };
  1720. template<> struct BuiltinOptionsTraits<tflite::ArgMaxOptions> {
  1721. static const BuiltinOptions enum_value = BuiltinOptions_ArgMaxOptions;
  1722. };
  1723. template<> struct BuiltinOptionsTraits<tflite::LessOptions> {
  1724. static const BuiltinOptions enum_value = BuiltinOptions_LessOptions;
  1725. };
  1726. template<> struct BuiltinOptionsTraits<tflite::NegOptions> {
  1727. static const BuiltinOptions enum_value = BuiltinOptions_NegOptions;
  1728. };
  1729. template<> struct BuiltinOptionsTraits<tflite::PadV2Options> {
  1730. static const BuiltinOptions enum_value = BuiltinOptions_PadV2Options;
  1731. };
  1732. template<> struct BuiltinOptionsTraits<tflite::GreaterOptions> {
  1733. static const BuiltinOptions enum_value = BuiltinOptions_GreaterOptions;
  1734. };
  1735. template<> struct BuiltinOptionsTraits<tflite::GreaterEqualOptions> {
  1736. static const BuiltinOptions enum_value = BuiltinOptions_GreaterEqualOptions;
  1737. };
  1738. template<> struct BuiltinOptionsTraits<tflite::LessEqualOptions> {
  1739. static const BuiltinOptions enum_value = BuiltinOptions_LessEqualOptions;
  1740. };
  1741. template<> struct BuiltinOptionsTraits<tflite::SelectOptions> {
  1742. static const BuiltinOptions enum_value = BuiltinOptions_SelectOptions;
  1743. };
  1744. template<> struct BuiltinOptionsTraits<tflite::SliceOptions> {
  1745. static const BuiltinOptions enum_value = BuiltinOptions_SliceOptions;
  1746. };
  1747. template<> struct BuiltinOptionsTraits<tflite::TransposeConvOptions> {
  1748. static const BuiltinOptions enum_value = BuiltinOptions_TransposeConvOptions;
  1749. };
  1750. template<> struct BuiltinOptionsTraits<tflite::SparseToDenseOptions> {
  1751. static const BuiltinOptions enum_value = BuiltinOptions_SparseToDenseOptions;
  1752. };
  1753. template<> struct BuiltinOptionsTraits<tflite::TileOptions> {
  1754. static const BuiltinOptions enum_value = BuiltinOptions_TileOptions;
  1755. };
  1756. template<> struct BuiltinOptionsTraits<tflite::ExpandDimsOptions> {
  1757. static const BuiltinOptions enum_value = BuiltinOptions_ExpandDimsOptions;
  1758. };
  1759. template<> struct BuiltinOptionsTraits<tflite::EqualOptions> {
  1760. static const BuiltinOptions enum_value = BuiltinOptions_EqualOptions;
  1761. };
  1762. template<> struct BuiltinOptionsTraits<tflite::NotEqualOptions> {
  1763. static const BuiltinOptions enum_value = BuiltinOptions_NotEqualOptions;
  1764. };
  1765. template<> struct BuiltinOptionsTraits<tflite::ShapeOptions> {
  1766. static const BuiltinOptions enum_value = BuiltinOptions_ShapeOptions;
  1767. };
  1768. template<> struct BuiltinOptionsTraits<tflite::PowOptions> {
  1769. static const BuiltinOptions enum_value = BuiltinOptions_PowOptions;
  1770. };
  1771. template<> struct BuiltinOptionsTraits<tflite::ArgMinOptions> {
  1772. static const BuiltinOptions enum_value = BuiltinOptions_ArgMinOptions;
  1773. };
  1774. template<> struct BuiltinOptionsTraits<tflite::FakeQuantOptions> {
  1775. static const BuiltinOptions enum_value = BuiltinOptions_FakeQuantOptions;
  1776. };
  1777. template<> struct BuiltinOptionsTraits<tflite::PackOptions> {
  1778. static const BuiltinOptions enum_value = BuiltinOptions_PackOptions;
  1779. };
  1780. template<> struct BuiltinOptionsTraits<tflite::LogicalOrOptions> {
  1781. static const BuiltinOptions enum_value = BuiltinOptions_LogicalOrOptions;
  1782. };
  1783. template<> struct BuiltinOptionsTraits<tflite::OneHotOptions> {
  1784. static const BuiltinOptions enum_value = BuiltinOptions_OneHotOptions;
  1785. };
  1786. template<> struct BuiltinOptionsTraits<tflite::LogicalAndOptions> {
  1787. static const BuiltinOptions enum_value = BuiltinOptions_LogicalAndOptions;
  1788. };
  1789. template<> struct BuiltinOptionsTraits<tflite::LogicalNotOptions> {
  1790. static const BuiltinOptions enum_value = BuiltinOptions_LogicalNotOptions;
  1791. };
  1792. template<> struct BuiltinOptionsTraits<tflite::UnpackOptions> {
  1793. static const BuiltinOptions enum_value = BuiltinOptions_UnpackOptions;
  1794. };
  1795. template<> struct BuiltinOptionsTraits<tflite::FloorDivOptions> {
  1796. static const BuiltinOptions enum_value = BuiltinOptions_FloorDivOptions;
  1797. };
  1798. template<> struct BuiltinOptionsTraits<tflite::SquareOptions> {
  1799. static const BuiltinOptions enum_value = BuiltinOptions_SquareOptions;
  1800. };
  1801. template<> struct BuiltinOptionsTraits<tflite::ZerosLikeOptions> {
  1802. static const BuiltinOptions enum_value = BuiltinOptions_ZerosLikeOptions;
  1803. };
  1804. template<> struct BuiltinOptionsTraits<tflite::FillOptions> {
  1805. static const BuiltinOptions enum_value = BuiltinOptions_FillOptions;
  1806. };
  1807. template<> struct BuiltinOptionsTraits<tflite::BidirectionalSequenceLSTMOptions> {
  1808. static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceLSTMOptions;
  1809. };
  1810. template<> struct BuiltinOptionsTraits<tflite::BidirectionalSequenceRNNOptions> {
  1811. static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceRNNOptions;
  1812. };
  1813. template<> struct BuiltinOptionsTraits<tflite::UnidirectionalSequenceLSTMOptions> {
  1814. static const BuiltinOptions enum_value = BuiltinOptions_UnidirectionalSequenceLSTMOptions;
  1815. };
  1816. template<> struct BuiltinOptionsTraits<tflite::FloorModOptions> {
  1817. static const BuiltinOptions enum_value = BuiltinOptions_FloorModOptions;
  1818. };
  1819. template<> struct BuiltinOptionsTraits<tflite::RangeOptions> {
  1820. static const BuiltinOptions enum_value = BuiltinOptions_RangeOptions;
  1821. };
  1822. template<> struct BuiltinOptionsTraits<tflite::ResizeNearestNeighborOptions> {
  1823. static const BuiltinOptions enum_value = BuiltinOptions_ResizeNearestNeighborOptions;
  1824. };
  1825. template<> struct BuiltinOptionsTraits<tflite::LeakyReluOptions> {
  1826. static const BuiltinOptions enum_value = BuiltinOptions_LeakyReluOptions;
  1827. };
  1828. template<> struct BuiltinOptionsTraits<tflite::SquaredDifferenceOptions> {
  1829. static const BuiltinOptions enum_value = BuiltinOptions_SquaredDifferenceOptions;
  1830. };
  1831. template<> struct BuiltinOptionsTraits<tflite::MirrorPadOptions> {
  1832. static const BuiltinOptions enum_value = BuiltinOptions_MirrorPadOptions;
  1833. };
  1834. template<> struct BuiltinOptionsTraits<tflite::AbsOptions> {
  1835. static const BuiltinOptions enum_value = BuiltinOptions_AbsOptions;
  1836. };
  1837. template<> struct BuiltinOptionsTraits<tflite::SplitVOptions> {
  1838. static const BuiltinOptions enum_value = BuiltinOptions_SplitVOptions;
  1839. };
  1840. template<> struct BuiltinOptionsTraits<tflite::UniqueOptions> {
  1841. static const BuiltinOptions enum_value = BuiltinOptions_UniqueOptions;
  1842. };
  1843. template<> struct BuiltinOptionsTraits<tflite::ReverseV2Options> {
  1844. static const BuiltinOptions enum_value = BuiltinOptions_ReverseV2Options;
  1845. };
  1846. template<> struct BuiltinOptionsTraits<tflite::AddNOptions> {
  1847. static const BuiltinOptions enum_value = BuiltinOptions_AddNOptions;
  1848. };
  1849. template<> struct BuiltinOptionsTraits<tflite::GatherNdOptions> {
  1850. static const BuiltinOptions enum_value = BuiltinOptions_GatherNdOptions;
  1851. };
  1852. template<> struct BuiltinOptionsTraits<tflite::CosOptions> {
  1853. static const BuiltinOptions enum_value = BuiltinOptions_CosOptions;
  1854. };
  1855. template<> struct BuiltinOptionsTraits<tflite::WhereOptions> {
  1856. static const BuiltinOptions enum_value = BuiltinOptions_WhereOptions;
  1857. };
  1858. template<> struct BuiltinOptionsTraits<tflite::RankOptions> {
  1859. static const BuiltinOptions enum_value = BuiltinOptions_RankOptions;
  1860. };
  1861. template<> struct BuiltinOptionsTraits<tflite::ReverseSequenceOptions> {
  1862. static const BuiltinOptions enum_value = BuiltinOptions_ReverseSequenceOptions;
  1863. };
  1864. template<> struct BuiltinOptionsTraits<tflite::MatrixDiagOptions> {
  1865. static const BuiltinOptions enum_value = BuiltinOptions_MatrixDiagOptions;
  1866. };
  1867. template<> struct BuiltinOptionsTraits<tflite::QuantizeOptions> {
  1868. static const BuiltinOptions enum_value = BuiltinOptions_QuantizeOptions;
  1869. };
  1870. template<> struct BuiltinOptionsTraits<tflite::MatrixSetDiagOptions> {
  1871. static const BuiltinOptions enum_value = BuiltinOptions_MatrixSetDiagOptions;
  1872. };
  1873. template<> struct BuiltinOptionsTraits<tflite::HardSwishOptions> {
  1874. static const BuiltinOptions enum_value = BuiltinOptions_HardSwishOptions;
  1875. };
  1876. template<> struct BuiltinOptionsTraits<tflite::IfOptions> {
  1877. static const BuiltinOptions enum_value = BuiltinOptions_IfOptions;
  1878. };
  1879. template<> struct BuiltinOptionsTraits<tflite::WhileOptions> {
  1880. static const BuiltinOptions enum_value = BuiltinOptions_WhileOptions;
  1881. };
  1882. template<> struct BuiltinOptionsTraits<tflite::DepthToSpaceOptions> {
  1883. static const BuiltinOptions enum_value = BuiltinOptions_DepthToSpaceOptions;
  1884. };
  1885. template<> struct BuiltinOptionsTraits<tflite::NonMaxSuppressionV4Options> {
  1886. static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV4Options;
  1887. };
  1888. template<> struct BuiltinOptionsTraits<tflite::NonMaxSuppressionV5Options> {
  1889. static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV5Options;
  1890. };
  1891. template<> struct BuiltinOptionsTraits<tflite::ScatterNdOptions> {
  1892. static const BuiltinOptions enum_value = BuiltinOptions_ScatterNdOptions;
  1893. };
  1894. template<> struct BuiltinOptionsTraits<tflite::SelectV2Options> {
  1895. static const BuiltinOptions enum_value = BuiltinOptions_SelectV2Options;
  1896. };
  1897. template<> struct BuiltinOptionsTraits<tflite::DensifyOptions> {
  1898. static const BuiltinOptions enum_value = BuiltinOptions_DensifyOptions;
  1899. };
  1900. template<> struct BuiltinOptionsTraits<tflite::SegmentSumOptions> {
  1901. static const BuiltinOptions enum_value = BuiltinOptions_SegmentSumOptions;
  1902. };
  1903. template<> struct BuiltinOptionsTraits<tflite::BatchMatMulOptions> {
  1904. static const BuiltinOptions enum_value = BuiltinOptions_BatchMatMulOptions;
  1905. };
  1906. template<> struct BuiltinOptionsTraits<tflite::CumsumOptions> {
  1907. static const BuiltinOptions enum_value = BuiltinOptions_CumsumOptions;
  1908. };
  1909. template<> struct BuiltinOptionsTraits<tflite::CallOnceOptions> {
  1910. static const BuiltinOptions enum_value = BuiltinOptions_CallOnceOptions;
  1911. };
  1912. template<> struct BuiltinOptionsTraits<tflite::BroadcastToOptions> {
  1913. static const BuiltinOptions enum_value = BuiltinOptions_BroadcastToOptions;
  1914. };
  1915. template<> struct BuiltinOptionsTraits<tflite::Rfft2dOptions> {
  1916. static const BuiltinOptions enum_value = BuiltinOptions_Rfft2dOptions;
  1917. };
  1918. template<> struct BuiltinOptionsTraits<tflite::Conv3DOptions> {
  1919. static const BuiltinOptions enum_value = BuiltinOptions_Conv3DOptions;
  1920. };
  1921. template<> struct BuiltinOptionsTraits<tflite::HashtableOptions> {
  1922. static const BuiltinOptions enum_value = BuiltinOptions_HashtableOptions;
  1923. };
  1924. template<> struct BuiltinOptionsTraits<tflite::HashtableFindOptions> {
  1925. static const BuiltinOptions enum_value = BuiltinOptions_HashtableFindOptions;
  1926. };
  1927. template<> struct BuiltinOptionsTraits<tflite::HashtableImportOptions> {
  1928. static const BuiltinOptions enum_value = BuiltinOptions_HashtableImportOptions;
  1929. };
  1930. template<> struct BuiltinOptionsTraits<tflite::HashtableSizeOptions> {
  1931. static const BuiltinOptions enum_value = BuiltinOptions_HashtableSizeOptions;
  1932. };
  1933. template<> struct BuiltinOptionsTraits<tflite::VarHandleOptions> {
  1934. static const BuiltinOptions enum_value = BuiltinOptions_VarHandleOptions;
  1935. };
  1936. template<> struct BuiltinOptionsTraits<tflite::ReadVariableOptions> {
  1937. static const BuiltinOptions enum_value = BuiltinOptions_ReadVariableOptions;
  1938. };
  1939. template<> struct BuiltinOptionsTraits<tflite::AssignVariableOptions> {
  1940. static const BuiltinOptions enum_value = BuiltinOptions_AssignVariableOptions;
  1941. };
  1942. template<> struct BuiltinOptionsTraits<tflite::RandomOptions> {
  1943. static const BuiltinOptions enum_value = BuiltinOptions_RandomOptions;
  1944. };
  1945. template<> struct BuiltinOptionsTraits<tflite::BucketizeOptions> {
  1946. static const BuiltinOptions enum_value = BuiltinOptions_BucketizeOptions;
  1947. };
  1948. template<> struct BuiltinOptionsTraits<tflite::GeluOptions> {
  1949. static const BuiltinOptions enum_value = BuiltinOptions_GeluOptions;
  1950. };
  1951. template<> struct BuiltinOptionsTraits<tflite::DynamicUpdateSliceOptions> {
  1952. static const BuiltinOptions enum_value = BuiltinOptions_DynamicUpdateSliceOptions;
  1953. };
  1954. template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentProdOptions> {
  1955. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentProdOptions;
  1956. };
  1957. template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentMaxOptions> {
  1958. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMaxOptions;
  1959. };
  1960. template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentMinOptions> {
  1961. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMinOptions;
  1962. };
  1963. template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentSumOptions> {
  1964. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentSumOptions;
  1965. };
  1966. template<> struct BuiltinOptionsTraits<tflite::ATan2Options> {
  1967. static const BuiltinOptions enum_value = BuiltinOptions_ATan2Options;
  1968. };
  1969. template<> struct BuiltinOptionsTraits<tflite::SignOptions> {
  1970. static const BuiltinOptions enum_value = BuiltinOptions_SignOptions;
  1971. };
  1972. template<typename T> struct BuiltinOptionsUnionTraits {
  1973. static const BuiltinOptions enum_value = BuiltinOptions_NONE;
  1974. };
  1975. template<> struct BuiltinOptionsUnionTraits<tflite::Conv2DOptionsT> {
  1976. static const BuiltinOptions enum_value = BuiltinOptions_Conv2DOptions;
  1977. };
  1978. template<> struct BuiltinOptionsUnionTraits<tflite::DepthwiseConv2DOptionsT> {
  1979. static const BuiltinOptions enum_value = BuiltinOptions_DepthwiseConv2DOptions;
  1980. };
  1981. template<> struct BuiltinOptionsUnionTraits<tflite::ConcatEmbeddingsOptionsT> {
  1982. static const BuiltinOptions enum_value = BuiltinOptions_ConcatEmbeddingsOptions;
  1983. };
  1984. template<> struct BuiltinOptionsUnionTraits<tflite::LSHProjectionOptionsT> {
  1985. static const BuiltinOptions enum_value = BuiltinOptions_LSHProjectionOptions;
  1986. };
  1987. template<> struct BuiltinOptionsUnionTraits<tflite::Pool2DOptionsT> {
  1988. static const BuiltinOptions enum_value = BuiltinOptions_Pool2DOptions;
  1989. };
  1990. template<> struct BuiltinOptionsUnionTraits<tflite::SVDFOptionsT> {
  1991. static const BuiltinOptions enum_value = BuiltinOptions_SVDFOptions;
  1992. };
  1993. template<> struct BuiltinOptionsUnionTraits<tflite::RNNOptionsT> {
  1994. static const BuiltinOptions enum_value = BuiltinOptions_RNNOptions;
  1995. };
  1996. template<> struct BuiltinOptionsUnionTraits<tflite::FullyConnectedOptionsT> {
  1997. static const BuiltinOptions enum_value = BuiltinOptions_FullyConnectedOptions;
  1998. };
  1999. template<> struct BuiltinOptionsUnionTraits<tflite::SoftmaxOptionsT> {
  2000. static const BuiltinOptions enum_value = BuiltinOptions_SoftmaxOptions;
  2001. };
  2002. template<> struct BuiltinOptionsUnionTraits<tflite::ConcatenationOptionsT> {
  2003. static const BuiltinOptions enum_value = BuiltinOptions_ConcatenationOptions;
  2004. };
  2005. template<> struct BuiltinOptionsUnionTraits<tflite::AddOptionsT> {
  2006. static const BuiltinOptions enum_value = BuiltinOptions_AddOptions;
  2007. };
  2008. template<> struct BuiltinOptionsUnionTraits<tflite::L2NormOptionsT> {
  2009. static const BuiltinOptions enum_value = BuiltinOptions_L2NormOptions;
  2010. };
  2011. template<> struct BuiltinOptionsUnionTraits<tflite::LocalResponseNormalizationOptionsT> {
  2012. static const BuiltinOptions enum_value = BuiltinOptions_LocalResponseNormalizationOptions;
  2013. };
  2014. template<> struct BuiltinOptionsUnionTraits<tflite::LSTMOptionsT> {
  2015. static const BuiltinOptions enum_value = BuiltinOptions_LSTMOptions;
  2016. };
  2017. template<> struct BuiltinOptionsUnionTraits<tflite::ResizeBilinearOptionsT> {
  2018. static const BuiltinOptions enum_value = BuiltinOptions_ResizeBilinearOptions;
  2019. };
  2020. template<> struct BuiltinOptionsUnionTraits<tflite::CallOptionsT> {
  2021. static const BuiltinOptions enum_value = BuiltinOptions_CallOptions;
  2022. };
  2023. template<> struct BuiltinOptionsUnionTraits<tflite::ReshapeOptionsT> {
  2024. static const BuiltinOptions enum_value = BuiltinOptions_ReshapeOptions;
  2025. };
  2026. template<> struct BuiltinOptionsUnionTraits<tflite::SkipGramOptionsT> {
  2027. static const BuiltinOptions enum_value = BuiltinOptions_SkipGramOptions;
  2028. };
  2029. template<> struct BuiltinOptionsUnionTraits<tflite::SpaceToDepthOptionsT> {
  2030. static const BuiltinOptions enum_value = BuiltinOptions_SpaceToDepthOptions;
  2031. };
  2032. template<> struct BuiltinOptionsUnionTraits<tflite::EmbeddingLookupSparseOptionsT> {
  2033. static const BuiltinOptions enum_value = BuiltinOptions_EmbeddingLookupSparseOptions;
  2034. };
  2035. template<> struct BuiltinOptionsUnionTraits<tflite::MulOptionsT> {
  2036. static const BuiltinOptions enum_value = BuiltinOptions_MulOptions;
  2037. };
  2038. template<> struct BuiltinOptionsUnionTraits<tflite::PadOptionsT> {
  2039. static const BuiltinOptions enum_value = BuiltinOptions_PadOptions;
  2040. };
  2041. template<> struct BuiltinOptionsUnionTraits<tflite::GatherOptionsT> {
  2042. static const BuiltinOptions enum_value = BuiltinOptions_GatherOptions;
  2043. };
  2044. template<> struct BuiltinOptionsUnionTraits<tflite::BatchToSpaceNDOptionsT> {
  2045. static const BuiltinOptions enum_value = BuiltinOptions_BatchToSpaceNDOptions;
  2046. };
  2047. template<> struct BuiltinOptionsUnionTraits<tflite::SpaceToBatchNDOptionsT> {
  2048. static const BuiltinOptions enum_value = BuiltinOptions_SpaceToBatchNDOptions;
  2049. };
  2050. template<> struct BuiltinOptionsUnionTraits<tflite::TransposeOptionsT> {
  2051. static const BuiltinOptions enum_value = BuiltinOptions_TransposeOptions;
  2052. };
  2053. template<> struct BuiltinOptionsUnionTraits<tflite::ReducerOptionsT> {
  2054. static const BuiltinOptions enum_value = BuiltinOptions_ReducerOptions;
  2055. };
  2056. template<> struct BuiltinOptionsUnionTraits<tflite::SubOptionsT> {
  2057. static const BuiltinOptions enum_value = BuiltinOptions_SubOptions;
  2058. };
  2059. template<> struct BuiltinOptionsUnionTraits<tflite::DivOptionsT> {
  2060. static const BuiltinOptions enum_value = BuiltinOptions_DivOptions;
  2061. };
  2062. template<> struct BuiltinOptionsUnionTraits<tflite::SqueezeOptionsT> {
  2063. static const BuiltinOptions enum_value = BuiltinOptions_SqueezeOptions;
  2064. };
  2065. template<> struct BuiltinOptionsUnionTraits<tflite::SequenceRNNOptionsT> {
  2066. static const BuiltinOptions enum_value = BuiltinOptions_SequenceRNNOptions;
  2067. };
  2068. template<> struct BuiltinOptionsUnionTraits<tflite::StridedSliceOptionsT> {
  2069. static const BuiltinOptions enum_value = BuiltinOptions_StridedSliceOptions;
  2070. };
  2071. template<> struct BuiltinOptionsUnionTraits<tflite::ExpOptionsT> {
  2072. static const BuiltinOptions enum_value = BuiltinOptions_ExpOptions;
  2073. };
  2074. template<> struct BuiltinOptionsUnionTraits<tflite::TopKV2OptionsT> {
  2075. static const BuiltinOptions enum_value = BuiltinOptions_TopKV2Options;
  2076. };
  2077. template<> struct BuiltinOptionsUnionTraits<tflite::SplitOptionsT> {
  2078. static const BuiltinOptions enum_value = BuiltinOptions_SplitOptions;
  2079. };
  2080. template<> struct BuiltinOptionsUnionTraits<tflite::LogSoftmaxOptionsT> {
  2081. static const BuiltinOptions enum_value = BuiltinOptions_LogSoftmaxOptions;
  2082. };
  2083. template<> struct BuiltinOptionsUnionTraits<tflite::CastOptionsT> {
  2084. static const BuiltinOptions enum_value = BuiltinOptions_CastOptions;
  2085. };
  2086. template<> struct BuiltinOptionsUnionTraits<tflite::DequantizeOptionsT> {
  2087. static const BuiltinOptions enum_value = BuiltinOptions_DequantizeOptions;
  2088. };
  2089. template<> struct BuiltinOptionsUnionTraits<tflite::MaximumMinimumOptionsT> {
  2090. static const BuiltinOptions enum_value = BuiltinOptions_MaximumMinimumOptions;
  2091. };
  2092. template<> struct BuiltinOptionsUnionTraits<tflite::ArgMaxOptionsT> {
  2093. static const BuiltinOptions enum_value = BuiltinOptions_ArgMaxOptions;
  2094. };
  2095. template<> struct BuiltinOptionsUnionTraits<tflite::LessOptionsT> {
  2096. static const BuiltinOptions enum_value = BuiltinOptions_LessOptions;
  2097. };
  2098. template<> struct BuiltinOptionsUnionTraits<tflite::NegOptionsT> {
  2099. static const BuiltinOptions enum_value = BuiltinOptions_NegOptions;
  2100. };
  2101. template<> struct BuiltinOptionsUnionTraits<tflite::PadV2OptionsT> {
  2102. static const BuiltinOptions enum_value = BuiltinOptions_PadV2Options;
  2103. };
  2104. template<> struct BuiltinOptionsUnionTraits<tflite::GreaterOptionsT> {
  2105. static const BuiltinOptions enum_value = BuiltinOptions_GreaterOptions;
  2106. };
  2107. template<> struct BuiltinOptionsUnionTraits<tflite::GreaterEqualOptionsT> {
  2108. static const BuiltinOptions enum_value = BuiltinOptions_GreaterEqualOptions;
  2109. };
  2110. template<> struct BuiltinOptionsUnionTraits<tflite::LessEqualOptionsT> {
  2111. static const BuiltinOptions enum_value = BuiltinOptions_LessEqualOptions;
  2112. };
  2113. template<> struct BuiltinOptionsUnionTraits<tflite::SelectOptionsT> {
  2114. static const BuiltinOptions enum_value = BuiltinOptions_SelectOptions;
  2115. };
  2116. template<> struct BuiltinOptionsUnionTraits<tflite::SliceOptionsT> {
  2117. static const BuiltinOptions enum_value = BuiltinOptions_SliceOptions;
  2118. };
  2119. template<> struct BuiltinOptionsUnionTraits<tflite::TransposeConvOptionsT> {
  2120. static const BuiltinOptions enum_value = BuiltinOptions_TransposeConvOptions;
  2121. };
  2122. template<> struct BuiltinOptionsUnionTraits<tflite::SparseToDenseOptionsT> {
  2123. static const BuiltinOptions enum_value = BuiltinOptions_SparseToDenseOptions;
  2124. };
  2125. template<> struct BuiltinOptionsUnionTraits<tflite::TileOptionsT> {
  2126. static const BuiltinOptions enum_value = BuiltinOptions_TileOptions;
  2127. };
  2128. template<> struct BuiltinOptionsUnionTraits<tflite::ExpandDimsOptionsT> {
  2129. static const BuiltinOptions enum_value = BuiltinOptions_ExpandDimsOptions;
  2130. };
  2131. template<> struct BuiltinOptionsUnionTraits<tflite::EqualOptionsT> {
  2132. static const BuiltinOptions enum_value = BuiltinOptions_EqualOptions;
  2133. };
  2134. template<> struct BuiltinOptionsUnionTraits<tflite::NotEqualOptionsT> {
  2135. static const BuiltinOptions enum_value = BuiltinOptions_NotEqualOptions;
  2136. };
  2137. template<> struct BuiltinOptionsUnionTraits<tflite::ShapeOptionsT> {
  2138. static const BuiltinOptions enum_value = BuiltinOptions_ShapeOptions;
  2139. };
  2140. template<> struct BuiltinOptionsUnionTraits<tflite::PowOptionsT> {
  2141. static const BuiltinOptions enum_value = BuiltinOptions_PowOptions;
  2142. };
  2143. template<> struct BuiltinOptionsUnionTraits<tflite::ArgMinOptionsT> {
  2144. static const BuiltinOptions enum_value = BuiltinOptions_ArgMinOptions;
  2145. };
  2146. template<> struct BuiltinOptionsUnionTraits<tflite::FakeQuantOptionsT> {
  2147. static const BuiltinOptions enum_value = BuiltinOptions_FakeQuantOptions;
  2148. };
  2149. template<> struct BuiltinOptionsUnionTraits<tflite::PackOptionsT> {
  2150. static const BuiltinOptions enum_value = BuiltinOptions_PackOptions;
  2151. };
  2152. template<> struct BuiltinOptionsUnionTraits<tflite::LogicalOrOptionsT> {
  2153. static const BuiltinOptions enum_value = BuiltinOptions_LogicalOrOptions;
  2154. };
  2155. template<> struct BuiltinOptionsUnionTraits<tflite::OneHotOptionsT> {
  2156. static const BuiltinOptions enum_value = BuiltinOptions_OneHotOptions;
  2157. };
  2158. template<> struct BuiltinOptionsUnionTraits<tflite::LogicalAndOptionsT> {
  2159. static const BuiltinOptions enum_value = BuiltinOptions_LogicalAndOptions;
  2160. };
  2161. template<> struct BuiltinOptionsUnionTraits<tflite::LogicalNotOptionsT> {
  2162. static const BuiltinOptions enum_value = BuiltinOptions_LogicalNotOptions;
  2163. };
  2164. template<> struct BuiltinOptionsUnionTraits<tflite::UnpackOptionsT> {
  2165. static const BuiltinOptions enum_value = BuiltinOptions_UnpackOptions;
  2166. };
  2167. template<> struct BuiltinOptionsUnionTraits<tflite::FloorDivOptionsT> {
  2168. static const BuiltinOptions enum_value = BuiltinOptions_FloorDivOptions;
  2169. };
  2170. template<> struct BuiltinOptionsUnionTraits<tflite::SquareOptionsT> {
  2171. static const BuiltinOptions enum_value = BuiltinOptions_SquareOptions;
  2172. };
  2173. template<> struct BuiltinOptionsUnionTraits<tflite::ZerosLikeOptionsT> {
  2174. static const BuiltinOptions enum_value = BuiltinOptions_ZerosLikeOptions;
  2175. };
  2176. template<> struct BuiltinOptionsUnionTraits<tflite::FillOptionsT> {
  2177. static const BuiltinOptions enum_value = BuiltinOptions_FillOptions;
  2178. };
  2179. template<> struct BuiltinOptionsUnionTraits<tflite::BidirectionalSequenceLSTMOptionsT> {
  2180. static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceLSTMOptions;
  2181. };
  2182. template<> struct BuiltinOptionsUnionTraits<tflite::BidirectionalSequenceRNNOptionsT> {
  2183. static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceRNNOptions;
  2184. };
  2185. template<> struct BuiltinOptionsUnionTraits<tflite::UnidirectionalSequenceLSTMOptionsT> {
  2186. static const BuiltinOptions enum_value = BuiltinOptions_UnidirectionalSequenceLSTMOptions;
  2187. };
  2188. template<> struct BuiltinOptionsUnionTraits<tflite::FloorModOptionsT> {
  2189. static const BuiltinOptions enum_value = BuiltinOptions_FloorModOptions;
  2190. };
  2191. template<> struct BuiltinOptionsUnionTraits<tflite::RangeOptionsT> {
  2192. static const BuiltinOptions enum_value = BuiltinOptions_RangeOptions;
  2193. };
  2194. template<> struct BuiltinOptionsUnionTraits<tflite::ResizeNearestNeighborOptionsT> {
  2195. static const BuiltinOptions enum_value = BuiltinOptions_ResizeNearestNeighborOptions;
  2196. };
  2197. template<> struct BuiltinOptionsUnionTraits<tflite::LeakyReluOptionsT> {
  2198. static const BuiltinOptions enum_value = BuiltinOptions_LeakyReluOptions;
  2199. };
  2200. template<> struct BuiltinOptionsUnionTraits<tflite::SquaredDifferenceOptionsT> {
  2201. static const BuiltinOptions enum_value = BuiltinOptions_SquaredDifferenceOptions;
  2202. };
  2203. template<> struct BuiltinOptionsUnionTraits<tflite::MirrorPadOptionsT> {
  2204. static const BuiltinOptions enum_value = BuiltinOptions_MirrorPadOptions;
  2205. };
  2206. template<> struct BuiltinOptionsUnionTraits<tflite::AbsOptionsT> {
  2207. static const BuiltinOptions enum_value = BuiltinOptions_AbsOptions;
  2208. };
  2209. template<> struct BuiltinOptionsUnionTraits<tflite::SplitVOptionsT> {
  2210. static const BuiltinOptions enum_value = BuiltinOptions_SplitVOptions;
  2211. };
  2212. template<> struct BuiltinOptionsUnionTraits<tflite::UniqueOptionsT> {
  2213. static const BuiltinOptions enum_value = BuiltinOptions_UniqueOptions;
  2214. };
  2215. template<> struct BuiltinOptionsUnionTraits<tflite::ReverseV2OptionsT> {
  2216. static const BuiltinOptions enum_value = BuiltinOptions_ReverseV2Options;
  2217. };
  2218. template<> struct BuiltinOptionsUnionTraits<tflite::AddNOptionsT> {
  2219. static const BuiltinOptions enum_value = BuiltinOptions_AddNOptions;
  2220. };
  2221. template<> struct BuiltinOptionsUnionTraits<tflite::GatherNdOptionsT> {
  2222. static const BuiltinOptions enum_value = BuiltinOptions_GatherNdOptions;
  2223. };
  2224. template<> struct BuiltinOptionsUnionTraits<tflite::CosOptionsT> {
  2225. static const BuiltinOptions enum_value = BuiltinOptions_CosOptions;
  2226. };
  2227. template<> struct BuiltinOptionsUnionTraits<tflite::WhereOptionsT> {
  2228. static const BuiltinOptions enum_value = BuiltinOptions_WhereOptions;
  2229. };
  2230. template<> struct BuiltinOptionsUnionTraits<tflite::RankOptionsT> {
  2231. static const BuiltinOptions enum_value = BuiltinOptions_RankOptions;
  2232. };
  2233. template<> struct BuiltinOptionsUnionTraits<tflite::ReverseSequenceOptionsT> {
  2234. static const BuiltinOptions enum_value = BuiltinOptions_ReverseSequenceOptions;
  2235. };
  2236. template<> struct BuiltinOptionsUnionTraits<tflite::MatrixDiagOptionsT> {
  2237. static const BuiltinOptions enum_value = BuiltinOptions_MatrixDiagOptions;
  2238. };
  2239. template<> struct BuiltinOptionsUnionTraits<tflite::QuantizeOptionsT> {
  2240. static const BuiltinOptions enum_value = BuiltinOptions_QuantizeOptions;
  2241. };
  2242. template<> struct BuiltinOptionsUnionTraits<tflite::MatrixSetDiagOptionsT> {
  2243. static const BuiltinOptions enum_value = BuiltinOptions_MatrixSetDiagOptions;
  2244. };
  2245. template<> struct BuiltinOptionsUnionTraits<tflite::HardSwishOptionsT> {
  2246. static const BuiltinOptions enum_value = BuiltinOptions_HardSwishOptions;
  2247. };
  2248. template<> struct BuiltinOptionsUnionTraits<tflite::IfOptionsT> {
  2249. static const BuiltinOptions enum_value = BuiltinOptions_IfOptions;
  2250. };
  2251. template<> struct BuiltinOptionsUnionTraits<tflite::WhileOptionsT> {
  2252. static const BuiltinOptions enum_value = BuiltinOptions_WhileOptions;
  2253. };
  2254. template<> struct BuiltinOptionsUnionTraits<tflite::DepthToSpaceOptionsT> {
  2255. static const BuiltinOptions enum_value = BuiltinOptions_DepthToSpaceOptions;
  2256. };
  2257. template<> struct BuiltinOptionsUnionTraits<tflite::NonMaxSuppressionV4OptionsT> {
  2258. static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV4Options;
  2259. };
  2260. template<> struct BuiltinOptionsUnionTraits<tflite::NonMaxSuppressionV5OptionsT> {
  2261. static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV5Options;
  2262. };
  2263. template<> struct BuiltinOptionsUnionTraits<tflite::ScatterNdOptionsT> {
  2264. static const BuiltinOptions enum_value = BuiltinOptions_ScatterNdOptions;
  2265. };
  2266. template<> struct BuiltinOptionsUnionTraits<tflite::SelectV2OptionsT> {
  2267. static const BuiltinOptions enum_value = BuiltinOptions_SelectV2Options;
  2268. };
  2269. template<> struct BuiltinOptionsUnionTraits<tflite::DensifyOptionsT> {
  2270. static const BuiltinOptions enum_value = BuiltinOptions_DensifyOptions;
  2271. };
  2272. template<> struct BuiltinOptionsUnionTraits<tflite::SegmentSumOptionsT> {
  2273. static const BuiltinOptions enum_value = BuiltinOptions_SegmentSumOptions;
  2274. };
  2275. template<> struct BuiltinOptionsUnionTraits<tflite::BatchMatMulOptionsT> {
  2276. static const BuiltinOptions enum_value = BuiltinOptions_BatchMatMulOptions;
  2277. };
  2278. template<> struct BuiltinOptionsUnionTraits<tflite::CumsumOptionsT> {
  2279. static const BuiltinOptions enum_value = BuiltinOptions_CumsumOptions;
  2280. };
  2281. template<> struct BuiltinOptionsUnionTraits<tflite::CallOnceOptionsT> {
  2282. static const BuiltinOptions enum_value = BuiltinOptions_CallOnceOptions;
  2283. };
  2284. template<> struct BuiltinOptionsUnionTraits<tflite::BroadcastToOptionsT> {
  2285. static const BuiltinOptions enum_value = BuiltinOptions_BroadcastToOptions;
  2286. };
  2287. template<> struct BuiltinOptionsUnionTraits<tflite::Rfft2dOptionsT> {
  2288. static const BuiltinOptions enum_value = BuiltinOptions_Rfft2dOptions;
  2289. };
  2290. template<> struct BuiltinOptionsUnionTraits<tflite::Conv3DOptionsT> {
  2291. static const BuiltinOptions enum_value = BuiltinOptions_Conv3DOptions;
  2292. };
  2293. template<> struct BuiltinOptionsUnionTraits<tflite::HashtableOptionsT> {
  2294. static const BuiltinOptions enum_value = BuiltinOptions_HashtableOptions;
  2295. };
  2296. template<> struct BuiltinOptionsUnionTraits<tflite::HashtableFindOptionsT> {
  2297. static const BuiltinOptions enum_value = BuiltinOptions_HashtableFindOptions;
  2298. };
  2299. template<> struct BuiltinOptionsUnionTraits<tflite::HashtableImportOptionsT> {
  2300. static const BuiltinOptions enum_value = BuiltinOptions_HashtableImportOptions;
  2301. };
  2302. template<> struct BuiltinOptionsUnionTraits<tflite::HashtableSizeOptionsT> {
  2303. static const BuiltinOptions enum_value = BuiltinOptions_HashtableSizeOptions;
  2304. };
  2305. template<> struct BuiltinOptionsUnionTraits<tflite::VarHandleOptionsT> {
  2306. static const BuiltinOptions enum_value = BuiltinOptions_VarHandleOptions;
  2307. };
  2308. template<> struct BuiltinOptionsUnionTraits<tflite::ReadVariableOptionsT> {
  2309. static const BuiltinOptions enum_value = BuiltinOptions_ReadVariableOptions;
  2310. };
  2311. template<> struct BuiltinOptionsUnionTraits<tflite::AssignVariableOptionsT> {
  2312. static const BuiltinOptions enum_value = BuiltinOptions_AssignVariableOptions;
  2313. };
  2314. template<> struct BuiltinOptionsUnionTraits<tflite::RandomOptionsT> {
  2315. static const BuiltinOptions enum_value = BuiltinOptions_RandomOptions;
  2316. };
  2317. template<> struct BuiltinOptionsUnionTraits<tflite::BucketizeOptionsT> {
  2318. static const BuiltinOptions enum_value = BuiltinOptions_BucketizeOptions;
  2319. };
  2320. template<> struct BuiltinOptionsUnionTraits<tflite::GeluOptionsT> {
  2321. static const BuiltinOptions enum_value = BuiltinOptions_GeluOptions;
  2322. };
  2323. template<> struct BuiltinOptionsUnionTraits<tflite::DynamicUpdateSliceOptionsT> {
  2324. static const BuiltinOptions enum_value = BuiltinOptions_DynamicUpdateSliceOptions;
  2325. };
  2326. template<> struct BuiltinOptionsUnionTraits<tflite::UnsortedSegmentProdOptionsT> {
  2327. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentProdOptions;
  2328. };
  2329. template<> struct BuiltinOptionsUnionTraits<tflite::UnsortedSegmentMaxOptionsT> {
  2330. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMaxOptions;
  2331. };
  2332. template<> struct BuiltinOptionsUnionTraits<tflite::UnsortedSegmentMinOptionsT> {
  2333. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMinOptions;
  2334. };
  2335. template<> struct BuiltinOptionsUnionTraits<tflite::UnsortedSegmentSumOptionsT> {
  2336. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentSumOptions;
  2337. };
  2338. template<> struct BuiltinOptionsUnionTraits<tflite::ATan2OptionsT> {
  2339. static const BuiltinOptions enum_value = BuiltinOptions_ATan2Options;
  2340. };
  2341. template<> struct BuiltinOptionsUnionTraits<tflite::SignOptionsT> {
  2342. static const BuiltinOptions enum_value = BuiltinOptions_SignOptions;
  2343. };
  2344. struct BuiltinOptionsUnion {
  2345. BuiltinOptions type;
  2346. void *value;
  2347. BuiltinOptionsUnion() : type(BuiltinOptions_NONE), value(nullptr) {}
  2348. BuiltinOptionsUnion(BuiltinOptionsUnion&& u) FLATBUFFERS_NOEXCEPT :
  2349. type(BuiltinOptions_NONE), value(nullptr)
  2350. { std::swap(type, u.type); std::swap(value, u.value); }
  2351. BuiltinOptionsUnion(const BuiltinOptionsUnion &);
  2352. BuiltinOptionsUnion &operator=(const BuiltinOptionsUnion &u)
  2353. { BuiltinOptionsUnion t(u); std::swap(type, t.type); std::swap(value, t.value); return *this; }
  2354. BuiltinOptionsUnion &operator=(BuiltinOptionsUnion &&u) FLATBUFFERS_NOEXCEPT
  2355. { std::swap(type, u.type); std::swap(value, u.value); return *this; }
  2356. ~BuiltinOptionsUnion() { Reset(); }
  2357. void Reset();
  2358. template <typename T>
  2359. void Set(T&& val) {
  2360. typedef typename std::remove_reference<T>::type RT;
  2361. Reset();
  2362. type = BuiltinOptionsUnionTraits<RT>::enum_value;
  2363. if (type != BuiltinOptions_NONE) {
  2364. value = new RT(std::forward<T>(val));
  2365. }
  2366. }
  2367. static void *UnPack(const void *obj, BuiltinOptions type, const flatbuffers::resolver_function_t *resolver);
  2368. flatbuffers::Offset<void> Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher = nullptr) const;
  2369. tflite::Conv2DOptionsT *AsConv2DOptions() {
  2370. return type == BuiltinOptions_Conv2DOptions ?
  2371. reinterpret_cast<tflite::Conv2DOptionsT *>(value) : nullptr;
  2372. }
  2373. const tflite::Conv2DOptionsT *AsConv2DOptions() const {
  2374. return type == BuiltinOptions_Conv2DOptions ?
  2375. reinterpret_cast<const tflite::Conv2DOptionsT *>(value) : nullptr;
  2376. }
  2377. tflite::DepthwiseConv2DOptionsT *AsDepthwiseConv2DOptions() {
  2378. return type == BuiltinOptions_DepthwiseConv2DOptions ?
  2379. reinterpret_cast<tflite::DepthwiseConv2DOptionsT *>(value) : nullptr;
  2380. }
  2381. const tflite::DepthwiseConv2DOptionsT *AsDepthwiseConv2DOptions() const {
  2382. return type == BuiltinOptions_DepthwiseConv2DOptions ?
  2383. reinterpret_cast<const tflite::DepthwiseConv2DOptionsT *>(value) : nullptr;
  2384. }
  2385. tflite::ConcatEmbeddingsOptionsT *AsConcatEmbeddingsOptions() {
  2386. return type == BuiltinOptions_ConcatEmbeddingsOptions ?
  2387. reinterpret_cast<tflite::ConcatEmbeddingsOptionsT *>(value) : nullptr;
  2388. }
  2389. const tflite::ConcatEmbeddingsOptionsT *AsConcatEmbeddingsOptions() const {
  2390. return type == BuiltinOptions_ConcatEmbeddingsOptions ?
  2391. reinterpret_cast<const tflite::ConcatEmbeddingsOptionsT *>(value) : nullptr;
  2392. }
  2393. tflite::LSHProjectionOptionsT *AsLSHProjectionOptions() {
  2394. return type == BuiltinOptions_LSHProjectionOptions ?
  2395. reinterpret_cast<tflite::LSHProjectionOptionsT *>(value) : nullptr;
  2396. }
  2397. const tflite::LSHProjectionOptionsT *AsLSHProjectionOptions() const {
  2398. return type == BuiltinOptions_LSHProjectionOptions ?
  2399. reinterpret_cast<const tflite::LSHProjectionOptionsT *>(value) : nullptr;
  2400. }
  2401. tflite::Pool2DOptionsT *AsPool2DOptions() {
  2402. return type == BuiltinOptions_Pool2DOptions ?
  2403. reinterpret_cast<tflite::Pool2DOptionsT *>(value) : nullptr;
  2404. }
  2405. const tflite::Pool2DOptionsT *AsPool2DOptions() const {
  2406. return type == BuiltinOptions_Pool2DOptions ?
  2407. reinterpret_cast<const tflite::Pool2DOptionsT *>(value) : nullptr;
  2408. }
  2409. tflite::SVDFOptionsT *AsSVDFOptions() {
  2410. return type == BuiltinOptions_SVDFOptions ?
  2411. reinterpret_cast<tflite::SVDFOptionsT *>(value) : nullptr;
  2412. }
  2413. const tflite::SVDFOptionsT *AsSVDFOptions() const {
  2414. return type == BuiltinOptions_SVDFOptions ?
  2415. reinterpret_cast<const tflite::SVDFOptionsT *>(value) : nullptr;
  2416. }
  2417. tflite::RNNOptionsT *AsRNNOptions() {
  2418. return type == BuiltinOptions_RNNOptions ?
  2419. reinterpret_cast<tflite::RNNOptionsT *>(value) : nullptr;
  2420. }
  2421. const tflite::RNNOptionsT *AsRNNOptions() const {
  2422. return type == BuiltinOptions_RNNOptions ?
  2423. reinterpret_cast<const tflite::RNNOptionsT *>(value) : nullptr;
  2424. }
  2425. tflite::FullyConnectedOptionsT *AsFullyConnectedOptions() {
  2426. return type == BuiltinOptions_FullyConnectedOptions ?
  2427. reinterpret_cast<tflite::FullyConnectedOptionsT *>(value) : nullptr;
  2428. }
  2429. const tflite::FullyConnectedOptionsT *AsFullyConnectedOptions() const {
  2430. return type == BuiltinOptions_FullyConnectedOptions ?
  2431. reinterpret_cast<const tflite::FullyConnectedOptionsT *>(value) : nullptr;
  2432. }
  2433. tflite::SoftmaxOptionsT *AsSoftmaxOptions() {
  2434. return type == BuiltinOptions_SoftmaxOptions ?
  2435. reinterpret_cast<tflite::SoftmaxOptionsT *>(value) : nullptr;
  2436. }
  2437. const tflite::SoftmaxOptionsT *AsSoftmaxOptions() const {
  2438. return type == BuiltinOptions_SoftmaxOptions ?
  2439. reinterpret_cast<const tflite::SoftmaxOptionsT *>(value) : nullptr;
  2440. }
  2441. tflite::ConcatenationOptionsT *AsConcatenationOptions() {
  2442. return type == BuiltinOptions_ConcatenationOptions ?
  2443. reinterpret_cast<tflite::ConcatenationOptionsT *>(value) : nullptr;
  2444. }
  2445. const tflite::ConcatenationOptionsT *AsConcatenationOptions() const {
  2446. return type == BuiltinOptions_ConcatenationOptions ?
  2447. reinterpret_cast<const tflite::ConcatenationOptionsT *>(value) : nullptr;
  2448. }
  2449. tflite::AddOptionsT *AsAddOptions() {
  2450. return type == BuiltinOptions_AddOptions ?
  2451. reinterpret_cast<tflite::AddOptionsT *>(value) : nullptr;
  2452. }
  2453. const tflite::AddOptionsT *AsAddOptions() const {
  2454. return type == BuiltinOptions_AddOptions ?
  2455. reinterpret_cast<const tflite::AddOptionsT *>(value) : nullptr;
  2456. }
  2457. tflite::L2NormOptionsT *AsL2NormOptions() {
  2458. return type == BuiltinOptions_L2NormOptions ?
  2459. reinterpret_cast<tflite::L2NormOptionsT *>(value) : nullptr;
  2460. }
  2461. const tflite::L2NormOptionsT *AsL2NormOptions() const {
  2462. return type == BuiltinOptions_L2NormOptions ?
  2463. reinterpret_cast<const tflite::L2NormOptionsT *>(value) : nullptr;
  2464. }
  2465. tflite::LocalResponseNormalizationOptionsT *AsLocalResponseNormalizationOptions() {
  2466. return type == BuiltinOptions_LocalResponseNormalizationOptions ?
  2467. reinterpret_cast<tflite::LocalResponseNormalizationOptionsT *>(value) : nullptr;
  2468. }
  2469. const tflite::LocalResponseNormalizationOptionsT *AsLocalResponseNormalizationOptions() const {
  2470. return type == BuiltinOptions_LocalResponseNormalizationOptions ?
  2471. reinterpret_cast<const tflite::LocalResponseNormalizationOptionsT *>(value) : nullptr;
  2472. }
  2473. tflite::LSTMOptionsT *AsLSTMOptions() {
  2474. return type == BuiltinOptions_LSTMOptions ?
  2475. reinterpret_cast<tflite::LSTMOptionsT *>(value) : nullptr;
  2476. }
  2477. const tflite::LSTMOptionsT *AsLSTMOptions() const {
  2478. return type == BuiltinOptions_LSTMOptions ?
  2479. reinterpret_cast<const tflite::LSTMOptionsT *>(value) : nullptr;
  2480. }
  2481. tflite::ResizeBilinearOptionsT *AsResizeBilinearOptions() {
  2482. return type == BuiltinOptions_ResizeBilinearOptions ?
  2483. reinterpret_cast<tflite::ResizeBilinearOptionsT *>(value) : nullptr;
  2484. }
  2485. const tflite::ResizeBilinearOptionsT *AsResizeBilinearOptions() const {
  2486. return type == BuiltinOptions_ResizeBilinearOptions ?
  2487. reinterpret_cast<const tflite::ResizeBilinearOptionsT *>(value) : nullptr;
  2488. }
  2489. tflite::CallOptionsT *AsCallOptions() {
  2490. return type == BuiltinOptions_CallOptions ?
  2491. reinterpret_cast<tflite::CallOptionsT *>(value) : nullptr;
  2492. }
  2493. const tflite::CallOptionsT *AsCallOptions() const {
  2494. return type == BuiltinOptions_CallOptions ?
  2495. reinterpret_cast<const tflite::CallOptionsT *>(value) : nullptr;
  2496. }
  2497. tflite::ReshapeOptionsT *AsReshapeOptions() {
  2498. return type == BuiltinOptions_ReshapeOptions ?
  2499. reinterpret_cast<tflite::ReshapeOptionsT *>(value) : nullptr;
  2500. }
  2501. const tflite::ReshapeOptionsT *AsReshapeOptions() const {
  2502. return type == BuiltinOptions_ReshapeOptions ?
  2503. reinterpret_cast<const tflite::ReshapeOptionsT *>(value) : nullptr;
  2504. }
  2505. tflite::SkipGramOptionsT *AsSkipGramOptions() {
  2506. return type == BuiltinOptions_SkipGramOptions ?
  2507. reinterpret_cast<tflite::SkipGramOptionsT *>(value) : nullptr;
  2508. }
  2509. const tflite::SkipGramOptionsT *AsSkipGramOptions() const {
  2510. return type == BuiltinOptions_SkipGramOptions ?
  2511. reinterpret_cast<const tflite::SkipGramOptionsT *>(value) : nullptr;
  2512. }
  2513. tflite::SpaceToDepthOptionsT *AsSpaceToDepthOptions() {
  2514. return type == BuiltinOptions_SpaceToDepthOptions ?
  2515. reinterpret_cast<tflite::SpaceToDepthOptionsT *>(value) : nullptr;
  2516. }
  2517. const tflite::SpaceToDepthOptionsT *AsSpaceToDepthOptions() const {
  2518. return type == BuiltinOptions_SpaceToDepthOptions ?
  2519. reinterpret_cast<const tflite::SpaceToDepthOptionsT *>(value) : nullptr;
  2520. }
  2521. tflite::EmbeddingLookupSparseOptionsT *AsEmbeddingLookupSparseOptions() {
  2522. return type == BuiltinOptions_EmbeddingLookupSparseOptions ?
  2523. reinterpret_cast<tflite::EmbeddingLookupSparseOptionsT *>(value) : nullptr;
  2524. }
  2525. const tflite::EmbeddingLookupSparseOptionsT *AsEmbeddingLookupSparseOptions() const {
  2526. return type == BuiltinOptions_EmbeddingLookupSparseOptions ?
  2527. reinterpret_cast<const tflite::EmbeddingLookupSparseOptionsT *>(value) : nullptr;
  2528. }
  2529. tflite::MulOptionsT *AsMulOptions() {
  2530. return type == BuiltinOptions_MulOptions ?
  2531. reinterpret_cast<tflite::MulOptionsT *>(value) : nullptr;
  2532. }
  2533. const tflite::MulOptionsT *AsMulOptions() const {
  2534. return type == BuiltinOptions_MulOptions ?
  2535. reinterpret_cast<const tflite::MulOptionsT *>(value) : nullptr;
  2536. }
  2537. tflite::PadOptionsT *AsPadOptions() {
  2538. return type == BuiltinOptions_PadOptions ?
  2539. reinterpret_cast<tflite::PadOptionsT *>(value) : nullptr;
  2540. }
  2541. const tflite::PadOptionsT *AsPadOptions() const {
  2542. return type == BuiltinOptions_PadOptions ?
  2543. reinterpret_cast<const tflite::PadOptionsT *>(value) : nullptr;
  2544. }
  2545. tflite::GatherOptionsT *AsGatherOptions() {
  2546. return type == BuiltinOptions_GatherOptions ?
  2547. reinterpret_cast<tflite::GatherOptionsT *>(value) : nullptr;
  2548. }
  2549. const tflite::GatherOptionsT *AsGatherOptions() const {
  2550. return type == BuiltinOptions_GatherOptions ?
  2551. reinterpret_cast<const tflite::GatherOptionsT *>(value) : nullptr;
  2552. }
  2553. tflite::BatchToSpaceNDOptionsT *AsBatchToSpaceNDOptions() {
  2554. return type == BuiltinOptions_BatchToSpaceNDOptions ?
  2555. reinterpret_cast<tflite::BatchToSpaceNDOptionsT *>(value) : nullptr;
  2556. }
  2557. const tflite::BatchToSpaceNDOptionsT *AsBatchToSpaceNDOptions() const {
  2558. return type == BuiltinOptions_BatchToSpaceNDOptions ?
  2559. reinterpret_cast<const tflite::BatchToSpaceNDOptionsT *>(value) : nullptr;
  2560. }
  2561. tflite::SpaceToBatchNDOptionsT *AsSpaceToBatchNDOptions() {
  2562. return type == BuiltinOptions_SpaceToBatchNDOptions ?
  2563. reinterpret_cast<tflite::SpaceToBatchNDOptionsT *>(value) : nullptr;
  2564. }
  2565. const tflite::SpaceToBatchNDOptionsT *AsSpaceToBatchNDOptions() const {
  2566. return type == BuiltinOptions_SpaceToBatchNDOptions ?
  2567. reinterpret_cast<const tflite::SpaceToBatchNDOptionsT *>(value) : nullptr;
  2568. }
  2569. tflite::TransposeOptionsT *AsTransposeOptions() {
  2570. return type == BuiltinOptions_TransposeOptions ?
  2571. reinterpret_cast<tflite::TransposeOptionsT *>(value) : nullptr;
  2572. }
  2573. const tflite::TransposeOptionsT *AsTransposeOptions() const {
  2574. return type == BuiltinOptions_TransposeOptions ?
  2575. reinterpret_cast<const tflite::TransposeOptionsT *>(value) : nullptr;
  2576. }
  2577. tflite::ReducerOptionsT *AsReducerOptions() {
  2578. return type == BuiltinOptions_ReducerOptions ?
  2579. reinterpret_cast<tflite::ReducerOptionsT *>(value) : nullptr;
  2580. }
  2581. const tflite::ReducerOptionsT *AsReducerOptions() const {
  2582. return type == BuiltinOptions_ReducerOptions ?
  2583. reinterpret_cast<const tflite::ReducerOptionsT *>(value) : nullptr;
  2584. }
  2585. tflite::SubOptionsT *AsSubOptions() {
  2586. return type == BuiltinOptions_SubOptions ?
  2587. reinterpret_cast<tflite::SubOptionsT *>(value) : nullptr;
  2588. }
  2589. const tflite::SubOptionsT *AsSubOptions() const {
  2590. return type == BuiltinOptions_SubOptions ?
  2591. reinterpret_cast<const tflite::SubOptionsT *>(value) : nullptr;
  2592. }
  2593. tflite::DivOptionsT *AsDivOptions() {
  2594. return type == BuiltinOptions_DivOptions ?
  2595. reinterpret_cast<tflite::DivOptionsT *>(value) : nullptr;
  2596. }
  2597. const tflite::DivOptionsT *AsDivOptions() const {
  2598. return type == BuiltinOptions_DivOptions ?
  2599. reinterpret_cast<const tflite::DivOptionsT *>(value) : nullptr;
  2600. }
  2601. tflite::SqueezeOptionsT *AsSqueezeOptions() {
  2602. return type == BuiltinOptions_SqueezeOptions ?
  2603. reinterpret_cast<tflite::SqueezeOptionsT *>(value) : nullptr;
  2604. }
  2605. const tflite::SqueezeOptionsT *AsSqueezeOptions() const {
  2606. return type == BuiltinOptions_SqueezeOptions ?
  2607. reinterpret_cast<const tflite::SqueezeOptionsT *>(value) : nullptr;
  2608. }
  2609. tflite::SequenceRNNOptionsT *AsSequenceRNNOptions() {
  2610. return type == BuiltinOptions_SequenceRNNOptions ?
  2611. reinterpret_cast<tflite::SequenceRNNOptionsT *>(value) : nullptr;
  2612. }
  2613. const tflite::SequenceRNNOptionsT *AsSequenceRNNOptions() const {
  2614. return type == BuiltinOptions_SequenceRNNOptions ?
  2615. reinterpret_cast<const tflite::SequenceRNNOptionsT *>(value) : nullptr;
  2616. }
  2617. tflite::StridedSliceOptionsT *AsStridedSliceOptions() {
  2618. return type == BuiltinOptions_StridedSliceOptions ?
  2619. reinterpret_cast<tflite::StridedSliceOptionsT *>(value) : nullptr;
  2620. }
  2621. const tflite::StridedSliceOptionsT *AsStridedSliceOptions() const {
  2622. return type == BuiltinOptions_StridedSliceOptions ?
  2623. reinterpret_cast<const tflite::StridedSliceOptionsT *>(value) : nullptr;
  2624. }
  2625. tflite::ExpOptionsT *AsExpOptions() {
  2626. return type == BuiltinOptions_ExpOptions ?
  2627. reinterpret_cast<tflite::ExpOptionsT *>(value) : nullptr;
  2628. }
  2629. const tflite::ExpOptionsT *AsExpOptions() const {
  2630. return type == BuiltinOptions_ExpOptions ?
  2631. reinterpret_cast<const tflite::ExpOptionsT *>(value) : nullptr;
  2632. }
  2633. tflite::TopKV2OptionsT *AsTopKV2Options() {
  2634. return type == BuiltinOptions_TopKV2Options ?
  2635. reinterpret_cast<tflite::TopKV2OptionsT *>(value) : nullptr;
  2636. }
  2637. const tflite::TopKV2OptionsT *AsTopKV2Options() const {
  2638. return type == BuiltinOptions_TopKV2Options ?
  2639. reinterpret_cast<const tflite::TopKV2OptionsT *>(value) : nullptr;
  2640. }
  2641. tflite::SplitOptionsT *AsSplitOptions() {
  2642. return type == BuiltinOptions_SplitOptions ?
  2643. reinterpret_cast<tflite::SplitOptionsT *>(value) : nullptr;
  2644. }
  2645. const tflite::SplitOptionsT *AsSplitOptions() const {
  2646. return type == BuiltinOptions_SplitOptions ?
  2647. reinterpret_cast<const tflite::SplitOptionsT *>(value) : nullptr;
  2648. }
  2649. tflite::LogSoftmaxOptionsT *AsLogSoftmaxOptions() {
  2650. return type == BuiltinOptions_LogSoftmaxOptions ?
  2651. reinterpret_cast<tflite::LogSoftmaxOptionsT *>(value) : nullptr;
  2652. }
  2653. const tflite::LogSoftmaxOptionsT *AsLogSoftmaxOptions() const {
  2654. return type == BuiltinOptions_LogSoftmaxOptions ?
  2655. reinterpret_cast<const tflite::LogSoftmaxOptionsT *>(value) : nullptr;
  2656. }
  2657. tflite::CastOptionsT *AsCastOptions() {
  2658. return type == BuiltinOptions_CastOptions ?
  2659. reinterpret_cast<tflite::CastOptionsT *>(value) : nullptr;
  2660. }
  2661. const tflite::CastOptionsT *AsCastOptions() const {
  2662. return type == BuiltinOptions_CastOptions ?
  2663. reinterpret_cast<const tflite::CastOptionsT *>(value) : nullptr;
  2664. }
  2665. tflite::DequantizeOptionsT *AsDequantizeOptions() {
  2666. return type == BuiltinOptions_DequantizeOptions ?
  2667. reinterpret_cast<tflite::DequantizeOptionsT *>(value) : nullptr;
  2668. }
  2669. const tflite::DequantizeOptionsT *AsDequantizeOptions() const {
  2670. return type == BuiltinOptions_DequantizeOptions ?
  2671. reinterpret_cast<const tflite::DequantizeOptionsT *>(value) : nullptr;
  2672. }
  2673. tflite::MaximumMinimumOptionsT *AsMaximumMinimumOptions() {
  2674. return type == BuiltinOptions_MaximumMinimumOptions ?
  2675. reinterpret_cast<tflite::MaximumMinimumOptionsT *>(value) : nullptr;
  2676. }
  2677. const tflite::MaximumMinimumOptionsT *AsMaximumMinimumOptions() const {
  2678. return type == BuiltinOptions_MaximumMinimumOptions ?
  2679. reinterpret_cast<const tflite::MaximumMinimumOptionsT *>(value) : nullptr;
  2680. }
  2681. tflite::ArgMaxOptionsT *AsArgMaxOptions() {
  2682. return type == BuiltinOptions_ArgMaxOptions ?
  2683. reinterpret_cast<tflite::ArgMaxOptionsT *>(value) : nullptr;
  2684. }
  2685. const tflite::ArgMaxOptionsT *AsArgMaxOptions() const {
  2686. return type == BuiltinOptions_ArgMaxOptions ?
  2687. reinterpret_cast<const tflite::ArgMaxOptionsT *>(value) : nullptr;
  2688. }
  2689. tflite::LessOptionsT *AsLessOptions() {
  2690. return type == BuiltinOptions_LessOptions ?
  2691. reinterpret_cast<tflite::LessOptionsT *>(value) : nullptr;
  2692. }
  2693. const tflite::LessOptionsT *AsLessOptions() const {
  2694. return type == BuiltinOptions_LessOptions ?
  2695. reinterpret_cast<const tflite::LessOptionsT *>(value) : nullptr;
  2696. }
  2697. tflite::NegOptionsT *AsNegOptions() {
  2698. return type == BuiltinOptions_NegOptions ?
  2699. reinterpret_cast<tflite::NegOptionsT *>(value) : nullptr;
  2700. }
  2701. const tflite::NegOptionsT *AsNegOptions() const {
  2702. return type == BuiltinOptions_NegOptions ?
  2703. reinterpret_cast<const tflite::NegOptionsT *>(value) : nullptr;
  2704. }
  2705. tflite::PadV2OptionsT *AsPadV2Options() {
  2706. return type == BuiltinOptions_PadV2Options ?
  2707. reinterpret_cast<tflite::PadV2OptionsT *>(value) : nullptr;
  2708. }
  2709. const tflite::PadV2OptionsT *AsPadV2Options() const {
  2710. return type == BuiltinOptions_PadV2Options ?
  2711. reinterpret_cast<const tflite::PadV2OptionsT *>(value) : nullptr;
  2712. }
  2713. tflite::GreaterOptionsT *AsGreaterOptions() {
  2714. return type == BuiltinOptions_GreaterOptions ?
  2715. reinterpret_cast<tflite::GreaterOptionsT *>(value) : nullptr;
  2716. }
  2717. const tflite::GreaterOptionsT *AsGreaterOptions() const {
  2718. return type == BuiltinOptions_GreaterOptions ?
  2719. reinterpret_cast<const tflite::GreaterOptionsT *>(value) : nullptr;
  2720. }
  2721. tflite::GreaterEqualOptionsT *AsGreaterEqualOptions() {
  2722. return type == BuiltinOptions_GreaterEqualOptions ?
  2723. reinterpret_cast<tflite::GreaterEqualOptionsT *>(value) : nullptr;
  2724. }
  2725. const tflite::GreaterEqualOptionsT *AsGreaterEqualOptions() const {
  2726. return type == BuiltinOptions_GreaterEqualOptions ?
  2727. reinterpret_cast<const tflite::GreaterEqualOptionsT *>(value) : nullptr;
  2728. }
  2729. tflite::LessEqualOptionsT *AsLessEqualOptions() {
  2730. return type == BuiltinOptions_LessEqualOptions ?
  2731. reinterpret_cast<tflite::LessEqualOptionsT *>(value) : nullptr;
  2732. }
  2733. const tflite::LessEqualOptionsT *AsLessEqualOptions() const {
  2734. return type == BuiltinOptions_LessEqualOptions ?
  2735. reinterpret_cast<const tflite::LessEqualOptionsT *>(value) : nullptr;
  2736. }
  2737. tflite::SelectOptionsT *AsSelectOptions() {
  2738. return type == BuiltinOptions_SelectOptions ?
  2739. reinterpret_cast<tflite::SelectOptionsT *>(value) : nullptr;
  2740. }
  2741. const tflite::SelectOptionsT *AsSelectOptions() const {
  2742. return type == BuiltinOptions_SelectOptions ?
  2743. reinterpret_cast<const tflite::SelectOptionsT *>(value) : nullptr;
  2744. }
  2745. tflite::SliceOptionsT *AsSliceOptions() {
  2746. return type == BuiltinOptions_SliceOptions ?
  2747. reinterpret_cast<tflite::SliceOptionsT *>(value) : nullptr;
  2748. }
  2749. const tflite::SliceOptionsT *AsSliceOptions() const {
  2750. return type == BuiltinOptions_SliceOptions ?
  2751. reinterpret_cast<const tflite::SliceOptionsT *>(value) : nullptr;
  2752. }
  2753. tflite::TransposeConvOptionsT *AsTransposeConvOptions() {
  2754. return type == BuiltinOptions_TransposeConvOptions ?
  2755. reinterpret_cast<tflite::TransposeConvOptionsT *>(value) : nullptr;
  2756. }
  2757. const tflite::TransposeConvOptionsT *AsTransposeConvOptions() const {
  2758. return type == BuiltinOptions_TransposeConvOptions ?
  2759. reinterpret_cast<const tflite::TransposeConvOptionsT *>(value) : nullptr;
  2760. }
  2761. tflite::SparseToDenseOptionsT *AsSparseToDenseOptions() {
  2762. return type == BuiltinOptions_SparseToDenseOptions ?
  2763. reinterpret_cast<tflite::SparseToDenseOptionsT *>(value) : nullptr;
  2764. }
  2765. const tflite::SparseToDenseOptionsT *AsSparseToDenseOptions() const {
  2766. return type == BuiltinOptions_SparseToDenseOptions ?
  2767. reinterpret_cast<const tflite::SparseToDenseOptionsT *>(value) : nullptr;
  2768. }
  2769. tflite::TileOptionsT *AsTileOptions() {
  2770. return type == BuiltinOptions_TileOptions ?
  2771. reinterpret_cast<tflite::TileOptionsT *>(value) : nullptr;
  2772. }
  2773. const tflite::TileOptionsT *AsTileOptions() const {
  2774. return type == BuiltinOptions_TileOptions ?
  2775. reinterpret_cast<const tflite::TileOptionsT *>(value) : nullptr;
  2776. }
  2777. tflite::ExpandDimsOptionsT *AsExpandDimsOptions() {
  2778. return type == BuiltinOptions_ExpandDimsOptions ?
  2779. reinterpret_cast<tflite::ExpandDimsOptionsT *>(value) : nullptr;
  2780. }
  2781. const tflite::ExpandDimsOptionsT *AsExpandDimsOptions() const {
  2782. return type == BuiltinOptions_ExpandDimsOptions ?
  2783. reinterpret_cast<const tflite::ExpandDimsOptionsT *>(value) : nullptr;
  2784. }
  2785. tflite::EqualOptionsT *AsEqualOptions() {
  2786. return type == BuiltinOptions_EqualOptions ?
  2787. reinterpret_cast<tflite::EqualOptionsT *>(value) : nullptr;
  2788. }
  2789. const tflite::EqualOptionsT *AsEqualOptions() const {
  2790. return type == BuiltinOptions_EqualOptions ?
  2791. reinterpret_cast<const tflite::EqualOptionsT *>(value) : nullptr;
  2792. }
  2793. tflite::NotEqualOptionsT *AsNotEqualOptions() {
  2794. return type == BuiltinOptions_NotEqualOptions ?
  2795. reinterpret_cast<tflite::NotEqualOptionsT *>(value) : nullptr;
  2796. }
  2797. const tflite::NotEqualOptionsT *AsNotEqualOptions() const {
  2798. return type == BuiltinOptions_NotEqualOptions ?
  2799. reinterpret_cast<const tflite::NotEqualOptionsT *>(value) : nullptr;
  2800. }
  2801. tflite::ShapeOptionsT *AsShapeOptions() {
  2802. return type == BuiltinOptions_ShapeOptions ?
  2803. reinterpret_cast<tflite::ShapeOptionsT *>(value) : nullptr;
  2804. }
  2805. const tflite::ShapeOptionsT *AsShapeOptions() const {
  2806. return type == BuiltinOptions_ShapeOptions ?
  2807. reinterpret_cast<const tflite::ShapeOptionsT *>(value) : nullptr;
  2808. }
  2809. tflite::PowOptionsT *AsPowOptions() {
  2810. return type == BuiltinOptions_PowOptions ?
  2811. reinterpret_cast<tflite::PowOptionsT *>(value) : nullptr;
  2812. }
  2813. const tflite::PowOptionsT *AsPowOptions() const {
  2814. return type == BuiltinOptions_PowOptions ?
  2815. reinterpret_cast<const tflite::PowOptionsT *>(value) : nullptr;
  2816. }
  2817. tflite::ArgMinOptionsT *AsArgMinOptions() {
  2818. return type == BuiltinOptions_ArgMinOptions ?
  2819. reinterpret_cast<tflite::ArgMinOptionsT *>(value) : nullptr;
  2820. }
  2821. const tflite::ArgMinOptionsT *AsArgMinOptions() const {
  2822. return type == BuiltinOptions_ArgMinOptions ?
  2823. reinterpret_cast<const tflite::ArgMinOptionsT *>(value) : nullptr;
  2824. }
  2825. tflite::FakeQuantOptionsT *AsFakeQuantOptions() {
  2826. return type == BuiltinOptions_FakeQuantOptions ?
  2827. reinterpret_cast<tflite::FakeQuantOptionsT *>(value) : nullptr;
  2828. }
  2829. const tflite::FakeQuantOptionsT *AsFakeQuantOptions() const {
  2830. return type == BuiltinOptions_FakeQuantOptions ?
  2831. reinterpret_cast<const tflite::FakeQuantOptionsT *>(value) : nullptr;
  2832. }
  2833. tflite::PackOptionsT *AsPackOptions() {
  2834. return type == BuiltinOptions_PackOptions ?
  2835. reinterpret_cast<tflite::PackOptionsT *>(value) : nullptr;
  2836. }
  2837. const tflite::PackOptionsT *AsPackOptions() const {
  2838. return type == BuiltinOptions_PackOptions ?
  2839. reinterpret_cast<const tflite::PackOptionsT *>(value) : nullptr;
  2840. }
  2841. tflite::LogicalOrOptionsT *AsLogicalOrOptions() {
  2842. return type == BuiltinOptions_LogicalOrOptions ?
  2843. reinterpret_cast<tflite::LogicalOrOptionsT *>(value) : nullptr;
  2844. }
  2845. const tflite::LogicalOrOptionsT *AsLogicalOrOptions() const {
  2846. return type == BuiltinOptions_LogicalOrOptions ?
  2847. reinterpret_cast<const tflite::LogicalOrOptionsT *>(value) : nullptr;
  2848. }
  2849. tflite::OneHotOptionsT *AsOneHotOptions() {
  2850. return type == BuiltinOptions_OneHotOptions ?
  2851. reinterpret_cast<tflite::OneHotOptionsT *>(value) : nullptr;
  2852. }
  2853. const tflite::OneHotOptionsT *AsOneHotOptions() const {
  2854. return type == BuiltinOptions_OneHotOptions ?
  2855. reinterpret_cast<const tflite::OneHotOptionsT *>(value) : nullptr;
  2856. }
  2857. tflite::LogicalAndOptionsT *AsLogicalAndOptions() {
  2858. return type == BuiltinOptions_LogicalAndOptions ?
  2859. reinterpret_cast<tflite::LogicalAndOptionsT *>(value) : nullptr;
  2860. }
  2861. const tflite::LogicalAndOptionsT *AsLogicalAndOptions() const {
  2862. return type == BuiltinOptions_LogicalAndOptions ?
  2863. reinterpret_cast<const tflite::LogicalAndOptionsT *>(value) : nullptr;
  2864. }
  2865. tflite::LogicalNotOptionsT *AsLogicalNotOptions() {
  2866. return type == BuiltinOptions_LogicalNotOptions ?
  2867. reinterpret_cast<tflite::LogicalNotOptionsT *>(value) : nullptr;
  2868. }
  2869. const tflite::LogicalNotOptionsT *AsLogicalNotOptions() const {
  2870. return type == BuiltinOptions_LogicalNotOptions ?
  2871. reinterpret_cast<const tflite::LogicalNotOptionsT *>(value) : nullptr;
  2872. }
  2873. tflite::UnpackOptionsT *AsUnpackOptions() {
  2874. return type == BuiltinOptions_UnpackOptions ?
  2875. reinterpret_cast<tflite::UnpackOptionsT *>(value) : nullptr;
  2876. }
  2877. const tflite::UnpackOptionsT *AsUnpackOptions() const {
  2878. return type == BuiltinOptions_UnpackOptions ?
  2879. reinterpret_cast<const tflite::UnpackOptionsT *>(value) : nullptr;
  2880. }
  2881. tflite::FloorDivOptionsT *AsFloorDivOptions() {
  2882. return type == BuiltinOptions_FloorDivOptions ?
  2883. reinterpret_cast<tflite::FloorDivOptionsT *>(value) : nullptr;
  2884. }
  2885. const tflite::FloorDivOptionsT *AsFloorDivOptions() const {
  2886. return type == BuiltinOptions_FloorDivOptions ?
  2887. reinterpret_cast<const tflite::FloorDivOptionsT *>(value) : nullptr;
  2888. }
  2889. tflite::SquareOptionsT *AsSquareOptions() {
  2890. return type == BuiltinOptions_SquareOptions ?
  2891. reinterpret_cast<tflite::SquareOptionsT *>(value) : nullptr;
  2892. }
  2893. const tflite::SquareOptionsT *AsSquareOptions() const {
  2894. return type == BuiltinOptions_SquareOptions ?
  2895. reinterpret_cast<const tflite::SquareOptionsT *>(value) : nullptr;
  2896. }
  2897. tflite::ZerosLikeOptionsT *AsZerosLikeOptions() {
  2898. return type == BuiltinOptions_ZerosLikeOptions ?
  2899. reinterpret_cast<tflite::ZerosLikeOptionsT *>(value) : nullptr;
  2900. }
  2901. const tflite::ZerosLikeOptionsT *AsZerosLikeOptions() const {
  2902. return type == BuiltinOptions_ZerosLikeOptions ?
  2903. reinterpret_cast<const tflite::ZerosLikeOptionsT *>(value) : nullptr;
  2904. }
  2905. tflite::FillOptionsT *AsFillOptions() {
  2906. return type == BuiltinOptions_FillOptions ?
  2907. reinterpret_cast<tflite::FillOptionsT *>(value) : nullptr;
  2908. }
  2909. const tflite::FillOptionsT *AsFillOptions() const {
  2910. return type == BuiltinOptions_FillOptions ?
  2911. reinterpret_cast<const tflite::FillOptionsT *>(value) : nullptr;
  2912. }
  2913. tflite::BidirectionalSequenceLSTMOptionsT *AsBidirectionalSequenceLSTMOptions() {
  2914. return type == BuiltinOptions_BidirectionalSequenceLSTMOptions ?
  2915. reinterpret_cast<tflite::BidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
  2916. }
  2917. const tflite::BidirectionalSequenceLSTMOptionsT *AsBidirectionalSequenceLSTMOptions() const {
  2918. return type == BuiltinOptions_BidirectionalSequenceLSTMOptions ?
  2919. reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
  2920. }
  2921. tflite::BidirectionalSequenceRNNOptionsT *AsBidirectionalSequenceRNNOptions() {
  2922. return type == BuiltinOptions_BidirectionalSequenceRNNOptions ?
  2923. reinterpret_cast<tflite::BidirectionalSequenceRNNOptionsT *>(value) : nullptr;
  2924. }
  2925. const tflite::BidirectionalSequenceRNNOptionsT *AsBidirectionalSequenceRNNOptions() const {
  2926. return type == BuiltinOptions_BidirectionalSequenceRNNOptions ?
  2927. reinterpret_cast<const tflite::BidirectionalSequenceRNNOptionsT *>(value) : nullptr;
  2928. }
  2929. tflite::UnidirectionalSequenceLSTMOptionsT *AsUnidirectionalSequenceLSTMOptions() {
  2930. return type == BuiltinOptions_UnidirectionalSequenceLSTMOptions ?
  2931. reinterpret_cast<tflite::UnidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
  2932. }
  2933. const tflite::UnidirectionalSequenceLSTMOptionsT *AsUnidirectionalSequenceLSTMOptions() const {
  2934. return type == BuiltinOptions_UnidirectionalSequenceLSTMOptions ?
  2935. reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
  2936. }
  2937. tflite::FloorModOptionsT *AsFloorModOptions() {
  2938. return type == BuiltinOptions_FloorModOptions ?
  2939. reinterpret_cast<tflite::FloorModOptionsT *>(value) : nullptr;
  2940. }
  2941. const tflite::FloorModOptionsT *AsFloorModOptions() const {
  2942. return type == BuiltinOptions_FloorModOptions ?
  2943. reinterpret_cast<const tflite::FloorModOptionsT *>(value) : nullptr;
  2944. }
  2945. tflite::RangeOptionsT *AsRangeOptions() {
  2946. return type == BuiltinOptions_RangeOptions ?
  2947. reinterpret_cast<tflite::RangeOptionsT *>(value) : nullptr;
  2948. }
  2949. const tflite::RangeOptionsT *AsRangeOptions() const {
  2950. return type == BuiltinOptions_RangeOptions ?
  2951. reinterpret_cast<const tflite::RangeOptionsT *>(value) : nullptr;
  2952. }
  2953. tflite::ResizeNearestNeighborOptionsT *AsResizeNearestNeighborOptions() {
  2954. return type == BuiltinOptions_ResizeNearestNeighborOptions ?
  2955. reinterpret_cast<tflite::ResizeNearestNeighborOptionsT *>(value) : nullptr;
  2956. }
  2957. const tflite::ResizeNearestNeighborOptionsT *AsResizeNearestNeighborOptions() const {
  2958. return type == BuiltinOptions_ResizeNearestNeighborOptions ?
  2959. reinterpret_cast<const tflite::ResizeNearestNeighborOptionsT *>(value) : nullptr;
  2960. }
  2961. tflite::LeakyReluOptionsT *AsLeakyReluOptions() {
  2962. return type == BuiltinOptions_LeakyReluOptions ?
  2963. reinterpret_cast<tflite::LeakyReluOptionsT *>(value) : nullptr;
  2964. }
  2965. const tflite::LeakyReluOptionsT *AsLeakyReluOptions() const {
  2966. return type == BuiltinOptions_LeakyReluOptions ?
  2967. reinterpret_cast<const tflite::LeakyReluOptionsT *>(value) : nullptr;
  2968. }
  2969. tflite::SquaredDifferenceOptionsT *AsSquaredDifferenceOptions() {
  2970. return type == BuiltinOptions_SquaredDifferenceOptions ?
  2971. reinterpret_cast<tflite::SquaredDifferenceOptionsT *>(value) : nullptr;
  2972. }
  2973. const tflite::SquaredDifferenceOptionsT *AsSquaredDifferenceOptions() const {
  2974. return type == BuiltinOptions_SquaredDifferenceOptions ?
  2975. reinterpret_cast<const tflite::SquaredDifferenceOptionsT *>(value) : nullptr;
  2976. }
  2977. tflite::MirrorPadOptionsT *AsMirrorPadOptions() {
  2978. return type == BuiltinOptions_MirrorPadOptions ?
  2979. reinterpret_cast<tflite::MirrorPadOptionsT *>(value) : nullptr;
  2980. }
  2981. const tflite::MirrorPadOptionsT *AsMirrorPadOptions() const {
  2982. return type == BuiltinOptions_MirrorPadOptions ?
  2983. reinterpret_cast<const tflite::MirrorPadOptionsT *>(value) : nullptr;
  2984. }
  2985. tflite::AbsOptionsT *AsAbsOptions() {
  2986. return type == BuiltinOptions_AbsOptions ?
  2987. reinterpret_cast<tflite::AbsOptionsT *>(value) : nullptr;
  2988. }
  2989. const tflite::AbsOptionsT *AsAbsOptions() const {
  2990. return type == BuiltinOptions_AbsOptions ?
  2991. reinterpret_cast<const tflite::AbsOptionsT *>(value) : nullptr;
  2992. }
  2993. tflite::SplitVOptionsT *AsSplitVOptions() {
  2994. return type == BuiltinOptions_SplitVOptions ?
  2995. reinterpret_cast<tflite::SplitVOptionsT *>(value) : nullptr;
  2996. }
  2997. const tflite::SplitVOptionsT *AsSplitVOptions() const {
  2998. return type == BuiltinOptions_SplitVOptions ?
  2999. reinterpret_cast<const tflite::SplitVOptionsT *>(value) : nullptr;
  3000. }
  3001. tflite::UniqueOptionsT *AsUniqueOptions() {
  3002. return type == BuiltinOptions_UniqueOptions ?
  3003. reinterpret_cast<tflite::UniqueOptionsT *>(value) : nullptr;
  3004. }
  3005. const tflite::UniqueOptionsT *AsUniqueOptions() const {
  3006. return type == BuiltinOptions_UniqueOptions ?
  3007. reinterpret_cast<const tflite::UniqueOptionsT *>(value) : nullptr;
  3008. }
  3009. tflite::ReverseV2OptionsT *AsReverseV2Options() {
  3010. return type == BuiltinOptions_ReverseV2Options ?
  3011. reinterpret_cast<tflite::ReverseV2OptionsT *>(value) : nullptr;
  3012. }
  3013. const tflite::ReverseV2OptionsT *AsReverseV2Options() const {
  3014. return type == BuiltinOptions_ReverseV2Options ?
  3015. reinterpret_cast<const tflite::ReverseV2OptionsT *>(value) : nullptr;
  3016. }
  3017. tflite::AddNOptionsT *AsAddNOptions() {
  3018. return type == BuiltinOptions_AddNOptions ?
  3019. reinterpret_cast<tflite::AddNOptionsT *>(value) : nullptr;
  3020. }
  3021. const tflite::AddNOptionsT *AsAddNOptions() const {
  3022. return type == BuiltinOptions_AddNOptions ?
  3023. reinterpret_cast<const tflite::AddNOptionsT *>(value) : nullptr;
  3024. }
  3025. tflite::GatherNdOptionsT *AsGatherNdOptions() {
  3026. return type == BuiltinOptions_GatherNdOptions ?
  3027. reinterpret_cast<tflite::GatherNdOptionsT *>(value) : nullptr;
  3028. }
  3029. const tflite::GatherNdOptionsT *AsGatherNdOptions() const {
  3030. return type == BuiltinOptions_GatherNdOptions ?
  3031. reinterpret_cast<const tflite::GatherNdOptionsT *>(value) : nullptr;
  3032. }
  3033. tflite::CosOptionsT *AsCosOptions() {
  3034. return type == BuiltinOptions_CosOptions ?
  3035. reinterpret_cast<tflite::CosOptionsT *>(value) : nullptr;
  3036. }
  3037. const tflite::CosOptionsT *AsCosOptions() const {
  3038. return type == BuiltinOptions_CosOptions ?
  3039. reinterpret_cast<const tflite::CosOptionsT *>(value) : nullptr;
  3040. }
  3041. tflite::WhereOptionsT *AsWhereOptions() {
  3042. return type == BuiltinOptions_WhereOptions ?
  3043. reinterpret_cast<tflite::WhereOptionsT *>(value) : nullptr;
  3044. }
  3045. const tflite::WhereOptionsT *AsWhereOptions() const {
  3046. return type == BuiltinOptions_WhereOptions ?
  3047. reinterpret_cast<const tflite::WhereOptionsT *>(value) : nullptr;
  3048. }
  3049. tflite::RankOptionsT *AsRankOptions() {
  3050. return type == BuiltinOptions_RankOptions ?
  3051. reinterpret_cast<tflite::RankOptionsT *>(value) : nullptr;
  3052. }
  3053. const tflite::RankOptionsT *AsRankOptions() const {
  3054. return type == BuiltinOptions_RankOptions ?
  3055. reinterpret_cast<const tflite::RankOptionsT *>(value) : nullptr;
  3056. }
  3057. tflite::ReverseSequenceOptionsT *AsReverseSequenceOptions() {
  3058. return type == BuiltinOptions_ReverseSequenceOptions ?
  3059. reinterpret_cast<tflite::ReverseSequenceOptionsT *>(value) : nullptr;
  3060. }
  3061. const tflite::ReverseSequenceOptionsT *AsReverseSequenceOptions() const {
  3062. return type == BuiltinOptions_ReverseSequenceOptions ?
  3063. reinterpret_cast<const tflite::ReverseSequenceOptionsT *>(value) : nullptr;
  3064. }
  3065. tflite::MatrixDiagOptionsT *AsMatrixDiagOptions() {
  3066. return type == BuiltinOptions_MatrixDiagOptions ?
  3067. reinterpret_cast<tflite::MatrixDiagOptionsT *>(value) : nullptr;
  3068. }
  3069. const tflite::MatrixDiagOptionsT *AsMatrixDiagOptions() const {
  3070. return type == BuiltinOptions_MatrixDiagOptions ?
  3071. reinterpret_cast<const tflite::MatrixDiagOptionsT *>(value) : nullptr;
  3072. }
  3073. tflite::QuantizeOptionsT *AsQuantizeOptions() {
  3074. return type == BuiltinOptions_QuantizeOptions ?
  3075. reinterpret_cast<tflite::QuantizeOptionsT *>(value) : nullptr;
  3076. }
  3077. const tflite::QuantizeOptionsT *AsQuantizeOptions() const {
  3078. return type == BuiltinOptions_QuantizeOptions ?
  3079. reinterpret_cast<const tflite::QuantizeOptionsT *>(value) : nullptr;
  3080. }
  3081. tflite::MatrixSetDiagOptionsT *AsMatrixSetDiagOptions() {
  3082. return type == BuiltinOptions_MatrixSetDiagOptions ?
  3083. reinterpret_cast<tflite::MatrixSetDiagOptionsT *>(value) : nullptr;
  3084. }
  3085. const tflite::MatrixSetDiagOptionsT *AsMatrixSetDiagOptions() const {
  3086. return type == BuiltinOptions_MatrixSetDiagOptions ?
  3087. reinterpret_cast<const tflite::MatrixSetDiagOptionsT *>(value) : nullptr;
  3088. }
  3089. tflite::HardSwishOptionsT *AsHardSwishOptions() {
  3090. return type == BuiltinOptions_HardSwishOptions ?
  3091. reinterpret_cast<tflite::HardSwishOptionsT *>(value) : nullptr;
  3092. }
  3093. const tflite::HardSwishOptionsT *AsHardSwishOptions() const {
  3094. return type == BuiltinOptions_HardSwishOptions ?
  3095. reinterpret_cast<const tflite::HardSwishOptionsT *>(value) : nullptr;
  3096. }
  3097. tflite::IfOptionsT *AsIfOptions() {
  3098. return type == BuiltinOptions_IfOptions ?
  3099. reinterpret_cast<tflite::IfOptionsT *>(value) : nullptr;
  3100. }
  3101. const tflite::IfOptionsT *AsIfOptions() const {
  3102. return type == BuiltinOptions_IfOptions ?
  3103. reinterpret_cast<const tflite::IfOptionsT *>(value) : nullptr;
  3104. }
  3105. tflite::WhileOptionsT *AsWhileOptions() {
  3106. return type == BuiltinOptions_WhileOptions ?
  3107. reinterpret_cast<tflite::WhileOptionsT *>(value) : nullptr;
  3108. }
  3109. const tflite::WhileOptionsT *AsWhileOptions() const {
  3110. return type == BuiltinOptions_WhileOptions ?
  3111. reinterpret_cast<const tflite::WhileOptionsT *>(value) : nullptr;
  3112. }
  3113. tflite::DepthToSpaceOptionsT *AsDepthToSpaceOptions() {
  3114. return type == BuiltinOptions_DepthToSpaceOptions ?
  3115. reinterpret_cast<tflite::DepthToSpaceOptionsT *>(value) : nullptr;
  3116. }
  3117. const tflite::DepthToSpaceOptionsT *AsDepthToSpaceOptions() const {
  3118. return type == BuiltinOptions_DepthToSpaceOptions ?
  3119. reinterpret_cast<const tflite::DepthToSpaceOptionsT *>(value) : nullptr;
  3120. }
  3121. tflite::NonMaxSuppressionV4OptionsT *AsNonMaxSuppressionV4Options() {
  3122. return type == BuiltinOptions_NonMaxSuppressionV4Options ?
  3123. reinterpret_cast<tflite::NonMaxSuppressionV4OptionsT *>(value) : nullptr;
  3124. }
  3125. const tflite::NonMaxSuppressionV4OptionsT *AsNonMaxSuppressionV4Options() const {
  3126. return type == BuiltinOptions_NonMaxSuppressionV4Options ?
  3127. reinterpret_cast<const tflite::NonMaxSuppressionV4OptionsT *>(value) : nullptr;
  3128. }
  3129. tflite::NonMaxSuppressionV5OptionsT *AsNonMaxSuppressionV5Options() {
  3130. return type == BuiltinOptions_NonMaxSuppressionV5Options ?
  3131. reinterpret_cast<tflite::NonMaxSuppressionV5OptionsT *>(value) : nullptr;
  3132. }
  3133. const tflite::NonMaxSuppressionV5OptionsT *AsNonMaxSuppressionV5Options() const {
  3134. return type == BuiltinOptions_NonMaxSuppressionV5Options ?
  3135. reinterpret_cast<const tflite::NonMaxSuppressionV5OptionsT *>(value) : nullptr;
  3136. }
  3137. tflite::ScatterNdOptionsT *AsScatterNdOptions() {
  3138. return type == BuiltinOptions_ScatterNdOptions ?
  3139. reinterpret_cast<tflite::ScatterNdOptionsT *>(value) : nullptr;
  3140. }
  3141. const tflite::ScatterNdOptionsT *AsScatterNdOptions() const {
  3142. return type == BuiltinOptions_ScatterNdOptions ?
  3143. reinterpret_cast<const tflite::ScatterNdOptionsT *>(value) : nullptr;
  3144. }
  3145. tflite::SelectV2OptionsT *AsSelectV2Options() {
  3146. return type == BuiltinOptions_SelectV2Options ?
  3147. reinterpret_cast<tflite::SelectV2OptionsT *>(value) : nullptr;
  3148. }
  3149. const tflite::SelectV2OptionsT *AsSelectV2Options() const {
  3150. return type == BuiltinOptions_SelectV2Options ?
  3151. reinterpret_cast<const tflite::SelectV2OptionsT *>(value) : nullptr;
  3152. }
  3153. tflite::DensifyOptionsT *AsDensifyOptions() {
  3154. return type == BuiltinOptions_DensifyOptions ?
  3155. reinterpret_cast<tflite::DensifyOptionsT *>(value) : nullptr;
  3156. }
  3157. const tflite::DensifyOptionsT *AsDensifyOptions() const {
  3158. return type == BuiltinOptions_DensifyOptions ?
  3159. reinterpret_cast<const tflite::DensifyOptionsT *>(value) : nullptr;
  3160. }
  3161. tflite::SegmentSumOptionsT *AsSegmentSumOptions() {
  3162. return type == BuiltinOptions_SegmentSumOptions ?
  3163. reinterpret_cast<tflite::SegmentSumOptionsT *>(value) : nullptr;
  3164. }
  3165. const tflite::SegmentSumOptionsT *AsSegmentSumOptions() const {
  3166. return type == BuiltinOptions_SegmentSumOptions ?
  3167. reinterpret_cast<const tflite::SegmentSumOptionsT *>(value) : nullptr;
  3168. }
  3169. tflite::BatchMatMulOptionsT *AsBatchMatMulOptions() {
  3170. return type == BuiltinOptions_BatchMatMulOptions ?
  3171. reinterpret_cast<tflite::BatchMatMulOptionsT *>(value) : nullptr;
  3172. }
  3173. const tflite::BatchMatMulOptionsT *AsBatchMatMulOptions() const {
  3174. return type == BuiltinOptions_BatchMatMulOptions ?
  3175. reinterpret_cast<const tflite::BatchMatMulOptionsT *>(value) : nullptr;
  3176. }
  3177. tflite::CumsumOptionsT *AsCumsumOptions() {
  3178. return type == BuiltinOptions_CumsumOptions ?
  3179. reinterpret_cast<tflite::CumsumOptionsT *>(value) : nullptr;
  3180. }
  3181. const tflite::CumsumOptionsT *AsCumsumOptions() const {
  3182. return type == BuiltinOptions_CumsumOptions ?
  3183. reinterpret_cast<const tflite::CumsumOptionsT *>(value) : nullptr;
  3184. }
  3185. tflite::CallOnceOptionsT *AsCallOnceOptions() {
  3186. return type == BuiltinOptions_CallOnceOptions ?
  3187. reinterpret_cast<tflite::CallOnceOptionsT *>(value) : nullptr;
  3188. }
  3189. const tflite::CallOnceOptionsT *AsCallOnceOptions() const {
  3190. return type == BuiltinOptions_CallOnceOptions ?
  3191. reinterpret_cast<const tflite::CallOnceOptionsT *>(value) : nullptr;
  3192. }
  3193. tflite::BroadcastToOptionsT *AsBroadcastToOptions() {
  3194. return type == BuiltinOptions_BroadcastToOptions ?
  3195. reinterpret_cast<tflite::BroadcastToOptionsT *>(value) : nullptr;
  3196. }
  3197. const tflite::BroadcastToOptionsT *AsBroadcastToOptions() const {
  3198. return type == BuiltinOptions_BroadcastToOptions ?
  3199. reinterpret_cast<const tflite::BroadcastToOptionsT *>(value) : nullptr;
  3200. }
  3201. tflite::Rfft2dOptionsT *AsRfft2dOptions() {
  3202. return type == BuiltinOptions_Rfft2dOptions ?
  3203. reinterpret_cast<tflite::Rfft2dOptionsT *>(value) : nullptr;
  3204. }
  3205. const tflite::Rfft2dOptionsT *AsRfft2dOptions() const {
  3206. return type == BuiltinOptions_Rfft2dOptions ?
  3207. reinterpret_cast<const tflite::Rfft2dOptionsT *>(value) : nullptr;
  3208. }
  3209. tflite::Conv3DOptionsT *AsConv3DOptions() {
  3210. return type == BuiltinOptions_Conv3DOptions ?
  3211. reinterpret_cast<tflite::Conv3DOptionsT *>(value) : nullptr;
  3212. }
  3213. const tflite::Conv3DOptionsT *AsConv3DOptions() const {
  3214. return type == BuiltinOptions_Conv3DOptions ?
  3215. reinterpret_cast<const tflite::Conv3DOptionsT *>(value) : nullptr;
  3216. }
  3217. tflite::HashtableOptionsT *AsHashtableOptions() {
  3218. return type == BuiltinOptions_HashtableOptions ?
  3219. reinterpret_cast<tflite::HashtableOptionsT *>(value) : nullptr;
  3220. }
  3221. const tflite::HashtableOptionsT *AsHashtableOptions() const {
  3222. return type == BuiltinOptions_HashtableOptions ?
  3223. reinterpret_cast<const tflite::HashtableOptionsT *>(value) : nullptr;
  3224. }
  3225. tflite::HashtableFindOptionsT *AsHashtableFindOptions() {
  3226. return type == BuiltinOptions_HashtableFindOptions ?
  3227. reinterpret_cast<tflite::HashtableFindOptionsT *>(value) : nullptr;
  3228. }
  3229. const tflite::HashtableFindOptionsT *AsHashtableFindOptions() const {
  3230. return type == BuiltinOptions_HashtableFindOptions ?
  3231. reinterpret_cast<const tflite::HashtableFindOptionsT *>(value) : nullptr;
  3232. }
  3233. tflite::HashtableImportOptionsT *AsHashtableImportOptions() {
  3234. return type == BuiltinOptions_HashtableImportOptions ?
  3235. reinterpret_cast<tflite::HashtableImportOptionsT *>(value) : nullptr;
  3236. }
  3237. const tflite::HashtableImportOptionsT *AsHashtableImportOptions() const {
  3238. return type == BuiltinOptions_HashtableImportOptions ?
  3239. reinterpret_cast<const tflite::HashtableImportOptionsT *>(value) : nullptr;
  3240. }
  3241. tflite::HashtableSizeOptionsT *AsHashtableSizeOptions() {
  3242. return type == BuiltinOptions_HashtableSizeOptions ?
  3243. reinterpret_cast<tflite::HashtableSizeOptionsT *>(value) : nullptr;
  3244. }
  3245. const tflite::HashtableSizeOptionsT *AsHashtableSizeOptions() const {
  3246. return type == BuiltinOptions_HashtableSizeOptions ?
  3247. reinterpret_cast<const tflite::HashtableSizeOptionsT *>(value) : nullptr;
  3248. }
  3249. tflite::VarHandleOptionsT *AsVarHandleOptions() {
  3250. return type == BuiltinOptions_VarHandleOptions ?
  3251. reinterpret_cast<tflite::VarHandleOptionsT *>(value) : nullptr;
  3252. }
  3253. const tflite::VarHandleOptionsT *AsVarHandleOptions() const {
  3254. return type == BuiltinOptions_VarHandleOptions ?
  3255. reinterpret_cast<const tflite::VarHandleOptionsT *>(value) : nullptr;
  3256. }
  3257. tflite::ReadVariableOptionsT *AsReadVariableOptions() {
  3258. return type == BuiltinOptions_ReadVariableOptions ?
  3259. reinterpret_cast<tflite::ReadVariableOptionsT *>(value) : nullptr;
  3260. }
  3261. const tflite::ReadVariableOptionsT *AsReadVariableOptions() const {
  3262. return type == BuiltinOptions_ReadVariableOptions ?
  3263. reinterpret_cast<const tflite::ReadVariableOptionsT *>(value) : nullptr;
  3264. }
  3265. tflite::AssignVariableOptionsT *AsAssignVariableOptions() {
  3266. return type == BuiltinOptions_AssignVariableOptions ?
  3267. reinterpret_cast<tflite::AssignVariableOptionsT *>(value) : nullptr;
  3268. }
  3269. const tflite::AssignVariableOptionsT *AsAssignVariableOptions() const {
  3270. return type == BuiltinOptions_AssignVariableOptions ?
  3271. reinterpret_cast<const tflite::AssignVariableOptionsT *>(value) : nullptr;
  3272. }
  3273. tflite::RandomOptionsT *AsRandomOptions() {
  3274. return type == BuiltinOptions_RandomOptions ?
  3275. reinterpret_cast<tflite::RandomOptionsT *>(value) : nullptr;
  3276. }
  3277. const tflite::RandomOptionsT *AsRandomOptions() const {
  3278. return type == BuiltinOptions_RandomOptions ?
  3279. reinterpret_cast<const tflite::RandomOptionsT *>(value) : nullptr;
  3280. }
  3281. tflite::BucketizeOptionsT *AsBucketizeOptions() {
  3282. return type == BuiltinOptions_BucketizeOptions ?
  3283. reinterpret_cast<tflite::BucketizeOptionsT *>(value) : nullptr;
  3284. }
  3285. const tflite::BucketizeOptionsT *AsBucketizeOptions() const {
  3286. return type == BuiltinOptions_BucketizeOptions ?
  3287. reinterpret_cast<const tflite::BucketizeOptionsT *>(value) : nullptr;
  3288. }
  3289. tflite::GeluOptionsT *AsGeluOptions() {
  3290. return type == BuiltinOptions_GeluOptions ?
  3291. reinterpret_cast<tflite::GeluOptionsT *>(value) : nullptr;
  3292. }
  3293. const tflite::GeluOptionsT *AsGeluOptions() const {
  3294. return type == BuiltinOptions_GeluOptions ?
  3295. reinterpret_cast<const tflite::GeluOptionsT *>(value) : nullptr;
  3296. }
  3297. tflite::DynamicUpdateSliceOptionsT *AsDynamicUpdateSliceOptions() {
  3298. return type == BuiltinOptions_DynamicUpdateSliceOptions ?
  3299. reinterpret_cast<tflite::DynamicUpdateSliceOptionsT *>(value) : nullptr;
  3300. }
  3301. const tflite::DynamicUpdateSliceOptionsT *AsDynamicUpdateSliceOptions() const {
  3302. return type == BuiltinOptions_DynamicUpdateSliceOptions ?
  3303. reinterpret_cast<const tflite::DynamicUpdateSliceOptionsT *>(value) : nullptr;
  3304. }
  3305. tflite::UnsortedSegmentProdOptionsT *AsUnsortedSegmentProdOptions() {
  3306. return type == BuiltinOptions_UnsortedSegmentProdOptions ?
  3307. reinterpret_cast<tflite::UnsortedSegmentProdOptionsT *>(value) : nullptr;
  3308. }
  3309. const tflite::UnsortedSegmentProdOptionsT *AsUnsortedSegmentProdOptions() const {
  3310. return type == BuiltinOptions_UnsortedSegmentProdOptions ?
  3311. reinterpret_cast<const tflite::UnsortedSegmentProdOptionsT *>(value) : nullptr;
  3312. }
  3313. tflite::UnsortedSegmentMaxOptionsT *AsUnsortedSegmentMaxOptions() {
  3314. return type == BuiltinOptions_UnsortedSegmentMaxOptions ?
  3315. reinterpret_cast<tflite::UnsortedSegmentMaxOptionsT *>(value) : nullptr;
  3316. }
  3317. const tflite::UnsortedSegmentMaxOptionsT *AsUnsortedSegmentMaxOptions() const {
  3318. return type == BuiltinOptions_UnsortedSegmentMaxOptions ?
  3319. reinterpret_cast<const tflite::UnsortedSegmentMaxOptionsT *>(value) : nullptr;
  3320. }
  3321. tflite::UnsortedSegmentMinOptionsT *AsUnsortedSegmentMinOptions() {
  3322. return type == BuiltinOptions_UnsortedSegmentMinOptions ?
  3323. reinterpret_cast<tflite::UnsortedSegmentMinOptionsT *>(value) : nullptr;
  3324. }
  3325. const tflite::UnsortedSegmentMinOptionsT *AsUnsortedSegmentMinOptions() const {
  3326. return type == BuiltinOptions_UnsortedSegmentMinOptions ?
  3327. reinterpret_cast<const tflite::UnsortedSegmentMinOptionsT *>(value) : nullptr;
  3328. }
  3329. tflite::UnsortedSegmentSumOptionsT *AsUnsortedSegmentSumOptions() {
  3330. return type == BuiltinOptions_UnsortedSegmentSumOptions ?
  3331. reinterpret_cast<tflite::UnsortedSegmentSumOptionsT *>(value) : nullptr;
  3332. }
  3333. const tflite::UnsortedSegmentSumOptionsT *AsUnsortedSegmentSumOptions() const {
  3334. return type == BuiltinOptions_UnsortedSegmentSumOptions ?
  3335. reinterpret_cast<const tflite::UnsortedSegmentSumOptionsT *>(value) : nullptr;
  3336. }
  3337. tflite::ATan2OptionsT *AsATan2Options() {
  3338. return type == BuiltinOptions_ATan2Options ?
  3339. reinterpret_cast<tflite::ATan2OptionsT *>(value) : nullptr;
  3340. }
  3341. const tflite::ATan2OptionsT *AsATan2Options() const {
  3342. return type == BuiltinOptions_ATan2Options ?
  3343. reinterpret_cast<const tflite::ATan2OptionsT *>(value) : nullptr;
  3344. }
  3345. tflite::SignOptionsT *AsSignOptions() {
  3346. return type == BuiltinOptions_SignOptions ?
  3347. reinterpret_cast<tflite::SignOptionsT *>(value) : nullptr;
  3348. }
  3349. const tflite::SignOptionsT *AsSignOptions() const {
  3350. return type == BuiltinOptions_SignOptions ?
  3351. reinterpret_cast<const tflite::SignOptionsT *>(value) : nullptr;
  3352. }
  3353. };
  3354. bool VerifyBuiltinOptions(flatbuffers::Verifier &verifier, const void *obj, BuiltinOptions type);
  3355. bool VerifyBuiltinOptionsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types);
  3356. enum Padding : int8_t {
  3357. Padding_SAME = 0,
  3358. Padding_VALID = 1,
  3359. Padding_MIN = Padding_SAME,
  3360. Padding_MAX = Padding_VALID
  3361. };
  3362. inline const Padding (&EnumValuesPadding())[2] {
  3363. static const Padding values[] = {
  3364. Padding_SAME,
  3365. Padding_VALID
  3366. };
  3367. return values;
  3368. }
  3369. inline const char * const *EnumNamesPadding() {
  3370. static const char * const names[3] = {
  3371. "SAME",
  3372. "VALID",
  3373. nullptr
  3374. };
  3375. return names;
  3376. }
  3377. inline const char *EnumNamePadding(Padding e) {
  3378. if (flatbuffers::IsOutRange(e, Padding_SAME, Padding_VALID)) return "";
  3379. const size_t index = static_cast<size_t>(e);
  3380. return EnumNamesPadding()[index];
  3381. }
  3382. enum ActivationFunctionType : int8_t {
  3383. ActivationFunctionType_NONE = 0,
  3384. ActivationFunctionType_RELU = 1,
  3385. ActivationFunctionType_RELU_N1_TO_1 = 2,
  3386. ActivationFunctionType_RELU6 = 3,
  3387. ActivationFunctionType_TANH = 4,
  3388. ActivationFunctionType_SIGN_BIT = 5,
  3389. ActivationFunctionType_MIN = ActivationFunctionType_NONE,
  3390. ActivationFunctionType_MAX = ActivationFunctionType_SIGN_BIT
  3391. };
  3392. inline const ActivationFunctionType (&EnumValuesActivationFunctionType())[6] {
  3393. static const ActivationFunctionType values[] = {
  3394. ActivationFunctionType_NONE,
  3395. ActivationFunctionType_RELU,
  3396. ActivationFunctionType_RELU_N1_TO_1,
  3397. ActivationFunctionType_RELU6,
  3398. ActivationFunctionType_TANH,
  3399. ActivationFunctionType_SIGN_BIT
  3400. };
  3401. return values;
  3402. }
  3403. inline const char * const *EnumNamesActivationFunctionType() {
  3404. static const char * const names[7] = {
  3405. "NONE",
  3406. "RELU",
  3407. "RELU_N1_TO_1",
  3408. "RELU6",
  3409. "TANH",
  3410. "SIGN_BIT",
  3411. nullptr
  3412. };
  3413. return names;
  3414. }
  3415. inline const char *EnumNameActivationFunctionType(ActivationFunctionType e) {
  3416. if (flatbuffers::IsOutRange(e, ActivationFunctionType_NONE, ActivationFunctionType_SIGN_BIT)) return "";
  3417. const size_t index = static_cast<size_t>(e);
  3418. return EnumNamesActivationFunctionType()[index];
  3419. }
  3420. enum LSHProjectionType : int8_t {
  3421. LSHProjectionType_UNKNOWN = 0,
  3422. LSHProjectionType_SPARSE = 1,
  3423. LSHProjectionType_DENSE = 2,
  3424. LSHProjectionType_MIN = LSHProjectionType_UNKNOWN,
  3425. LSHProjectionType_MAX = LSHProjectionType_DENSE
  3426. };
  3427. inline const LSHProjectionType (&EnumValuesLSHProjectionType())[3] {
  3428. static const LSHProjectionType values[] = {
  3429. LSHProjectionType_UNKNOWN,
  3430. LSHProjectionType_SPARSE,
  3431. LSHProjectionType_DENSE
  3432. };
  3433. return values;
  3434. }
  3435. inline const char * const *EnumNamesLSHProjectionType() {
  3436. static const char * const names[4] = {
  3437. "UNKNOWN",
  3438. "SPARSE",
  3439. "DENSE",
  3440. nullptr
  3441. };
  3442. return names;
  3443. }
  3444. inline const char *EnumNameLSHProjectionType(LSHProjectionType e) {
  3445. if (flatbuffers::IsOutRange(e, LSHProjectionType_UNKNOWN, LSHProjectionType_DENSE)) return "";
  3446. const size_t index = static_cast<size_t>(e);
  3447. return EnumNamesLSHProjectionType()[index];
  3448. }
  3449. enum FullyConnectedOptionsWeightsFormat : int8_t {
  3450. FullyConnectedOptionsWeightsFormat_DEFAULT = 0,
  3451. FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8 = 1,
  3452. FullyConnectedOptionsWeightsFormat_MIN = FullyConnectedOptionsWeightsFormat_DEFAULT,
  3453. FullyConnectedOptionsWeightsFormat_MAX = FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8
  3454. };
  3455. inline const FullyConnectedOptionsWeightsFormat (&EnumValuesFullyConnectedOptionsWeightsFormat())[2] {
  3456. static const FullyConnectedOptionsWeightsFormat values[] = {
  3457. FullyConnectedOptionsWeightsFormat_DEFAULT,
  3458. FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8
  3459. };
  3460. return values;
  3461. }
  3462. inline const char * const *EnumNamesFullyConnectedOptionsWeightsFormat() {
  3463. static const char * const names[3] = {
  3464. "DEFAULT",
  3465. "SHUFFLED4x16INT8",
  3466. nullptr
  3467. };
  3468. return names;
  3469. }
  3470. inline const char *EnumNameFullyConnectedOptionsWeightsFormat(FullyConnectedOptionsWeightsFormat e) {
  3471. if (flatbuffers::IsOutRange(e, FullyConnectedOptionsWeightsFormat_DEFAULT, FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8)) return "";
  3472. const size_t index = static_cast<size_t>(e);
  3473. return EnumNamesFullyConnectedOptionsWeightsFormat()[index];
  3474. }
  3475. enum LSTMKernelType : int8_t {
  3476. LSTMKernelType_FULL = 0,
  3477. LSTMKernelType_BASIC = 1,
  3478. LSTMKernelType_MIN = LSTMKernelType_FULL,
  3479. LSTMKernelType_MAX = LSTMKernelType_BASIC
  3480. };
  3481. inline const LSTMKernelType (&EnumValuesLSTMKernelType())[2] {
  3482. static const LSTMKernelType values[] = {
  3483. LSTMKernelType_FULL,
  3484. LSTMKernelType_BASIC
  3485. };
  3486. return values;
  3487. }
  3488. inline const char * const *EnumNamesLSTMKernelType() {
  3489. static const char * const names[3] = {
  3490. "FULL",
  3491. "BASIC",
  3492. nullptr
  3493. };
  3494. return names;
  3495. }
  3496. inline const char *EnumNameLSTMKernelType(LSTMKernelType e) {
  3497. if (flatbuffers::IsOutRange(e, LSTMKernelType_FULL, LSTMKernelType_BASIC)) return "";
  3498. const size_t index = static_cast<size_t>(e);
  3499. return EnumNamesLSTMKernelType()[index];
  3500. }
  3501. enum CombinerType : int8_t {
  3502. CombinerType_SUM = 0,
  3503. CombinerType_MEAN = 1,
  3504. CombinerType_SQRTN = 2,
  3505. CombinerType_MIN = CombinerType_SUM,
  3506. CombinerType_MAX = CombinerType_SQRTN
  3507. };
  3508. inline const CombinerType (&EnumValuesCombinerType())[3] {
  3509. static const CombinerType values[] = {
  3510. CombinerType_SUM,
  3511. CombinerType_MEAN,
  3512. CombinerType_SQRTN
  3513. };
  3514. return values;
  3515. }
  3516. inline const char * const *EnumNamesCombinerType() {
  3517. static const char * const names[4] = {
  3518. "SUM",
  3519. "MEAN",
  3520. "SQRTN",
  3521. nullptr
  3522. };
  3523. return names;
  3524. }
  3525. inline const char *EnumNameCombinerType(CombinerType e) {
  3526. if (flatbuffers::IsOutRange(e, CombinerType_SUM, CombinerType_SQRTN)) return "";
  3527. const size_t index = static_cast<size_t>(e);
  3528. return EnumNamesCombinerType()[index];
  3529. }
  3530. enum MirrorPadMode : int8_t {
  3531. MirrorPadMode_REFLECT = 0,
  3532. MirrorPadMode_SYMMETRIC = 1,
  3533. MirrorPadMode_MIN = MirrorPadMode_REFLECT,
  3534. MirrorPadMode_MAX = MirrorPadMode_SYMMETRIC
  3535. };
  3536. inline const MirrorPadMode (&EnumValuesMirrorPadMode())[2] {
  3537. static const MirrorPadMode values[] = {
  3538. MirrorPadMode_REFLECT,
  3539. MirrorPadMode_SYMMETRIC
  3540. };
  3541. return values;
  3542. }
  3543. inline const char * const *EnumNamesMirrorPadMode() {
  3544. static const char * const names[3] = {
  3545. "REFLECT",
  3546. "SYMMETRIC",
  3547. nullptr
  3548. };
  3549. return names;
  3550. }
  3551. inline const char *EnumNameMirrorPadMode(MirrorPadMode e) {
  3552. if (flatbuffers::IsOutRange(e, MirrorPadMode_REFLECT, MirrorPadMode_SYMMETRIC)) return "";
  3553. const size_t index = static_cast<size_t>(e);
  3554. return EnumNamesMirrorPadMode()[index];
  3555. }
  3556. enum CustomOptionsFormat : int8_t {
  3557. CustomOptionsFormat_FLEXBUFFERS = 0,
  3558. CustomOptionsFormat_MIN = CustomOptionsFormat_FLEXBUFFERS,
  3559. CustomOptionsFormat_MAX = CustomOptionsFormat_FLEXBUFFERS
  3560. };
  3561. inline const CustomOptionsFormat (&EnumValuesCustomOptionsFormat())[1] {
  3562. static const CustomOptionsFormat values[] = {
  3563. CustomOptionsFormat_FLEXBUFFERS
  3564. };
  3565. return values;
  3566. }
  3567. inline const char * const *EnumNamesCustomOptionsFormat() {
  3568. static const char * const names[2] = {
  3569. "FLEXBUFFERS",
  3570. nullptr
  3571. };
  3572. return names;
  3573. }
  3574. inline const char *EnumNameCustomOptionsFormat(CustomOptionsFormat e) {
  3575. if (flatbuffers::IsOutRange(e, CustomOptionsFormat_FLEXBUFFERS, CustomOptionsFormat_FLEXBUFFERS)) return "";
  3576. const size_t index = static_cast<size_t>(e);
  3577. return EnumNamesCustomOptionsFormat()[index];
  3578. }
  3579. struct CustomQuantizationT : public flatbuffers::NativeTable {
  3580. typedef CustomQuantization TableType;
  3581. std::vector<uint8_t> custom{};
  3582. };
  3583. struct CustomQuantization FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3584. typedef CustomQuantizationT NativeTableType;
  3585. typedef CustomQuantizationBuilder Builder;
  3586. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3587. VT_CUSTOM = 4
  3588. };
  3589. const flatbuffers::Vector<uint8_t> *custom() const {
  3590. return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_CUSTOM);
  3591. }
  3592. bool Verify(flatbuffers::Verifier &verifier) const {
  3593. return VerifyTableStart(verifier) &&
  3594. VerifyOffset(verifier, VT_CUSTOM) &&
  3595. verifier.VerifyVector(custom()) &&
  3596. verifier.EndTable();
  3597. }
  3598. CustomQuantizationT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3599. void UnPackTo(CustomQuantizationT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3600. static flatbuffers::Offset<CustomQuantization> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3601. };
  3602. struct CustomQuantizationBuilder {
  3603. typedef CustomQuantization Table;
  3604. flatbuffers::FlatBufferBuilder &fbb_;
  3605. flatbuffers::uoffset_t start_;
  3606. void add_custom(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom) {
  3607. fbb_.AddOffset(CustomQuantization::VT_CUSTOM, custom);
  3608. }
  3609. explicit CustomQuantizationBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3610. : fbb_(_fbb) {
  3611. start_ = fbb_.StartTable();
  3612. }
  3613. flatbuffers::Offset<CustomQuantization> Finish() {
  3614. const auto end = fbb_.EndTable(start_);
  3615. auto o = flatbuffers::Offset<CustomQuantization>(end);
  3616. return o;
  3617. }
  3618. };
  3619. inline flatbuffers::Offset<CustomQuantization> CreateCustomQuantization(
  3620. flatbuffers::FlatBufferBuilder &_fbb,
  3621. flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom = 0) {
  3622. CustomQuantizationBuilder builder_(_fbb);
  3623. builder_.add_custom(custom);
  3624. return builder_.Finish();
  3625. }
  3626. inline flatbuffers::Offset<CustomQuantization> CreateCustomQuantizationDirect(
  3627. flatbuffers::FlatBufferBuilder &_fbb,
  3628. const std::vector<uint8_t> *custom = nullptr) {
  3629. if (custom) { _fbb.ForceVectorAlignment(custom->size(), sizeof(uint8_t), 16); }
  3630. auto custom__ = custom ? _fbb.CreateVector<uint8_t>(*custom) : 0;
  3631. return tflite::CreateCustomQuantization(
  3632. _fbb,
  3633. custom__);
  3634. }
  3635. flatbuffers::Offset<CustomQuantization> CreateCustomQuantization(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3636. struct QuantizationParametersT : public flatbuffers::NativeTable {
  3637. typedef QuantizationParameters TableType;
  3638. std::vector<float> min{};
  3639. std::vector<float> max{};
  3640. std::vector<float> scale{};
  3641. std::vector<int64_t> zero_point{};
  3642. tflite::QuantizationDetailsUnion details{};
  3643. int32_t quantized_dimension = 0;
  3644. };
  3645. struct QuantizationParameters FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3646. typedef QuantizationParametersT NativeTableType;
  3647. typedef QuantizationParametersBuilder Builder;
  3648. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3649. VT_MIN = 4,
  3650. VT_MAX = 6,
  3651. VT_SCALE = 8,
  3652. VT_ZERO_POINT = 10,
  3653. VT_DETAILS_TYPE = 12,
  3654. VT_DETAILS = 14,
  3655. VT_QUANTIZED_DIMENSION = 16
  3656. };
  3657. const flatbuffers::Vector<float> *min() const {
  3658. return GetPointer<const flatbuffers::Vector<float> *>(VT_MIN);
  3659. }
  3660. const flatbuffers::Vector<float> *max() const {
  3661. return GetPointer<const flatbuffers::Vector<float> *>(VT_MAX);
  3662. }
  3663. const flatbuffers::Vector<float> *scale() const {
  3664. return GetPointer<const flatbuffers::Vector<float> *>(VT_SCALE);
  3665. }
  3666. const flatbuffers::Vector<int64_t> *zero_point() const {
  3667. return GetPointer<const flatbuffers::Vector<int64_t> *>(VT_ZERO_POINT);
  3668. }
  3669. tflite::QuantizationDetails details_type() const {
  3670. return static_cast<tflite::QuantizationDetails>(GetField<uint8_t>(VT_DETAILS_TYPE, 0));
  3671. }
  3672. const void *details() const {
  3673. return GetPointer<const void *>(VT_DETAILS);
  3674. }
  3675. template<typename T> const T *details_as() const;
  3676. const tflite::CustomQuantization *details_as_CustomQuantization() const {
  3677. return details_type() == tflite::QuantizationDetails_CustomQuantization ? static_cast<const tflite::CustomQuantization *>(details()) : nullptr;
  3678. }
  3679. int32_t quantized_dimension() const {
  3680. return GetField<int32_t>(VT_QUANTIZED_DIMENSION, 0);
  3681. }
  3682. bool Verify(flatbuffers::Verifier &verifier) const {
  3683. return VerifyTableStart(verifier) &&
  3684. VerifyOffset(verifier, VT_MIN) &&
  3685. verifier.VerifyVector(min()) &&
  3686. VerifyOffset(verifier, VT_MAX) &&
  3687. verifier.VerifyVector(max()) &&
  3688. VerifyOffset(verifier, VT_SCALE) &&
  3689. verifier.VerifyVector(scale()) &&
  3690. VerifyOffset(verifier, VT_ZERO_POINT) &&
  3691. verifier.VerifyVector(zero_point()) &&
  3692. VerifyField<uint8_t>(verifier, VT_DETAILS_TYPE, 1) &&
  3693. VerifyOffset(verifier, VT_DETAILS) &&
  3694. VerifyQuantizationDetails(verifier, details(), details_type()) &&
  3695. VerifyField<int32_t>(verifier, VT_QUANTIZED_DIMENSION, 4) &&
  3696. verifier.EndTable();
  3697. }
  3698. QuantizationParametersT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3699. void UnPackTo(QuantizationParametersT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3700. static flatbuffers::Offset<QuantizationParameters> Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3701. };
  3702. template<> inline const tflite::CustomQuantization *QuantizationParameters::details_as<tflite::CustomQuantization>() const {
  3703. return details_as_CustomQuantization();
  3704. }
  3705. struct QuantizationParametersBuilder {
  3706. typedef QuantizationParameters Table;
  3707. flatbuffers::FlatBufferBuilder &fbb_;
  3708. flatbuffers::uoffset_t start_;
  3709. void add_min(flatbuffers::Offset<flatbuffers::Vector<float>> min) {
  3710. fbb_.AddOffset(QuantizationParameters::VT_MIN, min);
  3711. }
  3712. void add_max(flatbuffers::Offset<flatbuffers::Vector<float>> max) {
  3713. fbb_.AddOffset(QuantizationParameters::VT_MAX, max);
  3714. }
  3715. void add_scale(flatbuffers::Offset<flatbuffers::Vector<float>> scale) {
  3716. fbb_.AddOffset(QuantizationParameters::VT_SCALE, scale);
  3717. }
  3718. void add_zero_point(flatbuffers::Offset<flatbuffers::Vector<int64_t>> zero_point) {
  3719. fbb_.AddOffset(QuantizationParameters::VT_ZERO_POINT, zero_point);
  3720. }
  3721. void add_details_type(tflite::QuantizationDetails details_type) {
  3722. fbb_.AddElement<uint8_t>(QuantizationParameters::VT_DETAILS_TYPE, static_cast<uint8_t>(details_type), 0);
  3723. }
  3724. void add_details(flatbuffers::Offset<void> details) {
  3725. fbb_.AddOffset(QuantizationParameters::VT_DETAILS, details);
  3726. }
  3727. void add_quantized_dimension(int32_t quantized_dimension) {
  3728. fbb_.AddElement<int32_t>(QuantizationParameters::VT_QUANTIZED_DIMENSION, quantized_dimension, 0);
  3729. }
  3730. explicit QuantizationParametersBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3731. : fbb_(_fbb) {
  3732. start_ = fbb_.StartTable();
  3733. }
  3734. flatbuffers::Offset<QuantizationParameters> Finish() {
  3735. const auto end = fbb_.EndTable(start_);
  3736. auto o = flatbuffers::Offset<QuantizationParameters>(end);
  3737. return o;
  3738. }
  3739. };
  3740. inline flatbuffers::Offset<QuantizationParameters> CreateQuantizationParameters(
  3741. flatbuffers::FlatBufferBuilder &_fbb,
  3742. flatbuffers::Offset<flatbuffers::Vector<float>> min = 0,
  3743. flatbuffers::Offset<flatbuffers::Vector<float>> max = 0,
  3744. flatbuffers::Offset<flatbuffers::Vector<float>> scale = 0,
  3745. flatbuffers::Offset<flatbuffers::Vector<int64_t>> zero_point = 0,
  3746. tflite::QuantizationDetails details_type = tflite::QuantizationDetails_NONE,
  3747. flatbuffers::Offset<void> details = 0,
  3748. int32_t quantized_dimension = 0) {
  3749. QuantizationParametersBuilder builder_(_fbb);
  3750. builder_.add_quantized_dimension(quantized_dimension);
  3751. builder_.add_details(details);
  3752. builder_.add_zero_point(zero_point);
  3753. builder_.add_scale(scale);
  3754. builder_.add_max(max);
  3755. builder_.add_min(min);
  3756. builder_.add_details_type(details_type);
  3757. return builder_.Finish();
  3758. }
  3759. inline flatbuffers::Offset<QuantizationParameters> CreateQuantizationParametersDirect(
  3760. flatbuffers::FlatBufferBuilder &_fbb,
  3761. const std::vector<float> *min = nullptr,
  3762. const std::vector<float> *max = nullptr,
  3763. const std::vector<float> *scale = nullptr,
  3764. const std::vector<int64_t> *zero_point = nullptr,
  3765. tflite::QuantizationDetails details_type = tflite::QuantizationDetails_NONE,
  3766. flatbuffers::Offset<void> details = 0,
  3767. int32_t quantized_dimension = 0) {
  3768. auto min__ = min ? _fbb.CreateVector<float>(*min) : 0;
  3769. auto max__ = max ? _fbb.CreateVector<float>(*max) : 0;
  3770. auto scale__ = scale ? _fbb.CreateVector<float>(*scale) : 0;
  3771. auto zero_point__ = zero_point ? _fbb.CreateVector<int64_t>(*zero_point) : 0;
  3772. return tflite::CreateQuantizationParameters(
  3773. _fbb,
  3774. min__,
  3775. max__,
  3776. scale__,
  3777. zero_point__,
  3778. details_type,
  3779. details,
  3780. quantized_dimension);
  3781. }
  3782. flatbuffers::Offset<QuantizationParameters> CreateQuantizationParameters(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3783. struct Int32VectorT : public flatbuffers::NativeTable {
  3784. typedef Int32Vector TableType;
  3785. std::vector<int32_t> values{};
  3786. };
  3787. struct Int32Vector FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3788. typedef Int32VectorT NativeTableType;
  3789. typedef Int32VectorBuilder Builder;
  3790. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3791. VT_VALUES = 4
  3792. };
  3793. const flatbuffers::Vector<int32_t> *values() const {
  3794. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_VALUES);
  3795. }
  3796. bool Verify(flatbuffers::Verifier &verifier) const {
  3797. return VerifyTableStart(verifier) &&
  3798. VerifyOffset(verifier, VT_VALUES) &&
  3799. verifier.VerifyVector(values()) &&
  3800. verifier.EndTable();
  3801. }
  3802. Int32VectorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3803. void UnPackTo(Int32VectorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3804. static flatbuffers::Offset<Int32Vector> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3805. };
  3806. struct Int32VectorBuilder {
  3807. typedef Int32Vector Table;
  3808. flatbuffers::FlatBufferBuilder &fbb_;
  3809. flatbuffers::uoffset_t start_;
  3810. void add_values(flatbuffers::Offset<flatbuffers::Vector<int32_t>> values) {
  3811. fbb_.AddOffset(Int32Vector::VT_VALUES, values);
  3812. }
  3813. explicit Int32VectorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3814. : fbb_(_fbb) {
  3815. start_ = fbb_.StartTable();
  3816. }
  3817. flatbuffers::Offset<Int32Vector> Finish() {
  3818. const auto end = fbb_.EndTable(start_);
  3819. auto o = flatbuffers::Offset<Int32Vector>(end);
  3820. return o;
  3821. }
  3822. };
  3823. inline flatbuffers::Offset<Int32Vector> CreateInt32Vector(
  3824. flatbuffers::FlatBufferBuilder &_fbb,
  3825. flatbuffers::Offset<flatbuffers::Vector<int32_t>> values = 0) {
  3826. Int32VectorBuilder builder_(_fbb);
  3827. builder_.add_values(values);
  3828. return builder_.Finish();
  3829. }
  3830. inline flatbuffers::Offset<Int32Vector> CreateInt32VectorDirect(
  3831. flatbuffers::FlatBufferBuilder &_fbb,
  3832. const std::vector<int32_t> *values = nullptr) {
  3833. auto values__ = values ? _fbb.CreateVector<int32_t>(*values) : 0;
  3834. return tflite::CreateInt32Vector(
  3835. _fbb,
  3836. values__);
  3837. }
  3838. flatbuffers::Offset<Int32Vector> CreateInt32Vector(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3839. struct Uint16VectorT : public flatbuffers::NativeTable {
  3840. typedef Uint16Vector TableType;
  3841. std::vector<uint16_t> values{};
  3842. };
  3843. struct Uint16Vector FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3844. typedef Uint16VectorT NativeTableType;
  3845. typedef Uint16VectorBuilder Builder;
  3846. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3847. VT_VALUES = 4
  3848. };
  3849. const flatbuffers::Vector<uint16_t> *values() const {
  3850. return GetPointer<const flatbuffers::Vector<uint16_t> *>(VT_VALUES);
  3851. }
  3852. bool Verify(flatbuffers::Verifier &verifier) const {
  3853. return VerifyTableStart(verifier) &&
  3854. VerifyOffset(verifier, VT_VALUES) &&
  3855. verifier.VerifyVector(values()) &&
  3856. verifier.EndTable();
  3857. }
  3858. Uint16VectorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3859. void UnPackTo(Uint16VectorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3860. static flatbuffers::Offset<Uint16Vector> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3861. };
  3862. struct Uint16VectorBuilder {
  3863. typedef Uint16Vector Table;
  3864. flatbuffers::FlatBufferBuilder &fbb_;
  3865. flatbuffers::uoffset_t start_;
  3866. void add_values(flatbuffers::Offset<flatbuffers::Vector<uint16_t>> values) {
  3867. fbb_.AddOffset(Uint16Vector::VT_VALUES, values);
  3868. }
  3869. explicit Uint16VectorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3870. : fbb_(_fbb) {
  3871. start_ = fbb_.StartTable();
  3872. }
  3873. flatbuffers::Offset<Uint16Vector> Finish() {
  3874. const auto end = fbb_.EndTable(start_);
  3875. auto o = flatbuffers::Offset<Uint16Vector>(end);
  3876. return o;
  3877. }
  3878. };
  3879. inline flatbuffers::Offset<Uint16Vector> CreateUint16Vector(
  3880. flatbuffers::FlatBufferBuilder &_fbb,
  3881. flatbuffers::Offset<flatbuffers::Vector<uint16_t>> values = 0) {
  3882. Uint16VectorBuilder builder_(_fbb);
  3883. builder_.add_values(values);
  3884. return builder_.Finish();
  3885. }
  3886. inline flatbuffers::Offset<Uint16Vector> CreateUint16VectorDirect(
  3887. flatbuffers::FlatBufferBuilder &_fbb,
  3888. const std::vector<uint16_t> *values = nullptr) {
  3889. if (values) { _fbb.ForceVectorAlignment(values->size(), sizeof(uint16_t), 4); }
  3890. auto values__ = values ? _fbb.CreateVector<uint16_t>(*values) : 0;
  3891. return tflite::CreateUint16Vector(
  3892. _fbb,
  3893. values__);
  3894. }
  3895. flatbuffers::Offset<Uint16Vector> CreateUint16Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3896. struct Uint8VectorT : public flatbuffers::NativeTable {
  3897. typedef Uint8Vector TableType;
  3898. std::vector<uint8_t> values{};
  3899. };
  3900. struct Uint8Vector FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3901. typedef Uint8VectorT NativeTableType;
  3902. typedef Uint8VectorBuilder Builder;
  3903. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3904. VT_VALUES = 4
  3905. };
  3906. const flatbuffers::Vector<uint8_t> *values() const {
  3907. return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_VALUES);
  3908. }
  3909. bool Verify(flatbuffers::Verifier &verifier) const {
  3910. return VerifyTableStart(verifier) &&
  3911. VerifyOffset(verifier, VT_VALUES) &&
  3912. verifier.VerifyVector(values()) &&
  3913. verifier.EndTable();
  3914. }
  3915. Uint8VectorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3916. void UnPackTo(Uint8VectorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3917. static flatbuffers::Offset<Uint8Vector> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3918. };
  3919. struct Uint8VectorBuilder {
  3920. typedef Uint8Vector Table;
  3921. flatbuffers::FlatBufferBuilder &fbb_;
  3922. flatbuffers::uoffset_t start_;
  3923. void add_values(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> values) {
  3924. fbb_.AddOffset(Uint8Vector::VT_VALUES, values);
  3925. }
  3926. explicit Uint8VectorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3927. : fbb_(_fbb) {
  3928. start_ = fbb_.StartTable();
  3929. }
  3930. flatbuffers::Offset<Uint8Vector> Finish() {
  3931. const auto end = fbb_.EndTable(start_);
  3932. auto o = flatbuffers::Offset<Uint8Vector>(end);
  3933. return o;
  3934. }
  3935. };
  3936. inline flatbuffers::Offset<Uint8Vector> CreateUint8Vector(
  3937. flatbuffers::FlatBufferBuilder &_fbb,
  3938. flatbuffers::Offset<flatbuffers::Vector<uint8_t>> values = 0) {
  3939. Uint8VectorBuilder builder_(_fbb);
  3940. builder_.add_values(values);
  3941. return builder_.Finish();
  3942. }
  3943. inline flatbuffers::Offset<Uint8Vector> CreateUint8VectorDirect(
  3944. flatbuffers::FlatBufferBuilder &_fbb,
  3945. const std::vector<uint8_t> *values = nullptr) {
  3946. if (values) { _fbb.ForceVectorAlignment(values->size(), sizeof(uint8_t), 4); }
  3947. auto values__ = values ? _fbb.CreateVector<uint8_t>(*values) : 0;
  3948. return tflite::CreateUint8Vector(
  3949. _fbb,
  3950. values__);
  3951. }
  3952. flatbuffers::Offset<Uint8Vector> CreateUint8Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3953. struct DimensionMetadataT : public flatbuffers::NativeTable {
  3954. typedef DimensionMetadata TableType;
  3955. tflite::DimensionType format = tflite::DimensionType_DENSE;
  3956. int32_t dense_size = 0;
  3957. tflite::SparseIndexVectorUnion array_segments{};
  3958. tflite::SparseIndexVectorUnion array_indices{};
  3959. };
  3960. struct DimensionMetadata FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3961. typedef DimensionMetadataT NativeTableType;
  3962. typedef DimensionMetadataBuilder Builder;
  3963. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3964. VT_FORMAT = 4,
  3965. VT_DENSE_SIZE = 6,
  3966. VT_ARRAY_SEGMENTS_TYPE = 8,
  3967. VT_ARRAY_SEGMENTS = 10,
  3968. VT_ARRAY_INDICES_TYPE = 12,
  3969. VT_ARRAY_INDICES = 14
  3970. };
  3971. tflite::DimensionType format() const {
  3972. return static_cast<tflite::DimensionType>(GetField<int8_t>(VT_FORMAT, 0));
  3973. }
  3974. int32_t dense_size() const {
  3975. return GetField<int32_t>(VT_DENSE_SIZE, 0);
  3976. }
  3977. tflite::SparseIndexVector array_segments_type() const {
  3978. return static_cast<tflite::SparseIndexVector>(GetField<uint8_t>(VT_ARRAY_SEGMENTS_TYPE, 0));
  3979. }
  3980. const void *array_segments() const {
  3981. return GetPointer<const void *>(VT_ARRAY_SEGMENTS);
  3982. }
  3983. template<typename T> const T *array_segments_as() const;
  3984. const tflite::Int32Vector *array_segments_as_Int32Vector() const {
  3985. return array_segments_type() == tflite::SparseIndexVector_Int32Vector ? static_cast<const tflite::Int32Vector *>(array_segments()) : nullptr;
  3986. }
  3987. const tflite::Uint16Vector *array_segments_as_Uint16Vector() const {
  3988. return array_segments_type() == tflite::SparseIndexVector_Uint16Vector ? static_cast<const tflite::Uint16Vector *>(array_segments()) : nullptr;
  3989. }
  3990. const tflite::Uint8Vector *array_segments_as_Uint8Vector() const {
  3991. return array_segments_type() == tflite::SparseIndexVector_Uint8Vector ? static_cast<const tflite::Uint8Vector *>(array_segments()) : nullptr;
  3992. }
  3993. tflite::SparseIndexVector array_indices_type() const {
  3994. return static_cast<tflite::SparseIndexVector>(GetField<uint8_t>(VT_ARRAY_INDICES_TYPE, 0));
  3995. }
  3996. const void *array_indices() const {
  3997. return GetPointer<const void *>(VT_ARRAY_INDICES);
  3998. }
  3999. template<typename T> const T *array_indices_as() const;
  4000. const tflite::Int32Vector *array_indices_as_Int32Vector() const {
  4001. return array_indices_type() == tflite::SparseIndexVector_Int32Vector ? static_cast<const tflite::Int32Vector *>(array_indices()) : nullptr;
  4002. }
  4003. const tflite::Uint16Vector *array_indices_as_Uint16Vector() const {
  4004. return array_indices_type() == tflite::SparseIndexVector_Uint16Vector ? static_cast<const tflite::Uint16Vector *>(array_indices()) : nullptr;
  4005. }
  4006. const tflite::Uint8Vector *array_indices_as_Uint8Vector() const {
  4007. return array_indices_type() == tflite::SparseIndexVector_Uint8Vector ? static_cast<const tflite::Uint8Vector *>(array_indices()) : nullptr;
  4008. }
  4009. bool Verify(flatbuffers::Verifier &verifier) const {
  4010. return VerifyTableStart(verifier) &&
  4011. VerifyField<int8_t>(verifier, VT_FORMAT, 1) &&
  4012. VerifyField<int32_t>(verifier, VT_DENSE_SIZE, 4) &&
  4013. VerifyField<uint8_t>(verifier, VT_ARRAY_SEGMENTS_TYPE, 1) &&
  4014. VerifyOffset(verifier, VT_ARRAY_SEGMENTS) &&
  4015. VerifySparseIndexVector(verifier, array_segments(), array_segments_type()) &&
  4016. VerifyField<uint8_t>(verifier, VT_ARRAY_INDICES_TYPE, 1) &&
  4017. VerifyOffset(verifier, VT_ARRAY_INDICES) &&
  4018. VerifySparseIndexVector(verifier, array_indices(), array_indices_type()) &&
  4019. verifier.EndTable();
  4020. }
  4021. DimensionMetadataT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4022. void UnPackTo(DimensionMetadataT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4023. static flatbuffers::Offset<DimensionMetadata> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4024. };
  4025. template<> inline const tflite::Int32Vector *DimensionMetadata::array_segments_as<tflite::Int32Vector>() const {
  4026. return array_segments_as_Int32Vector();
  4027. }
  4028. template<> inline const tflite::Uint16Vector *DimensionMetadata::array_segments_as<tflite::Uint16Vector>() const {
  4029. return array_segments_as_Uint16Vector();
  4030. }
  4031. template<> inline const tflite::Uint8Vector *DimensionMetadata::array_segments_as<tflite::Uint8Vector>() const {
  4032. return array_segments_as_Uint8Vector();
  4033. }
  4034. template<> inline const tflite::Int32Vector *DimensionMetadata::array_indices_as<tflite::Int32Vector>() const {
  4035. return array_indices_as_Int32Vector();
  4036. }
  4037. template<> inline const tflite::Uint16Vector *DimensionMetadata::array_indices_as<tflite::Uint16Vector>() const {
  4038. return array_indices_as_Uint16Vector();
  4039. }
  4040. template<> inline const tflite::Uint8Vector *DimensionMetadata::array_indices_as<tflite::Uint8Vector>() const {
  4041. return array_indices_as_Uint8Vector();
  4042. }
  4043. struct DimensionMetadataBuilder {
  4044. typedef DimensionMetadata Table;
  4045. flatbuffers::FlatBufferBuilder &fbb_;
  4046. flatbuffers::uoffset_t start_;
  4047. void add_format(tflite::DimensionType format) {
  4048. fbb_.AddElement<int8_t>(DimensionMetadata::VT_FORMAT, static_cast<int8_t>(format), 0);
  4049. }
  4050. void add_dense_size(int32_t dense_size) {
  4051. fbb_.AddElement<int32_t>(DimensionMetadata::VT_DENSE_SIZE, dense_size, 0);
  4052. }
  4053. void add_array_segments_type(tflite::SparseIndexVector array_segments_type) {
  4054. fbb_.AddElement<uint8_t>(DimensionMetadata::VT_ARRAY_SEGMENTS_TYPE, static_cast<uint8_t>(array_segments_type), 0);
  4055. }
  4056. void add_array_segments(flatbuffers::Offset<void> array_segments) {
  4057. fbb_.AddOffset(DimensionMetadata::VT_ARRAY_SEGMENTS, array_segments);
  4058. }
  4059. void add_array_indices_type(tflite::SparseIndexVector array_indices_type) {
  4060. fbb_.AddElement<uint8_t>(DimensionMetadata::VT_ARRAY_INDICES_TYPE, static_cast<uint8_t>(array_indices_type), 0);
  4061. }
  4062. void add_array_indices(flatbuffers::Offset<void> array_indices) {
  4063. fbb_.AddOffset(DimensionMetadata::VT_ARRAY_INDICES, array_indices);
  4064. }
  4065. explicit DimensionMetadataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4066. : fbb_(_fbb) {
  4067. start_ = fbb_.StartTable();
  4068. }
  4069. flatbuffers::Offset<DimensionMetadata> Finish() {
  4070. const auto end = fbb_.EndTable(start_);
  4071. auto o = flatbuffers::Offset<DimensionMetadata>(end);
  4072. return o;
  4073. }
  4074. };
  4075. inline flatbuffers::Offset<DimensionMetadata> CreateDimensionMetadata(
  4076. flatbuffers::FlatBufferBuilder &_fbb,
  4077. tflite::DimensionType format = tflite::DimensionType_DENSE,
  4078. int32_t dense_size = 0,
  4079. tflite::SparseIndexVector array_segments_type = tflite::SparseIndexVector_NONE,
  4080. flatbuffers::Offset<void> array_segments = 0,
  4081. tflite::SparseIndexVector array_indices_type = tflite::SparseIndexVector_NONE,
  4082. flatbuffers::Offset<void> array_indices = 0) {
  4083. DimensionMetadataBuilder builder_(_fbb);
  4084. builder_.add_array_indices(array_indices);
  4085. builder_.add_array_segments(array_segments);
  4086. builder_.add_dense_size(dense_size);
  4087. builder_.add_array_indices_type(array_indices_type);
  4088. builder_.add_array_segments_type(array_segments_type);
  4089. builder_.add_format(format);
  4090. return builder_.Finish();
  4091. }
  4092. flatbuffers::Offset<DimensionMetadata> CreateDimensionMetadata(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4093. struct SparsityParametersT : public flatbuffers::NativeTable {
  4094. typedef SparsityParameters TableType;
  4095. std::vector<int32_t> traversal_order{};
  4096. std::vector<int32_t> block_map{};
  4097. std::vector<std::unique_ptr<tflite::DimensionMetadataT>> dim_metadata{};
  4098. SparsityParametersT() = default;
  4099. SparsityParametersT(const SparsityParametersT &o);
  4100. SparsityParametersT(SparsityParametersT&&) FLATBUFFERS_NOEXCEPT = default;
  4101. SparsityParametersT &operator=(SparsityParametersT o) FLATBUFFERS_NOEXCEPT;
  4102. };
  4103. struct SparsityParameters FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4104. typedef SparsityParametersT NativeTableType;
  4105. typedef SparsityParametersBuilder Builder;
  4106. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4107. VT_TRAVERSAL_ORDER = 4,
  4108. VT_BLOCK_MAP = 6,
  4109. VT_DIM_METADATA = 8
  4110. };
  4111. const flatbuffers::Vector<int32_t> *traversal_order() const {
  4112. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_TRAVERSAL_ORDER);
  4113. }
  4114. const flatbuffers::Vector<int32_t> *block_map() const {
  4115. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_BLOCK_MAP);
  4116. }
  4117. const flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>> *dim_metadata() const {
  4118. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>> *>(VT_DIM_METADATA);
  4119. }
  4120. bool Verify(flatbuffers::Verifier &verifier) const {
  4121. return VerifyTableStart(verifier) &&
  4122. VerifyOffset(verifier, VT_TRAVERSAL_ORDER) &&
  4123. verifier.VerifyVector(traversal_order()) &&
  4124. VerifyOffset(verifier, VT_BLOCK_MAP) &&
  4125. verifier.VerifyVector(block_map()) &&
  4126. VerifyOffset(verifier, VT_DIM_METADATA) &&
  4127. verifier.VerifyVector(dim_metadata()) &&
  4128. verifier.VerifyVectorOfTables(dim_metadata()) &&
  4129. verifier.EndTable();
  4130. }
  4131. SparsityParametersT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4132. void UnPackTo(SparsityParametersT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4133. static flatbuffers::Offset<SparsityParameters> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4134. };
  4135. struct SparsityParametersBuilder {
  4136. typedef SparsityParameters Table;
  4137. flatbuffers::FlatBufferBuilder &fbb_;
  4138. flatbuffers::uoffset_t start_;
  4139. void add_traversal_order(flatbuffers::Offset<flatbuffers::Vector<int32_t>> traversal_order) {
  4140. fbb_.AddOffset(SparsityParameters::VT_TRAVERSAL_ORDER, traversal_order);
  4141. }
  4142. void add_block_map(flatbuffers::Offset<flatbuffers::Vector<int32_t>> block_map) {
  4143. fbb_.AddOffset(SparsityParameters::VT_BLOCK_MAP, block_map);
  4144. }
  4145. void add_dim_metadata(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>>> dim_metadata) {
  4146. fbb_.AddOffset(SparsityParameters::VT_DIM_METADATA, dim_metadata);
  4147. }
  4148. explicit SparsityParametersBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4149. : fbb_(_fbb) {
  4150. start_ = fbb_.StartTable();
  4151. }
  4152. flatbuffers::Offset<SparsityParameters> Finish() {
  4153. const auto end = fbb_.EndTable(start_);
  4154. auto o = flatbuffers::Offset<SparsityParameters>(end);
  4155. return o;
  4156. }
  4157. };
  4158. inline flatbuffers::Offset<SparsityParameters> CreateSparsityParameters(
  4159. flatbuffers::FlatBufferBuilder &_fbb,
  4160. flatbuffers::Offset<flatbuffers::Vector<int32_t>> traversal_order = 0,
  4161. flatbuffers::Offset<flatbuffers::Vector<int32_t>> block_map = 0,
  4162. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>>> dim_metadata = 0) {
  4163. SparsityParametersBuilder builder_(_fbb);
  4164. builder_.add_dim_metadata(dim_metadata);
  4165. builder_.add_block_map(block_map);
  4166. builder_.add_traversal_order(traversal_order);
  4167. return builder_.Finish();
  4168. }
  4169. inline flatbuffers::Offset<SparsityParameters> CreateSparsityParametersDirect(
  4170. flatbuffers::FlatBufferBuilder &_fbb,
  4171. const std::vector<int32_t> *traversal_order = nullptr,
  4172. const std::vector<int32_t> *block_map = nullptr,
  4173. const std::vector<flatbuffers::Offset<tflite::DimensionMetadata>> *dim_metadata = nullptr) {
  4174. auto traversal_order__ = traversal_order ? _fbb.CreateVector<int32_t>(*traversal_order) : 0;
  4175. auto block_map__ = block_map ? _fbb.CreateVector<int32_t>(*block_map) : 0;
  4176. auto dim_metadata__ = dim_metadata ? _fbb.CreateVector<flatbuffers::Offset<tflite::DimensionMetadata>>(*dim_metadata) : 0;
  4177. return tflite::CreateSparsityParameters(
  4178. _fbb,
  4179. traversal_order__,
  4180. block_map__,
  4181. dim_metadata__);
  4182. }
  4183. flatbuffers::Offset<SparsityParameters> CreateSparsityParameters(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4184. struct VariantSubTypeT : public flatbuffers::NativeTable {
  4185. typedef VariantSubType TableType;
  4186. std::vector<int32_t> shape{};
  4187. tflite::TensorType type = tflite::TensorType_FLOAT32;
  4188. bool has_rank = false;
  4189. };
  4190. struct VariantSubType FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4191. typedef VariantSubTypeT NativeTableType;
  4192. typedef VariantSubTypeBuilder Builder;
  4193. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4194. VT_SHAPE = 4,
  4195. VT_TYPE = 6,
  4196. VT_HAS_RANK = 8
  4197. };
  4198. const flatbuffers::Vector<int32_t> *shape() const {
  4199. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SHAPE);
  4200. }
  4201. tflite::TensorType type() const {
  4202. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_TYPE, 0));
  4203. }
  4204. bool has_rank() const {
  4205. return GetField<uint8_t>(VT_HAS_RANK, 0) != 0;
  4206. }
  4207. bool Verify(flatbuffers::Verifier &verifier) const {
  4208. return VerifyTableStart(verifier) &&
  4209. VerifyOffset(verifier, VT_SHAPE) &&
  4210. verifier.VerifyVector(shape()) &&
  4211. VerifyField<int8_t>(verifier, VT_TYPE, 1) &&
  4212. VerifyField<uint8_t>(verifier, VT_HAS_RANK, 1) &&
  4213. verifier.EndTable();
  4214. }
  4215. VariantSubTypeT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4216. void UnPackTo(VariantSubTypeT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4217. static flatbuffers::Offset<VariantSubType> Pack(flatbuffers::FlatBufferBuilder &_fbb, const VariantSubTypeT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4218. };
  4219. struct VariantSubTypeBuilder {
  4220. typedef VariantSubType Table;
  4221. flatbuffers::FlatBufferBuilder &fbb_;
  4222. flatbuffers::uoffset_t start_;
  4223. void add_shape(flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape) {
  4224. fbb_.AddOffset(VariantSubType::VT_SHAPE, shape);
  4225. }
  4226. void add_type(tflite::TensorType type) {
  4227. fbb_.AddElement<int8_t>(VariantSubType::VT_TYPE, static_cast<int8_t>(type), 0);
  4228. }
  4229. void add_has_rank(bool has_rank) {
  4230. fbb_.AddElement<uint8_t>(VariantSubType::VT_HAS_RANK, static_cast<uint8_t>(has_rank), 0);
  4231. }
  4232. explicit VariantSubTypeBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4233. : fbb_(_fbb) {
  4234. start_ = fbb_.StartTable();
  4235. }
  4236. flatbuffers::Offset<VariantSubType> Finish() {
  4237. const auto end = fbb_.EndTable(start_);
  4238. auto o = flatbuffers::Offset<VariantSubType>(end);
  4239. return o;
  4240. }
  4241. };
  4242. inline flatbuffers::Offset<VariantSubType> CreateVariantSubType(
  4243. flatbuffers::FlatBufferBuilder &_fbb,
  4244. flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape = 0,
  4245. tflite::TensorType type = tflite::TensorType_FLOAT32,
  4246. bool has_rank = false) {
  4247. VariantSubTypeBuilder builder_(_fbb);
  4248. builder_.add_shape(shape);
  4249. builder_.add_has_rank(has_rank);
  4250. builder_.add_type(type);
  4251. return builder_.Finish();
  4252. }
  4253. inline flatbuffers::Offset<VariantSubType> CreateVariantSubTypeDirect(
  4254. flatbuffers::FlatBufferBuilder &_fbb,
  4255. const std::vector<int32_t> *shape = nullptr,
  4256. tflite::TensorType type = tflite::TensorType_FLOAT32,
  4257. bool has_rank = false) {
  4258. auto shape__ = shape ? _fbb.CreateVector<int32_t>(*shape) : 0;
  4259. return tflite::CreateVariantSubType(
  4260. _fbb,
  4261. shape__,
  4262. type,
  4263. has_rank);
  4264. }
  4265. flatbuffers::Offset<VariantSubType> CreateVariantSubType(flatbuffers::FlatBufferBuilder &_fbb, const VariantSubTypeT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4266. struct TensorT : public flatbuffers::NativeTable {
  4267. typedef Tensor TableType;
  4268. std::vector<int32_t> shape{};
  4269. tflite::TensorType type = tflite::TensorType_FLOAT32;
  4270. uint32_t buffer = 0;
  4271. std::string name{};
  4272. std::unique_ptr<tflite::QuantizationParametersT> quantization{};
  4273. bool is_variable = false;
  4274. std::unique_ptr<tflite::SparsityParametersT> sparsity{};
  4275. std::vector<int32_t> shape_signature{};
  4276. bool has_rank = false;
  4277. std::vector<std::unique_ptr<tflite::VariantSubTypeT>> variant_tensors{};
  4278. TensorT() = default;
  4279. TensorT(const TensorT &o);
  4280. TensorT(TensorT&&) FLATBUFFERS_NOEXCEPT = default;
  4281. TensorT &operator=(TensorT o) FLATBUFFERS_NOEXCEPT;
  4282. };
  4283. struct Tensor FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4284. typedef TensorT NativeTableType;
  4285. typedef TensorBuilder Builder;
  4286. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4287. VT_SHAPE = 4,
  4288. VT_TYPE = 6,
  4289. VT_BUFFER = 8,
  4290. VT_NAME = 10,
  4291. VT_QUANTIZATION = 12,
  4292. VT_IS_VARIABLE = 14,
  4293. VT_SPARSITY = 16,
  4294. VT_SHAPE_SIGNATURE = 18,
  4295. VT_HAS_RANK = 20,
  4296. VT_VARIANT_TENSORS = 22
  4297. };
  4298. const flatbuffers::Vector<int32_t> *shape() const {
  4299. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SHAPE);
  4300. }
  4301. tflite::TensorType type() const {
  4302. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_TYPE, 0));
  4303. }
  4304. uint32_t buffer() const {
  4305. return GetField<uint32_t>(VT_BUFFER, 0);
  4306. }
  4307. const flatbuffers::String *name() const {
  4308. return GetPointer<const flatbuffers::String *>(VT_NAME);
  4309. }
  4310. const tflite::QuantizationParameters *quantization() const {
  4311. return GetPointer<const tflite::QuantizationParameters *>(VT_QUANTIZATION);
  4312. }
  4313. bool is_variable() const {
  4314. return GetField<uint8_t>(VT_IS_VARIABLE, 0) != 0;
  4315. }
  4316. const tflite::SparsityParameters *sparsity() const {
  4317. return GetPointer<const tflite::SparsityParameters *>(VT_SPARSITY);
  4318. }
  4319. const flatbuffers::Vector<int32_t> *shape_signature() const {
  4320. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SHAPE_SIGNATURE);
  4321. }
  4322. bool has_rank() const {
  4323. return GetField<uint8_t>(VT_HAS_RANK, 0) != 0;
  4324. }
  4325. const flatbuffers::Vector<flatbuffers::Offset<tflite::VariantSubType>> *variant_tensors() const {
  4326. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::VariantSubType>> *>(VT_VARIANT_TENSORS);
  4327. }
  4328. bool Verify(flatbuffers::Verifier &verifier) const {
  4329. return VerifyTableStart(verifier) &&
  4330. VerifyOffset(verifier, VT_SHAPE) &&
  4331. verifier.VerifyVector(shape()) &&
  4332. VerifyField<int8_t>(verifier, VT_TYPE, 1) &&
  4333. VerifyField<uint32_t>(verifier, VT_BUFFER, 4) &&
  4334. VerifyOffset(verifier, VT_NAME) &&
  4335. verifier.VerifyString(name()) &&
  4336. VerifyOffset(verifier, VT_QUANTIZATION) &&
  4337. verifier.VerifyTable(quantization()) &&
  4338. VerifyField<uint8_t>(verifier, VT_IS_VARIABLE, 1) &&
  4339. VerifyOffset(verifier, VT_SPARSITY) &&
  4340. verifier.VerifyTable(sparsity()) &&
  4341. VerifyOffset(verifier, VT_SHAPE_SIGNATURE) &&
  4342. verifier.VerifyVector(shape_signature()) &&
  4343. VerifyField<uint8_t>(verifier, VT_HAS_RANK, 1) &&
  4344. VerifyOffset(verifier, VT_VARIANT_TENSORS) &&
  4345. verifier.VerifyVector(variant_tensors()) &&
  4346. verifier.VerifyVectorOfTables(variant_tensors()) &&
  4347. verifier.EndTable();
  4348. }
  4349. TensorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4350. void UnPackTo(TensorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4351. static flatbuffers::Offset<Tensor> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4352. };
  4353. struct TensorBuilder {
  4354. typedef Tensor Table;
  4355. flatbuffers::FlatBufferBuilder &fbb_;
  4356. flatbuffers::uoffset_t start_;
  4357. void add_shape(flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape) {
  4358. fbb_.AddOffset(Tensor::VT_SHAPE, shape);
  4359. }
  4360. void add_type(tflite::TensorType type) {
  4361. fbb_.AddElement<int8_t>(Tensor::VT_TYPE, static_cast<int8_t>(type), 0);
  4362. }
  4363. void add_buffer(uint32_t buffer) {
  4364. fbb_.AddElement<uint32_t>(Tensor::VT_BUFFER, buffer, 0);
  4365. }
  4366. void add_name(flatbuffers::Offset<flatbuffers::String> name) {
  4367. fbb_.AddOffset(Tensor::VT_NAME, name);
  4368. }
  4369. void add_quantization(flatbuffers::Offset<tflite::QuantizationParameters> quantization) {
  4370. fbb_.AddOffset(Tensor::VT_QUANTIZATION, quantization);
  4371. }
  4372. void add_is_variable(bool is_variable) {
  4373. fbb_.AddElement<uint8_t>(Tensor::VT_IS_VARIABLE, static_cast<uint8_t>(is_variable), 0);
  4374. }
  4375. void add_sparsity(flatbuffers::Offset<tflite::SparsityParameters> sparsity) {
  4376. fbb_.AddOffset(Tensor::VT_SPARSITY, sparsity);
  4377. }
  4378. void add_shape_signature(flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape_signature) {
  4379. fbb_.AddOffset(Tensor::VT_SHAPE_SIGNATURE, shape_signature);
  4380. }
  4381. void add_has_rank(bool has_rank) {
  4382. fbb_.AddElement<uint8_t>(Tensor::VT_HAS_RANK, static_cast<uint8_t>(has_rank), 0);
  4383. }
  4384. void add_variant_tensors(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::VariantSubType>>> variant_tensors) {
  4385. fbb_.AddOffset(Tensor::VT_VARIANT_TENSORS, variant_tensors);
  4386. }
  4387. explicit TensorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4388. : fbb_(_fbb) {
  4389. start_ = fbb_.StartTable();
  4390. }
  4391. flatbuffers::Offset<Tensor> Finish() {
  4392. const auto end = fbb_.EndTable(start_);
  4393. auto o = flatbuffers::Offset<Tensor>(end);
  4394. return o;
  4395. }
  4396. };
  4397. inline flatbuffers::Offset<Tensor> CreateTensor(
  4398. flatbuffers::FlatBufferBuilder &_fbb,
  4399. flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape = 0,
  4400. tflite::TensorType type = tflite::TensorType_FLOAT32,
  4401. uint32_t buffer = 0,
  4402. flatbuffers::Offset<flatbuffers::String> name = 0,
  4403. flatbuffers::Offset<tflite::QuantizationParameters> quantization = 0,
  4404. bool is_variable = false,
  4405. flatbuffers::Offset<tflite::SparsityParameters> sparsity = 0,
  4406. flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape_signature = 0,
  4407. bool has_rank = false,
  4408. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::VariantSubType>>> variant_tensors = 0) {
  4409. TensorBuilder builder_(_fbb);
  4410. builder_.add_variant_tensors(variant_tensors);
  4411. builder_.add_shape_signature(shape_signature);
  4412. builder_.add_sparsity(sparsity);
  4413. builder_.add_quantization(quantization);
  4414. builder_.add_name(name);
  4415. builder_.add_buffer(buffer);
  4416. builder_.add_shape(shape);
  4417. builder_.add_has_rank(has_rank);
  4418. builder_.add_is_variable(is_variable);
  4419. builder_.add_type(type);
  4420. return builder_.Finish();
  4421. }
  4422. inline flatbuffers::Offset<Tensor> CreateTensorDirect(
  4423. flatbuffers::FlatBufferBuilder &_fbb,
  4424. const std::vector<int32_t> *shape = nullptr,
  4425. tflite::TensorType type = tflite::TensorType_FLOAT32,
  4426. uint32_t buffer = 0,
  4427. const char *name = nullptr,
  4428. flatbuffers::Offset<tflite::QuantizationParameters> quantization = 0,
  4429. bool is_variable = false,
  4430. flatbuffers::Offset<tflite::SparsityParameters> sparsity = 0,
  4431. const std::vector<int32_t> *shape_signature = nullptr,
  4432. bool has_rank = false,
  4433. const std::vector<flatbuffers::Offset<tflite::VariantSubType>> *variant_tensors = nullptr) {
  4434. auto shape__ = shape ? _fbb.CreateVector<int32_t>(*shape) : 0;
  4435. auto name__ = name ? _fbb.CreateString(name) : 0;
  4436. auto shape_signature__ = shape_signature ? _fbb.CreateVector<int32_t>(*shape_signature) : 0;
  4437. auto variant_tensors__ = variant_tensors ? _fbb.CreateVector<flatbuffers::Offset<tflite::VariantSubType>>(*variant_tensors) : 0;
  4438. return tflite::CreateTensor(
  4439. _fbb,
  4440. shape__,
  4441. type,
  4442. buffer,
  4443. name__,
  4444. quantization,
  4445. is_variable,
  4446. sparsity,
  4447. shape_signature__,
  4448. has_rank,
  4449. variant_tensors__);
  4450. }
  4451. flatbuffers::Offset<Tensor> CreateTensor(flatbuffers::FlatBufferBuilder &_fbb, const TensorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4452. struct Conv2DOptionsT : public flatbuffers::NativeTable {
  4453. typedef Conv2DOptions TableType;
  4454. tflite::Padding padding = tflite::Padding_SAME;
  4455. int32_t stride_w = 0;
  4456. int32_t stride_h = 0;
  4457. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  4458. int32_t dilation_w_factor = 1;
  4459. int32_t dilation_h_factor = 1;
  4460. };
  4461. struct Conv2DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4462. typedef Conv2DOptionsT NativeTableType;
  4463. typedef Conv2DOptionsBuilder Builder;
  4464. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4465. VT_PADDING = 4,
  4466. VT_STRIDE_W = 6,
  4467. VT_STRIDE_H = 8,
  4468. VT_FUSED_ACTIVATION_FUNCTION = 10,
  4469. VT_DILATION_W_FACTOR = 12,
  4470. VT_DILATION_H_FACTOR = 14
  4471. };
  4472. tflite::Padding padding() const {
  4473. return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  4474. }
  4475. int32_t stride_w() const {
  4476. return GetField<int32_t>(VT_STRIDE_W, 0);
  4477. }
  4478. int32_t stride_h() const {
  4479. return GetField<int32_t>(VT_STRIDE_H, 0);
  4480. }
  4481. tflite::ActivationFunctionType fused_activation_function() const {
  4482. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4483. }
  4484. int32_t dilation_w_factor() const {
  4485. return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
  4486. }
  4487. int32_t dilation_h_factor() const {
  4488. return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
  4489. }
  4490. bool Verify(flatbuffers::Verifier &verifier) const {
  4491. return VerifyTableStart(verifier) &&
  4492. VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
  4493. VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
  4494. VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
  4495. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  4496. VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR, 4) &&
  4497. VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR, 4) &&
  4498. verifier.EndTable();
  4499. }
  4500. Conv2DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4501. void UnPackTo(Conv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4502. static flatbuffers::Offset<Conv2DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4503. };
  4504. struct Conv2DOptionsBuilder {
  4505. typedef Conv2DOptions Table;
  4506. flatbuffers::FlatBufferBuilder &fbb_;
  4507. flatbuffers::uoffset_t start_;
  4508. void add_padding(tflite::Padding padding) {
  4509. fbb_.AddElement<int8_t>(Conv2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  4510. }
  4511. void add_stride_w(int32_t stride_w) {
  4512. fbb_.AddElement<int32_t>(Conv2DOptions::VT_STRIDE_W, stride_w, 0);
  4513. }
  4514. void add_stride_h(int32_t stride_h) {
  4515. fbb_.AddElement<int32_t>(Conv2DOptions::VT_STRIDE_H, stride_h, 0);
  4516. }
  4517. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4518. fbb_.AddElement<int8_t>(Conv2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4519. }
  4520. void add_dilation_w_factor(int32_t dilation_w_factor) {
  4521. fbb_.AddElement<int32_t>(Conv2DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
  4522. }
  4523. void add_dilation_h_factor(int32_t dilation_h_factor) {
  4524. fbb_.AddElement<int32_t>(Conv2DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
  4525. }
  4526. explicit Conv2DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4527. : fbb_(_fbb) {
  4528. start_ = fbb_.StartTable();
  4529. }
  4530. flatbuffers::Offset<Conv2DOptions> Finish() {
  4531. const auto end = fbb_.EndTable(start_);
  4532. auto o = flatbuffers::Offset<Conv2DOptions>(end);
  4533. return o;
  4534. }
  4535. };
  4536. inline flatbuffers::Offset<Conv2DOptions> CreateConv2DOptions(
  4537. flatbuffers::FlatBufferBuilder &_fbb,
  4538. tflite::Padding padding = tflite::Padding_SAME,
  4539. int32_t stride_w = 0,
  4540. int32_t stride_h = 0,
  4541. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4542. int32_t dilation_w_factor = 1,
  4543. int32_t dilation_h_factor = 1) {
  4544. Conv2DOptionsBuilder builder_(_fbb);
  4545. builder_.add_dilation_h_factor(dilation_h_factor);
  4546. builder_.add_dilation_w_factor(dilation_w_factor);
  4547. builder_.add_stride_h(stride_h);
  4548. builder_.add_stride_w(stride_w);
  4549. builder_.add_fused_activation_function(fused_activation_function);
  4550. builder_.add_padding(padding);
  4551. return builder_.Finish();
  4552. }
  4553. flatbuffers::Offset<Conv2DOptions> CreateConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4554. struct Conv3DOptionsT : public flatbuffers::NativeTable {
  4555. typedef Conv3DOptions TableType;
  4556. tflite::Padding padding = tflite::Padding_SAME;
  4557. int32_t stride_d = 0;
  4558. int32_t stride_w = 0;
  4559. int32_t stride_h = 0;
  4560. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  4561. int32_t dilation_d_factor = 1;
  4562. int32_t dilation_w_factor = 1;
  4563. int32_t dilation_h_factor = 1;
  4564. };
  4565. struct Conv3DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4566. typedef Conv3DOptionsT NativeTableType;
  4567. typedef Conv3DOptionsBuilder Builder;
  4568. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4569. VT_PADDING = 4,
  4570. VT_STRIDE_D = 6,
  4571. VT_STRIDE_W = 8,
  4572. VT_STRIDE_H = 10,
  4573. VT_FUSED_ACTIVATION_FUNCTION = 12,
  4574. VT_DILATION_D_FACTOR = 14,
  4575. VT_DILATION_W_FACTOR = 16,
  4576. VT_DILATION_H_FACTOR = 18
  4577. };
  4578. tflite::Padding padding() const {
  4579. return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  4580. }
  4581. int32_t stride_d() const {
  4582. return GetField<int32_t>(VT_STRIDE_D, 0);
  4583. }
  4584. int32_t stride_w() const {
  4585. return GetField<int32_t>(VT_STRIDE_W, 0);
  4586. }
  4587. int32_t stride_h() const {
  4588. return GetField<int32_t>(VT_STRIDE_H, 0);
  4589. }
  4590. tflite::ActivationFunctionType fused_activation_function() const {
  4591. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4592. }
  4593. int32_t dilation_d_factor() const {
  4594. return GetField<int32_t>(VT_DILATION_D_FACTOR, 1);
  4595. }
  4596. int32_t dilation_w_factor() const {
  4597. return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
  4598. }
  4599. int32_t dilation_h_factor() const {
  4600. return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
  4601. }
  4602. bool Verify(flatbuffers::Verifier &verifier) const {
  4603. return VerifyTableStart(verifier) &&
  4604. VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
  4605. VerifyField<int32_t>(verifier, VT_STRIDE_D, 4) &&
  4606. VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
  4607. VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
  4608. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  4609. VerifyField<int32_t>(verifier, VT_DILATION_D_FACTOR, 4) &&
  4610. VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR, 4) &&
  4611. VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR, 4) &&
  4612. verifier.EndTable();
  4613. }
  4614. Conv3DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4615. void UnPackTo(Conv3DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4616. static flatbuffers::Offset<Conv3DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4617. };
  4618. struct Conv3DOptionsBuilder {
  4619. typedef Conv3DOptions Table;
  4620. flatbuffers::FlatBufferBuilder &fbb_;
  4621. flatbuffers::uoffset_t start_;
  4622. void add_padding(tflite::Padding padding) {
  4623. fbb_.AddElement<int8_t>(Conv3DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  4624. }
  4625. void add_stride_d(int32_t stride_d) {
  4626. fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_D, stride_d, 0);
  4627. }
  4628. void add_stride_w(int32_t stride_w) {
  4629. fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_W, stride_w, 0);
  4630. }
  4631. void add_stride_h(int32_t stride_h) {
  4632. fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_H, stride_h, 0);
  4633. }
  4634. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4635. fbb_.AddElement<int8_t>(Conv3DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4636. }
  4637. void add_dilation_d_factor(int32_t dilation_d_factor) {
  4638. fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_D_FACTOR, dilation_d_factor, 1);
  4639. }
  4640. void add_dilation_w_factor(int32_t dilation_w_factor) {
  4641. fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
  4642. }
  4643. void add_dilation_h_factor(int32_t dilation_h_factor) {
  4644. fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
  4645. }
  4646. explicit Conv3DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4647. : fbb_(_fbb) {
  4648. start_ = fbb_.StartTable();
  4649. }
  4650. flatbuffers::Offset<Conv3DOptions> Finish() {
  4651. const auto end = fbb_.EndTable(start_);
  4652. auto o = flatbuffers::Offset<Conv3DOptions>(end);
  4653. return o;
  4654. }
  4655. };
  4656. inline flatbuffers::Offset<Conv3DOptions> CreateConv3DOptions(
  4657. flatbuffers::FlatBufferBuilder &_fbb,
  4658. tflite::Padding padding = tflite::Padding_SAME,
  4659. int32_t stride_d = 0,
  4660. int32_t stride_w = 0,
  4661. int32_t stride_h = 0,
  4662. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4663. int32_t dilation_d_factor = 1,
  4664. int32_t dilation_w_factor = 1,
  4665. int32_t dilation_h_factor = 1) {
  4666. Conv3DOptionsBuilder builder_(_fbb);
  4667. builder_.add_dilation_h_factor(dilation_h_factor);
  4668. builder_.add_dilation_w_factor(dilation_w_factor);
  4669. builder_.add_dilation_d_factor(dilation_d_factor);
  4670. builder_.add_stride_h(stride_h);
  4671. builder_.add_stride_w(stride_w);
  4672. builder_.add_stride_d(stride_d);
  4673. builder_.add_fused_activation_function(fused_activation_function);
  4674. builder_.add_padding(padding);
  4675. return builder_.Finish();
  4676. }
  4677. flatbuffers::Offset<Conv3DOptions> CreateConv3DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4678. struct Pool2DOptionsT : public flatbuffers::NativeTable {
  4679. typedef Pool2DOptions TableType;
  4680. tflite::Padding padding = tflite::Padding_SAME;
  4681. int32_t stride_w = 0;
  4682. int32_t stride_h = 0;
  4683. int32_t filter_width = 0;
  4684. int32_t filter_height = 0;
  4685. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  4686. };
  4687. struct Pool2DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4688. typedef Pool2DOptionsT NativeTableType;
  4689. typedef Pool2DOptionsBuilder Builder;
  4690. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4691. VT_PADDING = 4,
  4692. VT_STRIDE_W = 6,
  4693. VT_STRIDE_H = 8,
  4694. VT_FILTER_WIDTH = 10,
  4695. VT_FILTER_HEIGHT = 12,
  4696. VT_FUSED_ACTIVATION_FUNCTION = 14
  4697. };
  4698. tflite::Padding padding() const {
  4699. return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  4700. }
  4701. int32_t stride_w() const {
  4702. return GetField<int32_t>(VT_STRIDE_W, 0);
  4703. }
  4704. int32_t stride_h() const {
  4705. return GetField<int32_t>(VT_STRIDE_H, 0);
  4706. }
  4707. int32_t filter_width() const {
  4708. return GetField<int32_t>(VT_FILTER_WIDTH, 0);
  4709. }
  4710. int32_t filter_height() const {
  4711. return GetField<int32_t>(VT_FILTER_HEIGHT, 0);
  4712. }
  4713. tflite::ActivationFunctionType fused_activation_function() const {
  4714. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4715. }
  4716. bool Verify(flatbuffers::Verifier &verifier) const {
  4717. return VerifyTableStart(verifier) &&
  4718. VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
  4719. VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
  4720. VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
  4721. VerifyField<int32_t>(verifier, VT_FILTER_WIDTH, 4) &&
  4722. VerifyField<int32_t>(verifier, VT_FILTER_HEIGHT, 4) &&
  4723. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  4724. verifier.EndTable();
  4725. }
  4726. Pool2DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4727. void UnPackTo(Pool2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4728. static flatbuffers::Offset<Pool2DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4729. };
  4730. struct Pool2DOptionsBuilder {
  4731. typedef Pool2DOptions Table;
  4732. flatbuffers::FlatBufferBuilder &fbb_;
  4733. flatbuffers::uoffset_t start_;
  4734. void add_padding(tflite::Padding padding) {
  4735. fbb_.AddElement<int8_t>(Pool2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  4736. }
  4737. void add_stride_w(int32_t stride_w) {
  4738. fbb_.AddElement<int32_t>(Pool2DOptions::VT_STRIDE_W, stride_w, 0);
  4739. }
  4740. void add_stride_h(int32_t stride_h) {
  4741. fbb_.AddElement<int32_t>(Pool2DOptions::VT_STRIDE_H, stride_h, 0);
  4742. }
  4743. void add_filter_width(int32_t filter_width) {
  4744. fbb_.AddElement<int32_t>(Pool2DOptions::VT_FILTER_WIDTH, filter_width, 0);
  4745. }
  4746. void add_filter_height(int32_t filter_height) {
  4747. fbb_.AddElement<int32_t>(Pool2DOptions::VT_FILTER_HEIGHT, filter_height, 0);
  4748. }
  4749. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4750. fbb_.AddElement<int8_t>(Pool2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4751. }
  4752. explicit Pool2DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4753. : fbb_(_fbb) {
  4754. start_ = fbb_.StartTable();
  4755. }
  4756. flatbuffers::Offset<Pool2DOptions> Finish() {
  4757. const auto end = fbb_.EndTable(start_);
  4758. auto o = flatbuffers::Offset<Pool2DOptions>(end);
  4759. return o;
  4760. }
  4761. };
  4762. inline flatbuffers::Offset<Pool2DOptions> CreatePool2DOptions(
  4763. flatbuffers::FlatBufferBuilder &_fbb,
  4764. tflite::Padding padding = tflite::Padding_SAME,
  4765. int32_t stride_w = 0,
  4766. int32_t stride_h = 0,
  4767. int32_t filter_width = 0,
  4768. int32_t filter_height = 0,
  4769. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
  4770. Pool2DOptionsBuilder builder_(_fbb);
  4771. builder_.add_filter_height(filter_height);
  4772. builder_.add_filter_width(filter_width);
  4773. builder_.add_stride_h(stride_h);
  4774. builder_.add_stride_w(stride_w);
  4775. builder_.add_fused_activation_function(fused_activation_function);
  4776. builder_.add_padding(padding);
  4777. return builder_.Finish();
  4778. }
  4779. flatbuffers::Offset<Pool2DOptions> CreatePool2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4780. struct DepthwiseConv2DOptionsT : public flatbuffers::NativeTable {
  4781. typedef DepthwiseConv2DOptions TableType;
  4782. tflite::Padding padding = tflite::Padding_SAME;
  4783. int32_t stride_w = 0;
  4784. int32_t stride_h = 0;
  4785. int32_t depth_multiplier = 0;
  4786. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  4787. int32_t dilation_w_factor = 1;
  4788. int32_t dilation_h_factor = 1;
  4789. };
  4790. struct DepthwiseConv2DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4791. typedef DepthwiseConv2DOptionsT NativeTableType;
  4792. typedef DepthwiseConv2DOptionsBuilder Builder;
  4793. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4794. VT_PADDING = 4,
  4795. VT_STRIDE_W = 6,
  4796. VT_STRIDE_H = 8,
  4797. VT_DEPTH_MULTIPLIER = 10,
  4798. VT_FUSED_ACTIVATION_FUNCTION = 12,
  4799. VT_DILATION_W_FACTOR = 14,
  4800. VT_DILATION_H_FACTOR = 16
  4801. };
  4802. tflite::Padding padding() const {
  4803. return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  4804. }
  4805. int32_t stride_w() const {
  4806. return GetField<int32_t>(VT_STRIDE_W, 0);
  4807. }
  4808. int32_t stride_h() const {
  4809. return GetField<int32_t>(VT_STRIDE_H, 0);
  4810. }
  4811. int32_t depth_multiplier() const {
  4812. return GetField<int32_t>(VT_DEPTH_MULTIPLIER, 0);
  4813. }
  4814. tflite::ActivationFunctionType fused_activation_function() const {
  4815. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4816. }
  4817. int32_t dilation_w_factor() const {
  4818. return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
  4819. }
  4820. int32_t dilation_h_factor() const {
  4821. return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
  4822. }
  4823. bool Verify(flatbuffers::Verifier &verifier) const {
  4824. return VerifyTableStart(verifier) &&
  4825. VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
  4826. VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
  4827. VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
  4828. VerifyField<int32_t>(verifier, VT_DEPTH_MULTIPLIER, 4) &&
  4829. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  4830. VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR, 4) &&
  4831. VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR, 4) &&
  4832. verifier.EndTable();
  4833. }
  4834. DepthwiseConv2DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4835. void UnPackTo(DepthwiseConv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4836. static flatbuffers::Offset<DepthwiseConv2DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4837. };
  4838. struct DepthwiseConv2DOptionsBuilder {
  4839. typedef DepthwiseConv2DOptions Table;
  4840. flatbuffers::FlatBufferBuilder &fbb_;
  4841. flatbuffers::uoffset_t start_;
  4842. void add_padding(tflite::Padding padding) {
  4843. fbb_.AddElement<int8_t>(DepthwiseConv2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  4844. }
  4845. void add_stride_w(int32_t stride_w) {
  4846. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_STRIDE_W, stride_w, 0);
  4847. }
  4848. void add_stride_h(int32_t stride_h) {
  4849. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_STRIDE_H, stride_h, 0);
  4850. }
  4851. void add_depth_multiplier(int32_t depth_multiplier) {
  4852. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DEPTH_MULTIPLIER, depth_multiplier, 0);
  4853. }
  4854. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4855. fbb_.AddElement<int8_t>(DepthwiseConv2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4856. }
  4857. void add_dilation_w_factor(int32_t dilation_w_factor) {
  4858. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
  4859. }
  4860. void add_dilation_h_factor(int32_t dilation_h_factor) {
  4861. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
  4862. }
  4863. explicit DepthwiseConv2DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4864. : fbb_(_fbb) {
  4865. start_ = fbb_.StartTable();
  4866. }
  4867. flatbuffers::Offset<DepthwiseConv2DOptions> Finish() {
  4868. const auto end = fbb_.EndTable(start_);
  4869. auto o = flatbuffers::Offset<DepthwiseConv2DOptions>(end);
  4870. return o;
  4871. }
  4872. };
  4873. inline flatbuffers::Offset<DepthwiseConv2DOptions> CreateDepthwiseConv2DOptions(
  4874. flatbuffers::FlatBufferBuilder &_fbb,
  4875. tflite::Padding padding = tflite::Padding_SAME,
  4876. int32_t stride_w = 0,
  4877. int32_t stride_h = 0,
  4878. int32_t depth_multiplier = 0,
  4879. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4880. int32_t dilation_w_factor = 1,
  4881. int32_t dilation_h_factor = 1) {
  4882. DepthwiseConv2DOptionsBuilder builder_(_fbb);
  4883. builder_.add_dilation_h_factor(dilation_h_factor);
  4884. builder_.add_dilation_w_factor(dilation_w_factor);
  4885. builder_.add_depth_multiplier(depth_multiplier);
  4886. builder_.add_stride_h(stride_h);
  4887. builder_.add_stride_w(stride_w);
  4888. builder_.add_fused_activation_function(fused_activation_function);
  4889. builder_.add_padding(padding);
  4890. return builder_.Finish();
  4891. }
  4892. flatbuffers::Offset<DepthwiseConv2DOptions> CreateDepthwiseConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4893. struct ConcatEmbeddingsOptionsT : public flatbuffers::NativeTable {
  4894. typedef ConcatEmbeddingsOptions TableType;
  4895. int32_t num_channels = 0;
  4896. std::vector<int32_t> num_columns_per_channel{};
  4897. std::vector<int32_t> embedding_dim_per_channel{};
  4898. };
  4899. struct ConcatEmbeddingsOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4900. typedef ConcatEmbeddingsOptionsT NativeTableType;
  4901. typedef ConcatEmbeddingsOptionsBuilder Builder;
  4902. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4903. VT_NUM_CHANNELS = 4,
  4904. VT_NUM_COLUMNS_PER_CHANNEL = 6,
  4905. VT_EMBEDDING_DIM_PER_CHANNEL = 8
  4906. };
  4907. int32_t num_channels() const {
  4908. return GetField<int32_t>(VT_NUM_CHANNELS, 0);
  4909. }
  4910. const flatbuffers::Vector<int32_t> *num_columns_per_channel() const {
  4911. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_NUM_COLUMNS_PER_CHANNEL);
  4912. }
  4913. const flatbuffers::Vector<int32_t> *embedding_dim_per_channel() const {
  4914. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_EMBEDDING_DIM_PER_CHANNEL);
  4915. }
  4916. bool Verify(flatbuffers::Verifier &verifier) const {
  4917. return VerifyTableStart(verifier) &&
  4918. VerifyField<int32_t>(verifier, VT_NUM_CHANNELS, 4) &&
  4919. VerifyOffset(verifier, VT_NUM_COLUMNS_PER_CHANNEL) &&
  4920. verifier.VerifyVector(num_columns_per_channel()) &&
  4921. VerifyOffset(verifier, VT_EMBEDDING_DIM_PER_CHANNEL) &&
  4922. verifier.VerifyVector(embedding_dim_per_channel()) &&
  4923. verifier.EndTable();
  4924. }
  4925. ConcatEmbeddingsOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4926. void UnPackTo(ConcatEmbeddingsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4927. static flatbuffers::Offset<ConcatEmbeddingsOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4928. };
  4929. struct ConcatEmbeddingsOptionsBuilder {
  4930. typedef ConcatEmbeddingsOptions Table;
  4931. flatbuffers::FlatBufferBuilder &fbb_;
  4932. flatbuffers::uoffset_t start_;
  4933. void add_num_channels(int32_t num_channels) {
  4934. fbb_.AddElement<int32_t>(ConcatEmbeddingsOptions::VT_NUM_CHANNELS, num_channels, 0);
  4935. }
  4936. void add_num_columns_per_channel(flatbuffers::Offset<flatbuffers::Vector<int32_t>> num_columns_per_channel) {
  4937. fbb_.AddOffset(ConcatEmbeddingsOptions::VT_NUM_COLUMNS_PER_CHANNEL, num_columns_per_channel);
  4938. }
  4939. void add_embedding_dim_per_channel(flatbuffers::Offset<flatbuffers::Vector<int32_t>> embedding_dim_per_channel) {
  4940. fbb_.AddOffset(ConcatEmbeddingsOptions::VT_EMBEDDING_DIM_PER_CHANNEL, embedding_dim_per_channel);
  4941. }
  4942. explicit ConcatEmbeddingsOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4943. : fbb_(_fbb) {
  4944. start_ = fbb_.StartTable();
  4945. }
  4946. flatbuffers::Offset<ConcatEmbeddingsOptions> Finish() {
  4947. const auto end = fbb_.EndTable(start_);
  4948. auto o = flatbuffers::Offset<ConcatEmbeddingsOptions>(end);
  4949. return o;
  4950. }
  4951. };
  4952. inline flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptions(
  4953. flatbuffers::FlatBufferBuilder &_fbb,
  4954. int32_t num_channels = 0,
  4955. flatbuffers::Offset<flatbuffers::Vector<int32_t>> num_columns_per_channel = 0,
  4956. flatbuffers::Offset<flatbuffers::Vector<int32_t>> embedding_dim_per_channel = 0) {
  4957. ConcatEmbeddingsOptionsBuilder builder_(_fbb);
  4958. builder_.add_embedding_dim_per_channel(embedding_dim_per_channel);
  4959. builder_.add_num_columns_per_channel(num_columns_per_channel);
  4960. builder_.add_num_channels(num_channels);
  4961. return builder_.Finish();
  4962. }
  4963. inline flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptionsDirect(
  4964. flatbuffers::FlatBufferBuilder &_fbb,
  4965. int32_t num_channels = 0,
  4966. const std::vector<int32_t> *num_columns_per_channel = nullptr,
  4967. const std::vector<int32_t> *embedding_dim_per_channel = nullptr) {
  4968. auto num_columns_per_channel__ = num_columns_per_channel ? _fbb.CreateVector<int32_t>(*num_columns_per_channel) : 0;
  4969. auto embedding_dim_per_channel__ = embedding_dim_per_channel ? _fbb.CreateVector<int32_t>(*embedding_dim_per_channel) : 0;
  4970. return tflite::CreateConcatEmbeddingsOptions(
  4971. _fbb,
  4972. num_channels,
  4973. num_columns_per_channel__,
  4974. embedding_dim_per_channel__);
  4975. }
  4976. flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4977. struct LSHProjectionOptionsT : public flatbuffers::NativeTable {
  4978. typedef LSHProjectionOptions TableType;
  4979. tflite::LSHProjectionType type = tflite::LSHProjectionType_UNKNOWN;
  4980. };
  4981. struct LSHProjectionOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4982. typedef LSHProjectionOptionsT NativeTableType;
  4983. typedef LSHProjectionOptionsBuilder Builder;
  4984. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4985. VT_TYPE = 4
  4986. };
  4987. tflite::LSHProjectionType type() const {
  4988. return static_cast<tflite::LSHProjectionType>(GetField<int8_t>(VT_TYPE, 0));
  4989. }
  4990. bool Verify(flatbuffers::Verifier &verifier) const {
  4991. return VerifyTableStart(verifier) &&
  4992. VerifyField<int8_t>(verifier, VT_TYPE, 1) &&
  4993. verifier.EndTable();
  4994. }
  4995. LSHProjectionOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4996. void UnPackTo(LSHProjectionOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4997. static flatbuffers::Offset<LSHProjectionOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4998. };
  4999. struct LSHProjectionOptionsBuilder {
  5000. typedef LSHProjectionOptions Table;
  5001. flatbuffers::FlatBufferBuilder &fbb_;
  5002. flatbuffers::uoffset_t start_;
  5003. void add_type(tflite::LSHProjectionType type) {
  5004. fbb_.AddElement<int8_t>(LSHProjectionOptions::VT_TYPE, static_cast<int8_t>(type), 0);
  5005. }
  5006. explicit LSHProjectionOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5007. : fbb_(_fbb) {
  5008. start_ = fbb_.StartTable();
  5009. }
  5010. flatbuffers::Offset<LSHProjectionOptions> Finish() {
  5011. const auto end = fbb_.EndTable(start_);
  5012. auto o = flatbuffers::Offset<LSHProjectionOptions>(end);
  5013. return o;
  5014. }
  5015. };
  5016. inline flatbuffers::Offset<LSHProjectionOptions> CreateLSHProjectionOptions(
  5017. flatbuffers::FlatBufferBuilder &_fbb,
  5018. tflite::LSHProjectionType type = tflite::LSHProjectionType_UNKNOWN) {
  5019. LSHProjectionOptionsBuilder builder_(_fbb);
  5020. builder_.add_type(type);
  5021. return builder_.Finish();
  5022. }
  5023. flatbuffers::Offset<LSHProjectionOptions> CreateLSHProjectionOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5024. struct SVDFOptionsT : public flatbuffers::NativeTable {
  5025. typedef SVDFOptions TableType;
  5026. int32_t rank = 0;
  5027. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5028. bool asymmetric_quantize_inputs = false;
  5029. };
  5030. struct SVDFOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5031. typedef SVDFOptionsT NativeTableType;
  5032. typedef SVDFOptionsBuilder Builder;
  5033. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5034. VT_RANK = 4,
  5035. VT_FUSED_ACTIVATION_FUNCTION = 6,
  5036. VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
  5037. };
  5038. int32_t rank() const {
  5039. return GetField<int32_t>(VT_RANK, 0);
  5040. }
  5041. tflite::ActivationFunctionType fused_activation_function() const {
  5042. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5043. }
  5044. bool asymmetric_quantize_inputs() const {
  5045. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5046. }
  5047. bool Verify(flatbuffers::Verifier &verifier) const {
  5048. return VerifyTableStart(verifier) &&
  5049. VerifyField<int32_t>(verifier, VT_RANK, 4) &&
  5050. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5051. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  5052. verifier.EndTable();
  5053. }
  5054. SVDFOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5055. void UnPackTo(SVDFOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5056. static flatbuffers::Offset<SVDFOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5057. };
  5058. struct SVDFOptionsBuilder {
  5059. typedef SVDFOptions Table;
  5060. flatbuffers::FlatBufferBuilder &fbb_;
  5061. flatbuffers::uoffset_t start_;
  5062. void add_rank(int32_t rank) {
  5063. fbb_.AddElement<int32_t>(SVDFOptions::VT_RANK, rank, 0);
  5064. }
  5065. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5066. fbb_.AddElement<int8_t>(SVDFOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5067. }
  5068. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5069. fbb_.AddElement<uint8_t>(SVDFOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5070. }
  5071. explicit SVDFOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5072. : fbb_(_fbb) {
  5073. start_ = fbb_.StartTable();
  5074. }
  5075. flatbuffers::Offset<SVDFOptions> Finish() {
  5076. const auto end = fbb_.EndTable(start_);
  5077. auto o = flatbuffers::Offset<SVDFOptions>(end);
  5078. return o;
  5079. }
  5080. };
  5081. inline flatbuffers::Offset<SVDFOptions> CreateSVDFOptions(
  5082. flatbuffers::FlatBufferBuilder &_fbb,
  5083. int32_t rank = 0,
  5084. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5085. bool asymmetric_quantize_inputs = false) {
  5086. SVDFOptionsBuilder builder_(_fbb);
  5087. builder_.add_rank(rank);
  5088. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5089. builder_.add_fused_activation_function(fused_activation_function);
  5090. return builder_.Finish();
  5091. }
  5092. flatbuffers::Offset<SVDFOptions> CreateSVDFOptions(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5093. struct RNNOptionsT : public flatbuffers::NativeTable {
  5094. typedef RNNOptions TableType;
  5095. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5096. bool asymmetric_quantize_inputs = false;
  5097. };
  5098. struct RNNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5099. typedef RNNOptionsT NativeTableType;
  5100. typedef RNNOptionsBuilder Builder;
  5101. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5102. VT_FUSED_ACTIVATION_FUNCTION = 4,
  5103. VT_ASYMMETRIC_QUANTIZE_INPUTS = 6
  5104. };
  5105. tflite::ActivationFunctionType fused_activation_function() const {
  5106. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5107. }
  5108. bool asymmetric_quantize_inputs() const {
  5109. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5110. }
  5111. bool Verify(flatbuffers::Verifier &verifier) const {
  5112. return VerifyTableStart(verifier) &&
  5113. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5114. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  5115. verifier.EndTable();
  5116. }
  5117. RNNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5118. void UnPackTo(RNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5119. static flatbuffers::Offset<RNNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5120. };
  5121. struct RNNOptionsBuilder {
  5122. typedef RNNOptions Table;
  5123. flatbuffers::FlatBufferBuilder &fbb_;
  5124. flatbuffers::uoffset_t start_;
  5125. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5126. fbb_.AddElement<int8_t>(RNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5127. }
  5128. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5129. fbb_.AddElement<uint8_t>(RNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5130. }
  5131. explicit RNNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5132. : fbb_(_fbb) {
  5133. start_ = fbb_.StartTable();
  5134. }
  5135. flatbuffers::Offset<RNNOptions> Finish() {
  5136. const auto end = fbb_.EndTable(start_);
  5137. auto o = flatbuffers::Offset<RNNOptions>(end);
  5138. return o;
  5139. }
  5140. };
  5141. inline flatbuffers::Offset<RNNOptions> CreateRNNOptions(
  5142. flatbuffers::FlatBufferBuilder &_fbb,
  5143. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5144. bool asymmetric_quantize_inputs = false) {
  5145. RNNOptionsBuilder builder_(_fbb);
  5146. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5147. builder_.add_fused_activation_function(fused_activation_function);
  5148. return builder_.Finish();
  5149. }
  5150. flatbuffers::Offset<RNNOptions> CreateRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5151. struct SequenceRNNOptionsT : public flatbuffers::NativeTable {
  5152. typedef SequenceRNNOptions TableType;
  5153. bool time_major = false;
  5154. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5155. bool asymmetric_quantize_inputs = false;
  5156. };
  5157. struct SequenceRNNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5158. typedef SequenceRNNOptionsT NativeTableType;
  5159. typedef SequenceRNNOptionsBuilder Builder;
  5160. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5161. VT_TIME_MAJOR = 4,
  5162. VT_FUSED_ACTIVATION_FUNCTION = 6,
  5163. VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
  5164. };
  5165. bool time_major() const {
  5166. return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
  5167. }
  5168. tflite::ActivationFunctionType fused_activation_function() const {
  5169. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5170. }
  5171. bool asymmetric_quantize_inputs() const {
  5172. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5173. }
  5174. bool Verify(flatbuffers::Verifier &verifier) const {
  5175. return VerifyTableStart(verifier) &&
  5176. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
  5177. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5178. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  5179. verifier.EndTable();
  5180. }
  5181. SequenceRNNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5182. void UnPackTo(SequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5183. static flatbuffers::Offset<SequenceRNNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5184. };
  5185. struct SequenceRNNOptionsBuilder {
  5186. typedef SequenceRNNOptions Table;
  5187. flatbuffers::FlatBufferBuilder &fbb_;
  5188. flatbuffers::uoffset_t start_;
  5189. void add_time_major(bool time_major) {
  5190. fbb_.AddElement<uint8_t>(SequenceRNNOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
  5191. }
  5192. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5193. fbb_.AddElement<int8_t>(SequenceRNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5194. }
  5195. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5196. fbb_.AddElement<uint8_t>(SequenceRNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5197. }
  5198. explicit SequenceRNNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5199. : fbb_(_fbb) {
  5200. start_ = fbb_.StartTable();
  5201. }
  5202. flatbuffers::Offset<SequenceRNNOptions> Finish() {
  5203. const auto end = fbb_.EndTable(start_);
  5204. auto o = flatbuffers::Offset<SequenceRNNOptions>(end);
  5205. return o;
  5206. }
  5207. };
  5208. inline flatbuffers::Offset<SequenceRNNOptions> CreateSequenceRNNOptions(
  5209. flatbuffers::FlatBufferBuilder &_fbb,
  5210. bool time_major = false,
  5211. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5212. bool asymmetric_quantize_inputs = false) {
  5213. SequenceRNNOptionsBuilder builder_(_fbb);
  5214. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5215. builder_.add_fused_activation_function(fused_activation_function);
  5216. builder_.add_time_major(time_major);
  5217. return builder_.Finish();
  5218. }
  5219. flatbuffers::Offset<SequenceRNNOptions> CreateSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5220. struct BidirectionalSequenceRNNOptionsT : public flatbuffers::NativeTable {
  5221. typedef BidirectionalSequenceRNNOptions TableType;
  5222. bool time_major = false;
  5223. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5224. bool merge_outputs = false;
  5225. bool asymmetric_quantize_inputs = false;
  5226. };
  5227. struct BidirectionalSequenceRNNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5228. typedef BidirectionalSequenceRNNOptionsT NativeTableType;
  5229. typedef BidirectionalSequenceRNNOptionsBuilder Builder;
  5230. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5231. VT_TIME_MAJOR = 4,
  5232. VT_FUSED_ACTIVATION_FUNCTION = 6,
  5233. VT_MERGE_OUTPUTS = 8,
  5234. VT_ASYMMETRIC_QUANTIZE_INPUTS = 10
  5235. };
  5236. bool time_major() const {
  5237. return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
  5238. }
  5239. tflite::ActivationFunctionType fused_activation_function() const {
  5240. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5241. }
  5242. bool merge_outputs() const {
  5243. return GetField<uint8_t>(VT_MERGE_OUTPUTS, 0) != 0;
  5244. }
  5245. bool asymmetric_quantize_inputs() const {
  5246. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5247. }
  5248. bool Verify(flatbuffers::Verifier &verifier) const {
  5249. return VerifyTableStart(verifier) &&
  5250. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
  5251. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5252. VerifyField<uint8_t>(verifier, VT_MERGE_OUTPUTS, 1) &&
  5253. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  5254. verifier.EndTable();
  5255. }
  5256. BidirectionalSequenceRNNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5257. void UnPackTo(BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5258. static flatbuffers::Offset<BidirectionalSequenceRNNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5259. };
  5260. struct BidirectionalSequenceRNNOptionsBuilder {
  5261. typedef BidirectionalSequenceRNNOptions Table;
  5262. flatbuffers::FlatBufferBuilder &fbb_;
  5263. flatbuffers::uoffset_t start_;
  5264. void add_time_major(bool time_major) {
  5265. fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
  5266. }
  5267. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5268. fbb_.AddElement<int8_t>(BidirectionalSequenceRNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5269. }
  5270. void add_merge_outputs(bool merge_outputs) {
  5271. fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_MERGE_OUTPUTS, static_cast<uint8_t>(merge_outputs), 0);
  5272. }
  5273. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5274. fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5275. }
  5276. explicit BidirectionalSequenceRNNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5277. : fbb_(_fbb) {
  5278. start_ = fbb_.StartTable();
  5279. }
  5280. flatbuffers::Offset<BidirectionalSequenceRNNOptions> Finish() {
  5281. const auto end = fbb_.EndTable(start_);
  5282. auto o = flatbuffers::Offset<BidirectionalSequenceRNNOptions>(end);
  5283. return o;
  5284. }
  5285. };
  5286. inline flatbuffers::Offset<BidirectionalSequenceRNNOptions> CreateBidirectionalSequenceRNNOptions(
  5287. flatbuffers::FlatBufferBuilder &_fbb,
  5288. bool time_major = false,
  5289. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5290. bool merge_outputs = false,
  5291. bool asymmetric_quantize_inputs = false) {
  5292. BidirectionalSequenceRNNOptionsBuilder builder_(_fbb);
  5293. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5294. builder_.add_merge_outputs(merge_outputs);
  5295. builder_.add_fused_activation_function(fused_activation_function);
  5296. builder_.add_time_major(time_major);
  5297. return builder_.Finish();
  5298. }
  5299. flatbuffers::Offset<BidirectionalSequenceRNNOptions> CreateBidirectionalSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5300. struct FullyConnectedOptionsT : public flatbuffers::NativeTable {
  5301. typedef FullyConnectedOptions TableType;
  5302. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5303. tflite::FullyConnectedOptionsWeightsFormat weights_format = tflite::FullyConnectedOptionsWeightsFormat_DEFAULT;
  5304. bool keep_num_dims = false;
  5305. bool asymmetric_quantize_inputs = false;
  5306. };
  5307. struct FullyConnectedOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5308. typedef FullyConnectedOptionsT NativeTableType;
  5309. typedef FullyConnectedOptionsBuilder Builder;
  5310. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5311. VT_FUSED_ACTIVATION_FUNCTION = 4,
  5312. VT_WEIGHTS_FORMAT = 6,
  5313. VT_KEEP_NUM_DIMS = 8,
  5314. VT_ASYMMETRIC_QUANTIZE_INPUTS = 10
  5315. };
  5316. tflite::ActivationFunctionType fused_activation_function() const {
  5317. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5318. }
  5319. tflite::FullyConnectedOptionsWeightsFormat weights_format() const {
  5320. return static_cast<tflite::FullyConnectedOptionsWeightsFormat>(GetField<int8_t>(VT_WEIGHTS_FORMAT, 0));
  5321. }
  5322. bool keep_num_dims() const {
  5323. return GetField<uint8_t>(VT_KEEP_NUM_DIMS, 0) != 0;
  5324. }
  5325. bool asymmetric_quantize_inputs() const {
  5326. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5327. }
  5328. bool Verify(flatbuffers::Verifier &verifier) const {
  5329. return VerifyTableStart(verifier) &&
  5330. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5331. VerifyField<int8_t>(verifier, VT_WEIGHTS_FORMAT, 1) &&
  5332. VerifyField<uint8_t>(verifier, VT_KEEP_NUM_DIMS, 1) &&
  5333. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  5334. verifier.EndTable();
  5335. }
  5336. FullyConnectedOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5337. void UnPackTo(FullyConnectedOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5338. static flatbuffers::Offset<FullyConnectedOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5339. };
  5340. struct FullyConnectedOptionsBuilder {
  5341. typedef FullyConnectedOptions Table;
  5342. flatbuffers::FlatBufferBuilder &fbb_;
  5343. flatbuffers::uoffset_t start_;
  5344. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5345. fbb_.AddElement<int8_t>(FullyConnectedOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5346. }
  5347. void add_weights_format(tflite::FullyConnectedOptionsWeightsFormat weights_format) {
  5348. fbb_.AddElement<int8_t>(FullyConnectedOptions::VT_WEIGHTS_FORMAT, static_cast<int8_t>(weights_format), 0);
  5349. }
  5350. void add_keep_num_dims(bool keep_num_dims) {
  5351. fbb_.AddElement<uint8_t>(FullyConnectedOptions::VT_KEEP_NUM_DIMS, static_cast<uint8_t>(keep_num_dims), 0);
  5352. }
  5353. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5354. fbb_.AddElement<uint8_t>(FullyConnectedOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5355. }
  5356. explicit FullyConnectedOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5357. : fbb_(_fbb) {
  5358. start_ = fbb_.StartTable();
  5359. }
  5360. flatbuffers::Offset<FullyConnectedOptions> Finish() {
  5361. const auto end = fbb_.EndTable(start_);
  5362. auto o = flatbuffers::Offset<FullyConnectedOptions>(end);
  5363. return o;
  5364. }
  5365. };
  5366. inline flatbuffers::Offset<FullyConnectedOptions> CreateFullyConnectedOptions(
  5367. flatbuffers::FlatBufferBuilder &_fbb,
  5368. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5369. tflite::FullyConnectedOptionsWeightsFormat weights_format = tflite::FullyConnectedOptionsWeightsFormat_DEFAULT,
  5370. bool keep_num_dims = false,
  5371. bool asymmetric_quantize_inputs = false) {
  5372. FullyConnectedOptionsBuilder builder_(_fbb);
  5373. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5374. builder_.add_keep_num_dims(keep_num_dims);
  5375. builder_.add_weights_format(weights_format);
  5376. builder_.add_fused_activation_function(fused_activation_function);
  5377. return builder_.Finish();
  5378. }
  5379. flatbuffers::Offset<FullyConnectedOptions> CreateFullyConnectedOptions(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5380. struct SoftmaxOptionsT : public flatbuffers::NativeTable {
  5381. typedef SoftmaxOptions TableType;
  5382. float beta = 0.0f;
  5383. };
  5384. struct SoftmaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5385. typedef SoftmaxOptionsT NativeTableType;
  5386. typedef SoftmaxOptionsBuilder Builder;
  5387. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5388. VT_BETA = 4
  5389. };
  5390. float beta() const {
  5391. return GetField<float>(VT_BETA, 0.0f);
  5392. }
  5393. bool Verify(flatbuffers::Verifier &verifier) const {
  5394. return VerifyTableStart(verifier) &&
  5395. VerifyField<float>(verifier, VT_BETA, 4) &&
  5396. verifier.EndTable();
  5397. }
  5398. SoftmaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5399. void UnPackTo(SoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5400. static flatbuffers::Offset<SoftmaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5401. };
  5402. struct SoftmaxOptionsBuilder {
  5403. typedef SoftmaxOptions Table;
  5404. flatbuffers::FlatBufferBuilder &fbb_;
  5405. flatbuffers::uoffset_t start_;
  5406. void add_beta(float beta) {
  5407. fbb_.AddElement<float>(SoftmaxOptions::VT_BETA, beta, 0.0f);
  5408. }
  5409. explicit SoftmaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5410. : fbb_(_fbb) {
  5411. start_ = fbb_.StartTable();
  5412. }
  5413. flatbuffers::Offset<SoftmaxOptions> Finish() {
  5414. const auto end = fbb_.EndTable(start_);
  5415. auto o = flatbuffers::Offset<SoftmaxOptions>(end);
  5416. return o;
  5417. }
  5418. };
  5419. inline flatbuffers::Offset<SoftmaxOptions> CreateSoftmaxOptions(
  5420. flatbuffers::FlatBufferBuilder &_fbb,
  5421. float beta = 0.0f) {
  5422. SoftmaxOptionsBuilder builder_(_fbb);
  5423. builder_.add_beta(beta);
  5424. return builder_.Finish();
  5425. }
  5426. flatbuffers::Offset<SoftmaxOptions> CreateSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5427. struct ConcatenationOptionsT : public flatbuffers::NativeTable {
  5428. typedef ConcatenationOptions TableType;
  5429. int32_t axis = 0;
  5430. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5431. };
  5432. struct ConcatenationOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5433. typedef ConcatenationOptionsT NativeTableType;
  5434. typedef ConcatenationOptionsBuilder Builder;
  5435. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5436. VT_AXIS = 4,
  5437. VT_FUSED_ACTIVATION_FUNCTION = 6
  5438. };
  5439. int32_t axis() const {
  5440. return GetField<int32_t>(VT_AXIS, 0);
  5441. }
  5442. tflite::ActivationFunctionType fused_activation_function() const {
  5443. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5444. }
  5445. bool Verify(flatbuffers::Verifier &verifier) const {
  5446. return VerifyTableStart(verifier) &&
  5447. VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
  5448. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5449. verifier.EndTable();
  5450. }
  5451. ConcatenationOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5452. void UnPackTo(ConcatenationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5453. static flatbuffers::Offset<ConcatenationOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5454. };
  5455. struct ConcatenationOptionsBuilder {
  5456. typedef ConcatenationOptions Table;
  5457. flatbuffers::FlatBufferBuilder &fbb_;
  5458. flatbuffers::uoffset_t start_;
  5459. void add_axis(int32_t axis) {
  5460. fbb_.AddElement<int32_t>(ConcatenationOptions::VT_AXIS, axis, 0);
  5461. }
  5462. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5463. fbb_.AddElement<int8_t>(ConcatenationOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5464. }
  5465. explicit ConcatenationOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5466. : fbb_(_fbb) {
  5467. start_ = fbb_.StartTable();
  5468. }
  5469. flatbuffers::Offset<ConcatenationOptions> Finish() {
  5470. const auto end = fbb_.EndTable(start_);
  5471. auto o = flatbuffers::Offset<ConcatenationOptions>(end);
  5472. return o;
  5473. }
  5474. };
  5475. inline flatbuffers::Offset<ConcatenationOptions> CreateConcatenationOptions(
  5476. flatbuffers::FlatBufferBuilder &_fbb,
  5477. int32_t axis = 0,
  5478. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
  5479. ConcatenationOptionsBuilder builder_(_fbb);
  5480. builder_.add_axis(axis);
  5481. builder_.add_fused_activation_function(fused_activation_function);
  5482. return builder_.Finish();
  5483. }
  5484. flatbuffers::Offset<ConcatenationOptions> CreateConcatenationOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5485. struct AddOptionsT : public flatbuffers::NativeTable {
  5486. typedef AddOptions TableType;
  5487. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5488. bool pot_scale_int16 = true;
  5489. };
  5490. struct AddOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5491. typedef AddOptionsT NativeTableType;
  5492. typedef AddOptionsBuilder Builder;
  5493. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5494. VT_FUSED_ACTIVATION_FUNCTION = 4,
  5495. VT_POT_SCALE_INT16 = 6
  5496. };
  5497. tflite::ActivationFunctionType fused_activation_function() const {
  5498. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5499. }
  5500. bool pot_scale_int16() const {
  5501. return GetField<uint8_t>(VT_POT_SCALE_INT16, 1) != 0;
  5502. }
  5503. bool Verify(flatbuffers::Verifier &verifier) const {
  5504. return VerifyTableStart(verifier) &&
  5505. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5506. VerifyField<uint8_t>(verifier, VT_POT_SCALE_INT16, 1) &&
  5507. verifier.EndTable();
  5508. }
  5509. AddOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5510. void UnPackTo(AddOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5511. static flatbuffers::Offset<AddOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5512. };
  5513. struct AddOptionsBuilder {
  5514. typedef AddOptions Table;
  5515. flatbuffers::FlatBufferBuilder &fbb_;
  5516. flatbuffers::uoffset_t start_;
  5517. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5518. fbb_.AddElement<int8_t>(AddOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5519. }
  5520. void add_pot_scale_int16(bool pot_scale_int16) {
  5521. fbb_.AddElement<uint8_t>(AddOptions::VT_POT_SCALE_INT16, static_cast<uint8_t>(pot_scale_int16), 1);
  5522. }
  5523. explicit AddOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5524. : fbb_(_fbb) {
  5525. start_ = fbb_.StartTable();
  5526. }
  5527. flatbuffers::Offset<AddOptions> Finish() {
  5528. const auto end = fbb_.EndTable(start_);
  5529. auto o = flatbuffers::Offset<AddOptions>(end);
  5530. return o;
  5531. }
  5532. };
  5533. inline flatbuffers::Offset<AddOptions> CreateAddOptions(
  5534. flatbuffers::FlatBufferBuilder &_fbb,
  5535. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5536. bool pot_scale_int16 = true) {
  5537. AddOptionsBuilder builder_(_fbb);
  5538. builder_.add_pot_scale_int16(pot_scale_int16);
  5539. builder_.add_fused_activation_function(fused_activation_function);
  5540. return builder_.Finish();
  5541. }
  5542. flatbuffers::Offset<AddOptions> CreateAddOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5543. struct MulOptionsT : public flatbuffers::NativeTable {
  5544. typedef MulOptions TableType;
  5545. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5546. };
  5547. struct MulOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5548. typedef MulOptionsT NativeTableType;
  5549. typedef MulOptionsBuilder Builder;
  5550. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5551. VT_FUSED_ACTIVATION_FUNCTION = 4
  5552. };
  5553. tflite::ActivationFunctionType fused_activation_function() const {
  5554. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5555. }
  5556. bool Verify(flatbuffers::Verifier &verifier) const {
  5557. return VerifyTableStart(verifier) &&
  5558. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5559. verifier.EndTable();
  5560. }
  5561. MulOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5562. void UnPackTo(MulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5563. static flatbuffers::Offset<MulOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5564. };
  5565. struct MulOptionsBuilder {
  5566. typedef MulOptions Table;
  5567. flatbuffers::FlatBufferBuilder &fbb_;
  5568. flatbuffers::uoffset_t start_;
  5569. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5570. fbb_.AddElement<int8_t>(MulOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5571. }
  5572. explicit MulOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5573. : fbb_(_fbb) {
  5574. start_ = fbb_.StartTable();
  5575. }
  5576. flatbuffers::Offset<MulOptions> Finish() {
  5577. const auto end = fbb_.EndTable(start_);
  5578. auto o = flatbuffers::Offset<MulOptions>(end);
  5579. return o;
  5580. }
  5581. };
  5582. inline flatbuffers::Offset<MulOptions> CreateMulOptions(
  5583. flatbuffers::FlatBufferBuilder &_fbb,
  5584. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
  5585. MulOptionsBuilder builder_(_fbb);
  5586. builder_.add_fused_activation_function(fused_activation_function);
  5587. return builder_.Finish();
  5588. }
  5589. flatbuffers::Offset<MulOptions> CreateMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5590. struct L2NormOptionsT : public flatbuffers::NativeTable {
  5591. typedef L2NormOptions TableType;
  5592. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5593. };
  5594. struct L2NormOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5595. typedef L2NormOptionsT NativeTableType;
  5596. typedef L2NormOptionsBuilder Builder;
  5597. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5598. VT_FUSED_ACTIVATION_FUNCTION = 4
  5599. };
  5600. tflite::ActivationFunctionType fused_activation_function() const {
  5601. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5602. }
  5603. bool Verify(flatbuffers::Verifier &verifier) const {
  5604. return VerifyTableStart(verifier) &&
  5605. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5606. verifier.EndTable();
  5607. }
  5608. L2NormOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5609. void UnPackTo(L2NormOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5610. static flatbuffers::Offset<L2NormOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5611. };
  5612. struct L2NormOptionsBuilder {
  5613. typedef L2NormOptions Table;
  5614. flatbuffers::FlatBufferBuilder &fbb_;
  5615. flatbuffers::uoffset_t start_;
  5616. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5617. fbb_.AddElement<int8_t>(L2NormOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5618. }
  5619. explicit L2NormOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5620. : fbb_(_fbb) {
  5621. start_ = fbb_.StartTable();
  5622. }
  5623. flatbuffers::Offset<L2NormOptions> Finish() {
  5624. const auto end = fbb_.EndTable(start_);
  5625. auto o = flatbuffers::Offset<L2NormOptions>(end);
  5626. return o;
  5627. }
  5628. };
  5629. inline flatbuffers::Offset<L2NormOptions> CreateL2NormOptions(
  5630. flatbuffers::FlatBufferBuilder &_fbb,
  5631. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
  5632. L2NormOptionsBuilder builder_(_fbb);
  5633. builder_.add_fused_activation_function(fused_activation_function);
  5634. return builder_.Finish();
  5635. }
  5636. flatbuffers::Offset<L2NormOptions> CreateL2NormOptions(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5637. struct LocalResponseNormalizationOptionsT : public flatbuffers::NativeTable {
  5638. typedef LocalResponseNormalizationOptions TableType;
  5639. int32_t radius = 0;
  5640. float bias = 0.0f;
  5641. float alpha = 0.0f;
  5642. float beta = 0.0f;
  5643. };
  5644. struct LocalResponseNormalizationOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5645. typedef LocalResponseNormalizationOptionsT NativeTableType;
  5646. typedef LocalResponseNormalizationOptionsBuilder Builder;
  5647. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5648. VT_RADIUS = 4,
  5649. VT_BIAS = 6,
  5650. VT_ALPHA = 8,
  5651. VT_BETA = 10
  5652. };
  5653. int32_t radius() const {
  5654. return GetField<int32_t>(VT_RADIUS, 0);
  5655. }
  5656. float bias() const {
  5657. return GetField<float>(VT_BIAS, 0.0f);
  5658. }
  5659. float alpha() const {
  5660. return GetField<float>(VT_ALPHA, 0.0f);
  5661. }
  5662. float beta() const {
  5663. return GetField<float>(VT_BETA, 0.0f);
  5664. }
  5665. bool Verify(flatbuffers::Verifier &verifier) const {
  5666. return VerifyTableStart(verifier) &&
  5667. VerifyField<int32_t>(verifier, VT_RADIUS, 4) &&
  5668. VerifyField<float>(verifier, VT_BIAS, 4) &&
  5669. VerifyField<float>(verifier, VT_ALPHA, 4) &&
  5670. VerifyField<float>(verifier, VT_BETA, 4) &&
  5671. verifier.EndTable();
  5672. }
  5673. LocalResponseNormalizationOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5674. void UnPackTo(LocalResponseNormalizationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5675. static flatbuffers::Offset<LocalResponseNormalizationOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5676. };
  5677. struct LocalResponseNormalizationOptionsBuilder {
  5678. typedef LocalResponseNormalizationOptions Table;
  5679. flatbuffers::FlatBufferBuilder &fbb_;
  5680. flatbuffers::uoffset_t start_;
  5681. void add_radius(int32_t radius) {
  5682. fbb_.AddElement<int32_t>(LocalResponseNormalizationOptions::VT_RADIUS, radius, 0);
  5683. }
  5684. void add_bias(float bias) {
  5685. fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_BIAS, bias, 0.0f);
  5686. }
  5687. void add_alpha(float alpha) {
  5688. fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_ALPHA, alpha, 0.0f);
  5689. }
  5690. void add_beta(float beta) {
  5691. fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_BETA, beta, 0.0f);
  5692. }
  5693. explicit LocalResponseNormalizationOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5694. : fbb_(_fbb) {
  5695. start_ = fbb_.StartTable();
  5696. }
  5697. flatbuffers::Offset<LocalResponseNormalizationOptions> Finish() {
  5698. const auto end = fbb_.EndTable(start_);
  5699. auto o = flatbuffers::Offset<LocalResponseNormalizationOptions>(end);
  5700. return o;
  5701. }
  5702. };
  5703. inline flatbuffers::Offset<LocalResponseNormalizationOptions> CreateLocalResponseNormalizationOptions(
  5704. flatbuffers::FlatBufferBuilder &_fbb,
  5705. int32_t radius = 0,
  5706. float bias = 0.0f,
  5707. float alpha = 0.0f,
  5708. float beta = 0.0f) {
  5709. LocalResponseNormalizationOptionsBuilder builder_(_fbb);
  5710. builder_.add_beta(beta);
  5711. builder_.add_alpha(alpha);
  5712. builder_.add_bias(bias);
  5713. builder_.add_radius(radius);
  5714. return builder_.Finish();
  5715. }
  5716. flatbuffers::Offset<LocalResponseNormalizationOptions> CreateLocalResponseNormalizationOptions(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5717. struct LSTMOptionsT : public flatbuffers::NativeTable {
  5718. typedef LSTMOptions TableType;
  5719. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5720. float cell_clip = 0.0f;
  5721. float proj_clip = 0.0f;
  5722. tflite::LSTMKernelType kernel_type = tflite::LSTMKernelType_FULL;
  5723. bool asymmetric_quantize_inputs = false;
  5724. };
  5725. struct LSTMOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5726. typedef LSTMOptionsT NativeTableType;
  5727. typedef LSTMOptionsBuilder Builder;
  5728. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5729. VT_FUSED_ACTIVATION_FUNCTION = 4,
  5730. VT_CELL_CLIP = 6,
  5731. VT_PROJ_CLIP = 8,
  5732. VT_KERNEL_TYPE = 10,
  5733. VT_ASYMMETRIC_QUANTIZE_INPUTS = 12
  5734. };
  5735. tflite::ActivationFunctionType fused_activation_function() const {
  5736. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5737. }
  5738. float cell_clip() const {
  5739. return GetField<float>(VT_CELL_CLIP, 0.0f);
  5740. }
  5741. float proj_clip() const {
  5742. return GetField<float>(VT_PROJ_CLIP, 0.0f);
  5743. }
  5744. tflite::LSTMKernelType kernel_type() const {
  5745. return static_cast<tflite::LSTMKernelType>(GetField<int8_t>(VT_KERNEL_TYPE, 0));
  5746. }
  5747. bool asymmetric_quantize_inputs() const {
  5748. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5749. }
  5750. bool Verify(flatbuffers::Verifier &verifier) const {
  5751. return VerifyTableStart(verifier) &&
  5752. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5753. VerifyField<float>(verifier, VT_CELL_CLIP, 4) &&
  5754. VerifyField<float>(verifier, VT_PROJ_CLIP, 4) &&
  5755. VerifyField<int8_t>(verifier, VT_KERNEL_TYPE, 1) &&
  5756. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  5757. verifier.EndTable();
  5758. }
  5759. LSTMOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5760. void UnPackTo(LSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5761. static flatbuffers::Offset<LSTMOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5762. };
  5763. struct LSTMOptionsBuilder {
  5764. typedef LSTMOptions Table;
  5765. flatbuffers::FlatBufferBuilder &fbb_;
  5766. flatbuffers::uoffset_t start_;
  5767. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5768. fbb_.AddElement<int8_t>(LSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5769. }
  5770. void add_cell_clip(float cell_clip) {
  5771. fbb_.AddElement<float>(LSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
  5772. }
  5773. void add_proj_clip(float proj_clip) {
  5774. fbb_.AddElement<float>(LSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
  5775. }
  5776. void add_kernel_type(tflite::LSTMKernelType kernel_type) {
  5777. fbb_.AddElement<int8_t>(LSTMOptions::VT_KERNEL_TYPE, static_cast<int8_t>(kernel_type), 0);
  5778. }
  5779. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5780. fbb_.AddElement<uint8_t>(LSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5781. }
  5782. explicit LSTMOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5783. : fbb_(_fbb) {
  5784. start_ = fbb_.StartTable();
  5785. }
  5786. flatbuffers::Offset<LSTMOptions> Finish() {
  5787. const auto end = fbb_.EndTable(start_);
  5788. auto o = flatbuffers::Offset<LSTMOptions>(end);
  5789. return o;
  5790. }
  5791. };
  5792. inline flatbuffers::Offset<LSTMOptions> CreateLSTMOptions(
  5793. flatbuffers::FlatBufferBuilder &_fbb,
  5794. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5795. float cell_clip = 0.0f,
  5796. float proj_clip = 0.0f,
  5797. tflite::LSTMKernelType kernel_type = tflite::LSTMKernelType_FULL,
  5798. bool asymmetric_quantize_inputs = false) {
  5799. LSTMOptionsBuilder builder_(_fbb);
  5800. builder_.add_proj_clip(proj_clip);
  5801. builder_.add_cell_clip(cell_clip);
  5802. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5803. builder_.add_kernel_type(kernel_type);
  5804. builder_.add_fused_activation_function(fused_activation_function);
  5805. return builder_.Finish();
  5806. }
  5807. flatbuffers::Offset<LSTMOptions> CreateLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5808. struct UnidirectionalSequenceLSTMOptionsT : public flatbuffers::NativeTable {
  5809. typedef UnidirectionalSequenceLSTMOptions TableType;
  5810. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5811. float cell_clip = 0.0f;
  5812. float proj_clip = 0.0f;
  5813. bool time_major = false;
  5814. bool asymmetric_quantize_inputs = false;
  5815. };
  5816. struct UnidirectionalSequenceLSTMOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5817. typedef UnidirectionalSequenceLSTMOptionsT NativeTableType;
  5818. typedef UnidirectionalSequenceLSTMOptionsBuilder Builder;
  5819. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5820. VT_FUSED_ACTIVATION_FUNCTION = 4,
  5821. VT_CELL_CLIP = 6,
  5822. VT_PROJ_CLIP = 8,
  5823. VT_TIME_MAJOR = 10,
  5824. VT_ASYMMETRIC_QUANTIZE_INPUTS = 12
  5825. };
  5826. tflite::ActivationFunctionType fused_activation_function() const {
  5827. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5828. }
  5829. float cell_clip() const {
  5830. return GetField<float>(VT_CELL_CLIP, 0.0f);
  5831. }
  5832. float proj_clip() const {
  5833. return GetField<float>(VT_PROJ_CLIP, 0.0f);
  5834. }
  5835. bool time_major() const {
  5836. return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
  5837. }
  5838. bool asymmetric_quantize_inputs() const {
  5839. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5840. }
  5841. bool Verify(flatbuffers::Verifier &verifier) const {
  5842. return VerifyTableStart(verifier) &&
  5843. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5844. VerifyField<float>(verifier, VT_CELL_CLIP, 4) &&
  5845. VerifyField<float>(verifier, VT_PROJ_CLIP, 4) &&
  5846. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
  5847. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  5848. verifier.EndTable();
  5849. }
  5850. UnidirectionalSequenceLSTMOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5851. void UnPackTo(UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5852. static flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5853. };
  5854. struct UnidirectionalSequenceLSTMOptionsBuilder {
  5855. typedef UnidirectionalSequenceLSTMOptions Table;
  5856. flatbuffers::FlatBufferBuilder &fbb_;
  5857. flatbuffers::uoffset_t start_;
  5858. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5859. fbb_.AddElement<int8_t>(UnidirectionalSequenceLSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5860. }
  5861. void add_cell_clip(float cell_clip) {
  5862. fbb_.AddElement<float>(UnidirectionalSequenceLSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
  5863. }
  5864. void add_proj_clip(float proj_clip) {
  5865. fbb_.AddElement<float>(UnidirectionalSequenceLSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
  5866. }
  5867. void add_time_major(bool time_major) {
  5868. fbb_.AddElement<uint8_t>(UnidirectionalSequenceLSTMOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
  5869. }
  5870. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5871. fbb_.AddElement<uint8_t>(UnidirectionalSequenceLSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5872. }
  5873. explicit UnidirectionalSequenceLSTMOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5874. : fbb_(_fbb) {
  5875. start_ = fbb_.StartTable();
  5876. }
  5877. flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> Finish() {
  5878. const auto end = fbb_.EndTable(start_);
  5879. auto o = flatbuffers::Offset<UnidirectionalSequenceLSTMOptions>(end);
  5880. return o;
  5881. }
  5882. };
  5883. inline flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> CreateUnidirectionalSequenceLSTMOptions(
  5884. flatbuffers::FlatBufferBuilder &_fbb,
  5885. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5886. float cell_clip = 0.0f,
  5887. float proj_clip = 0.0f,
  5888. bool time_major = false,
  5889. bool asymmetric_quantize_inputs = false) {
  5890. UnidirectionalSequenceLSTMOptionsBuilder builder_(_fbb);
  5891. builder_.add_proj_clip(proj_clip);
  5892. builder_.add_cell_clip(cell_clip);
  5893. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5894. builder_.add_time_major(time_major);
  5895. builder_.add_fused_activation_function(fused_activation_function);
  5896. return builder_.Finish();
  5897. }
  5898. flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> CreateUnidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5899. struct BidirectionalSequenceLSTMOptionsT : public flatbuffers::NativeTable {
  5900. typedef BidirectionalSequenceLSTMOptions TableType;
  5901. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  5902. float cell_clip = 0.0f;
  5903. float proj_clip = 0.0f;
  5904. bool merge_outputs = false;
  5905. bool time_major = true;
  5906. bool asymmetric_quantize_inputs = false;
  5907. };
  5908. struct BidirectionalSequenceLSTMOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5909. typedef BidirectionalSequenceLSTMOptionsT NativeTableType;
  5910. typedef BidirectionalSequenceLSTMOptionsBuilder Builder;
  5911. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5912. VT_FUSED_ACTIVATION_FUNCTION = 4,
  5913. VT_CELL_CLIP = 6,
  5914. VT_PROJ_CLIP = 8,
  5915. VT_MERGE_OUTPUTS = 10,
  5916. VT_TIME_MAJOR = 12,
  5917. VT_ASYMMETRIC_QUANTIZE_INPUTS = 14
  5918. };
  5919. tflite::ActivationFunctionType fused_activation_function() const {
  5920. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5921. }
  5922. float cell_clip() const {
  5923. return GetField<float>(VT_CELL_CLIP, 0.0f);
  5924. }
  5925. float proj_clip() const {
  5926. return GetField<float>(VT_PROJ_CLIP, 0.0f);
  5927. }
  5928. bool merge_outputs() const {
  5929. return GetField<uint8_t>(VT_MERGE_OUTPUTS, 0) != 0;
  5930. }
  5931. bool time_major() const {
  5932. return GetField<uint8_t>(VT_TIME_MAJOR, 1) != 0;
  5933. }
  5934. bool asymmetric_quantize_inputs() const {
  5935. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5936. }
  5937. bool Verify(flatbuffers::Verifier &verifier) const {
  5938. return VerifyTableStart(verifier) &&
  5939. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  5940. VerifyField<float>(verifier, VT_CELL_CLIP, 4) &&
  5941. VerifyField<float>(verifier, VT_PROJ_CLIP, 4) &&
  5942. VerifyField<uint8_t>(verifier, VT_MERGE_OUTPUTS, 1) &&
  5943. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR, 1) &&
  5944. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  5945. verifier.EndTable();
  5946. }
  5947. BidirectionalSequenceLSTMOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5948. void UnPackTo(BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5949. static flatbuffers::Offset<BidirectionalSequenceLSTMOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5950. };
  5951. struct BidirectionalSequenceLSTMOptionsBuilder {
  5952. typedef BidirectionalSequenceLSTMOptions Table;
  5953. flatbuffers::FlatBufferBuilder &fbb_;
  5954. flatbuffers::uoffset_t start_;
  5955. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5956. fbb_.AddElement<int8_t>(BidirectionalSequenceLSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5957. }
  5958. void add_cell_clip(float cell_clip) {
  5959. fbb_.AddElement<float>(BidirectionalSequenceLSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
  5960. }
  5961. void add_proj_clip(float proj_clip) {
  5962. fbb_.AddElement<float>(BidirectionalSequenceLSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
  5963. }
  5964. void add_merge_outputs(bool merge_outputs) {
  5965. fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_MERGE_OUTPUTS, static_cast<uint8_t>(merge_outputs), 0);
  5966. }
  5967. void add_time_major(bool time_major) {
  5968. fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 1);
  5969. }
  5970. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5971. fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5972. }
  5973. explicit BidirectionalSequenceLSTMOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5974. : fbb_(_fbb) {
  5975. start_ = fbb_.StartTable();
  5976. }
  5977. flatbuffers::Offset<BidirectionalSequenceLSTMOptions> Finish() {
  5978. const auto end = fbb_.EndTable(start_);
  5979. auto o = flatbuffers::Offset<BidirectionalSequenceLSTMOptions>(end);
  5980. return o;
  5981. }
  5982. };
  5983. inline flatbuffers::Offset<BidirectionalSequenceLSTMOptions> CreateBidirectionalSequenceLSTMOptions(
  5984. flatbuffers::FlatBufferBuilder &_fbb,
  5985. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5986. float cell_clip = 0.0f,
  5987. float proj_clip = 0.0f,
  5988. bool merge_outputs = false,
  5989. bool time_major = true,
  5990. bool asymmetric_quantize_inputs = false) {
  5991. BidirectionalSequenceLSTMOptionsBuilder builder_(_fbb);
  5992. builder_.add_proj_clip(proj_clip);
  5993. builder_.add_cell_clip(cell_clip);
  5994. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5995. builder_.add_time_major(time_major);
  5996. builder_.add_merge_outputs(merge_outputs);
  5997. builder_.add_fused_activation_function(fused_activation_function);
  5998. return builder_.Finish();
  5999. }
  6000. flatbuffers::Offset<BidirectionalSequenceLSTMOptions> CreateBidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6001. struct ResizeBilinearOptionsT : public flatbuffers::NativeTable {
  6002. typedef ResizeBilinearOptions TableType;
  6003. bool align_corners = false;
  6004. bool half_pixel_centers = false;
  6005. };
  6006. struct ResizeBilinearOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6007. typedef ResizeBilinearOptionsT NativeTableType;
  6008. typedef ResizeBilinearOptionsBuilder Builder;
  6009. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6010. VT_ALIGN_CORNERS = 8,
  6011. VT_HALF_PIXEL_CENTERS = 10
  6012. };
  6013. bool align_corners() const {
  6014. return GetField<uint8_t>(VT_ALIGN_CORNERS, 0) != 0;
  6015. }
  6016. bool half_pixel_centers() const {
  6017. return GetField<uint8_t>(VT_HALF_PIXEL_CENTERS, 0) != 0;
  6018. }
  6019. bool Verify(flatbuffers::Verifier &verifier) const {
  6020. return VerifyTableStart(verifier) &&
  6021. VerifyField<uint8_t>(verifier, VT_ALIGN_CORNERS, 1) &&
  6022. VerifyField<uint8_t>(verifier, VT_HALF_PIXEL_CENTERS, 1) &&
  6023. verifier.EndTable();
  6024. }
  6025. ResizeBilinearOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6026. void UnPackTo(ResizeBilinearOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6027. static flatbuffers::Offset<ResizeBilinearOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6028. };
  6029. struct ResizeBilinearOptionsBuilder {
  6030. typedef ResizeBilinearOptions Table;
  6031. flatbuffers::FlatBufferBuilder &fbb_;
  6032. flatbuffers::uoffset_t start_;
  6033. void add_align_corners(bool align_corners) {
  6034. fbb_.AddElement<uint8_t>(ResizeBilinearOptions::VT_ALIGN_CORNERS, static_cast<uint8_t>(align_corners), 0);
  6035. }
  6036. void add_half_pixel_centers(bool half_pixel_centers) {
  6037. fbb_.AddElement<uint8_t>(ResizeBilinearOptions::VT_HALF_PIXEL_CENTERS, static_cast<uint8_t>(half_pixel_centers), 0);
  6038. }
  6039. explicit ResizeBilinearOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6040. : fbb_(_fbb) {
  6041. start_ = fbb_.StartTable();
  6042. }
  6043. flatbuffers::Offset<ResizeBilinearOptions> Finish() {
  6044. const auto end = fbb_.EndTable(start_);
  6045. auto o = flatbuffers::Offset<ResizeBilinearOptions>(end);
  6046. return o;
  6047. }
  6048. };
  6049. inline flatbuffers::Offset<ResizeBilinearOptions> CreateResizeBilinearOptions(
  6050. flatbuffers::FlatBufferBuilder &_fbb,
  6051. bool align_corners = false,
  6052. bool half_pixel_centers = false) {
  6053. ResizeBilinearOptionsBuilder builder_(_fbb);
  6054. builder_.add_half_pixel_centers(half_pixel_centers);
  6055. builder_.add_align_corners(align_corners);
  6056. return builder_.Finish();
  6057. }
  6058. flatbuffers::Offset<ResizeBilinearOptions> CreateResizeBilinearOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6059. struct ResizeNearestNeighborOptionsT : public flatbuffers::NativeTable {
  6060. typedef ResizeNearestNeighborOptions TableType;
  6061. bool align_corners = false;
  6062. bool half_pixel_centers = false;
  6063. };
  6064. struct ResizeNearestNeighborOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6065. typedef ResizeNearestNeighborOptionsT NativeTableType;
  6066. typedef ResizeNearestNeighborOptionsBuilder Builder;
  6067. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6068. VT_ALIGN_CORNERS = 4,
  6069. VT_HALF_PIXEL_CENTERS = 6
  6070. };
  6071. bool align_corners() const {
  6072. return GetField<uint8_t>(VT_ALIGN_CORNERS, 0) != 0;
  6073. }
  6074. bool half_pixel_centers() const {
  6075. return GetField<uint8_t>(VT_HALF_PIXEL_CENTERS, 0) != 0;
  6076. }
  6077. bool Verify(flatbuffers::Verifier &verifier) const {
  6078. return VerifyTableStart(verifier) &&
  6079. VerifyField<uint8_t>(verifier, VT_ALIGN_CORNERS, 1) &&
  6080. VerifyField<uint8_t>(verifier, VT_HALF_PIXEL_CENTERS, 1) &&
  6081. verifier.EndTable();
  6082. }
  6083. ResizeNearestNeighborOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6084. void UnPackTo(ResizeNearestNeighborOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6085. static flatbuffers::Offset<ResizeNearestNeighborOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6086. };
  6087. struct ResizeNearestNeighborOptionsBuilder {
  6088. typedef ResizeNearestNeighborOptions Table;
  6089. flatbuffers::FlatBufferBuilder &fbb_;
  6090. flatbuffers::uoffset_t start_;
  6091. void add_align_corners(bool align_corners) {
  6092. fbb_.AddElement<uint8_t>(ResizeNearestNeighborOptions::VT_ALIGN_CORNERS, static_cast<uint8_t>(align_corners), 0);
  6093. }
  6094. void add_half_pixel_centers(bool half_pixel_centers) {
  6095. fbb_.AddElement<uint8_t>(ResizeNearestNeighborOptions::VT_HALF_PIXEL_CENTERS, static_cast<uint8_t>(half_pixel_centers), 0);
  6096. }
  6097. explicit ResizeNearestNeighborOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6098. : fbb_(_fbb) {
  6099. start_ = fbb_.StartTable();
  6100. }
  6101. flatbuffers::Offset<ResizeNearestNeighborOptions> Finish() {
  6102. const auto end = fbb_.EndTable(start_);
  6103. auto o = flatbuffers::Offset<ResizeNearestNeighborOptions>(end);
  6104. return o;
  6105. }
  6106. };
  6107. inline flatbuffers::Offset<ResizeNearestNeighborOptions> CreateResizeNearestNeighborOptions(
  6108. flatbuffers::FlatBufferBuilder &_fbb,
  6109. bool align_corners = false,
  6110. bool half_pixel_centers = false) {
  6111. ResizeNearestNeighborOptionsBuilder builder_(_fbb);
  6112. builder_.add_half_pixel_centers(half_pixel_centers);
  6113. builder_.add_align_corners(align_corners);
  6114. return builder_.Finish();
  6115. }
  6116. flatbuffers::Offset<ResizeNearestNeighborOptions> CreateResizeNearestNeighborOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6117. struct CallOptionsT : public flatbuffers::NativeTable {
  6118. typedef CallOptions TableType;
  6119. uint32_t subgraph = 0;
  6120. };
  6121. struct CallOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6122. typedef CallOptionsT NativeTableType;
  6123. typedef CallOptionsBuilder Builder;
  6124. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6125. VT_SUBGRAPH = 4
  6126. };
  6127. uint32_t subgraph() const {
  6128. return GetField<uint32_t>(VT_SUBGRAPH, 0);
  6129. }
  6130. bool Verify(flatbuffers::Verifier &verifier) const {
  6131. return VerifyTableStart(verifier) &&
  6132. VerifyField<uint32_t>(verifier, VT_SUBGRAPH, 4) &&
  6133. verifier.EndTable();
  6134. }
  6135. CallOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6136. void UnPackTo(CallOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6137. static flatbuffers::Offset<CallOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6138. };
  6139. struct CallOptionsBuilder {
  6140. typedef CallOptions Table;
  6141. flatbuffers::FlatBufferBuilder &fbb_;
  6142. flatbuffers::uoffset_t start_;
  6143. void add_subgraph(uint32_t subgraph) {
  6144. fbb_.AddElement<uint32_t>(CallOptions::VT_SUBGRAPH, subgraph, 0);
  6145. }
  6146. explicit CallOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6147. : fbb_(_fbb) {
  6148. start_ = fbb_.StartTable();
  6149. }
  6150. flatbuffers::Offset<CallOptions> Finish() {
  6151. const auto end = fbb_.EndTable(start_);
  6152. auto o = flatbuffers::Offset<CallOptions>(end);
  6153. return o;
  6154. }
  6155. };
  6156. inline flatbuffers::Offset<CallOptions> CreateCallOptions(
  6157. flatbuffers::FlatBufferBuilder &_fbb,
  6158. uint32_t subgraph = 0) {
  6159. CallOptionsBuilder builder_(_fbb);
  6160. builder_.add_subgraph(subgraph);
  6161. return builder_.Finish();
  6162. }
  6163. flatbuffers::Offset<CallOptions> CreateCallOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6164. struct PadOptionsT : public flatbuffers::NativeTable {
  6165. typedef PadOptions TableType;
  6166. };
  6167. struct PadOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6168. typedef PadOptionsT NativeTableType;
  6169. typedef PadOptionsBuilder Builder;
  6170. bool Verify(flatbuffers::Verifier &verifier) const {
  6171. return VerifyTableStart(verifier) &&
  6172. verifier.EndTable();
  6173. }
  6174. PadOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6175. void UnPackTo(PadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6176. static flatbuffers::Offset<PadOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6177. };
  6178. struct PadOptionsBuilder {
  6179. typedef PadOptions Table;
  6180. flatbuffers::FlatBufferBuilder &fbb_;
  6181. flatbuffers::uoffset_t start_;
  6182. explicit PadOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6183. : fbb_(_fbb) {
  6184. start_ = fbb_.StartTable();
  6185. }
  6186. flatbuffers::Offset<PadOptions> Finish() {
  6187. const auto end = fbb_.EndTable(start_);
  6188. auto o = flatbuffers::Offset<PadOptions>(end);
  6189. return o;
  6190. }
  6191. };
  6192. inline flatbuffers::Offset<PadOptions> CreatePadOptions(
  6193. flatbuffers::FlatBufferBuilder &_fbb) {
  6194. PadOptionsBuilder builder_(_fbb);
  6195. return builder_.Finish();
  6196. }
  6197. flatbuffers::Offset<PadOptions> CreatePadOptions(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6198. struct PadV2OptionsT : public flatbuffers::NativeTable {
  6199. typedef PadV2Options TableType;
  6200. };
  6201. struct PadV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6202. typedef PadV2OptionsT NativeTableType;
  6203. typedef PadV2OptionsBuilder Builder;
  6204. bool Verify(flatbuffers::Verifier &verifier) const {
  6205. return VerifyTableStart(verifier) &&
  6206. verifier.EndTable();
  6207. }
  6208. PadV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6209. void UnPackTo(PadV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6210. static flatbuffers::Offset<PadV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6211. };
  6212. struct PadV2OptionsBuilder {
  6213. typedef PadV2Options Table;
  6214. flatbuffers::FlatBufferBuilder &fbb_;
  6215. flatbuffers::uoffset_t start_;
  6216. explicit PadV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6217. : fbb_(_fbb) {
  6218. start_ = fbb_.StartTable();
  6219. }
  6220. flatbuffers::Offset<PadV2Options> Finish() {
  6221. const auto end = fbb_.EndTable(start_);
  6222. auto o = flatbuffers::Offset<PadV2Options>(end);
  6223. return o;
  6224. }
  6225. };
  6226. inline flatbuffers::Offset<PadV2Options> CreatePadV2Options(
  6227. flatbuffers::FlatBufferBuilder &_fbb) {
  6228. PadV2OptionsBuilder builder_(_fbb);
  6229. return builder_.Finish();
  6230. }
  6231. flatbuffers::Offset<PadV2Options> CreatePadV2Options(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6232. struct ReshapeOptionsT : public flatbuffers::NativeTable {
  6233. typedef ReshapeOptions TableType;
  6234. std::vector<int32_t> new_shape{};
  6235. };
  6236. struct ReshapeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6237. typedef ReshapeOptionsT NativeTableType;
  6238. typedef ReshapeOptionsBuilder Builder;
  6239. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6240. VT_NEW_SHAPE = 4
  6241. };
  6242. const flatbuffers::Vector<int32_t> *new_shape() const {
  6243. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_NEW_SHAPE);
  6244. }
  6245. bool Verify(flatbuffers::Verifier &verifier) const {
  6246. return VerifyTableStart(verifier) &&
  6247. VerifyOffset(verifier, VT_NEW_SHAPE) &&
  6248. verifier.VerifyVector(new_shape()) &&
  6249. verifier.EndTable();
  6250. }
  6251. ReshapeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6252. void UnPackTo(ReshapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6253. static flatbuffers::Offset<ReshapeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6254. };
  6255. struct ReshapeOptionsBuilder {
  6256. typedef ReshapeOptions Table;
  6257. flatbuffers::FlatBufferBuilder &fbb_;
  6258. flatbuffers::uoffset_t start_;
  6259. void add_new_shape(flatbuffers::Offset<flatbuffers::Vector<int32_t>> new_shape) {
  6260. fbb_.AddOffset(ReshapeOptions::VT_NEW_SHAPE, new_shape);
  6261. }
  6262. explicit ReshapeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6263. : fbb_(_fbb) {
  6264. start_ = fbb_.StartTable();
  6265. }
  6266. flatbuffers::Offset<ReshapeOptions> Finish() {
  6267. const auto end = fbb_.EndTable(start_);
  6268. auto o = flatbuffers::Offset<ReshapeOptions>(end);
  6269. return o;
  6270. }
  6271. };
  6272. inline flatbuffers::Offset<ReshapeOptions> CreateReshapeOptions(
  6273. flatbuffers::FlatBufferBuilder &_fbb,
  6274. flatbuffers::Offset<flatbuffers::Vector<int32_t>> new_shape = 0) {
  6275. ReshapeOptionsBuilder builder_(_fbb);
  6276. builder_.add_new_shape(new_shape);
  6277. return builder_.Finish();
  6278. }
  6279. inline flatbuffers::Offset<ReshapeOptions> CreateReshapeOptionsDirect(
  6280. flatbuffers::FlatBufferBuilder &_fbb,
  6281. const std::vector<int32_t> *new_shape = nullptr) {
  6282. auto new_shape__ = new_shape ? _fbb.CreateVector<int32_t>(*new_shape) : 0;
  6283. return tflite::CreateReshapeOptions(
  6284. _fbb,
  6285. new_shape__);
  6286. }
  6287. flatbuffers::Offset<ReshapeOptions> CreateReshapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6288. struct SpaceToBatchNDOptionsT : public flatbuffers::NativeTable {
  6289. typedef SpaceToBatchNDOptions TableType;
  6290. };
  6291. struct SpaceToBatchNDOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6292. typedef SpaceToBatchNDOptionsT NativeTableType;
  6293. typedef SpaceToBatchNDOptionsBuilder Builder;
  6294. bool Verify(flatbuffers::Verifier &verifier) const {
  6295. return VerifyTableStart(verifier) &&
  6296. verifier.EndTable();
  6297. }
  6298. SpaceToBatchNDOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6299. void UnPackTo(SpaceToBatchNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6300. static flatbuffers::Offset<SpaceToBatchNDOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6301. };
  6302. struct SpaceToBatchNDOptionsBuilder {
  6303. typedef SpaceToBatchNDOptions Table;
  6304. flatbuffers::FlatBufferBuilder &fbb_;
  6305. flatbuffers::uoffset_t start_;
  6306. explicit SpaceToBatchNDOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6307. : fbb_(_fbb) {
  6308. start_ = fbb_.StartTable();
  6309. }
  6310. flatbuffers::Offset<SpaceToBatchNDOptions> Finish() {
  6311. const auto end = fbb_.EndTable(start_);
  6312. auto o = flatbuffers::Offset<SpaceToBatchNDOptions>(end);
  6313. return o;
  6314. }
  6315. };
  6316. inline flatbuffers::Offset<SpaceToBatchNDOptions> CreateSpaceToBatchNDOptions(
  6317. flatbuffers::FlatBufferBuilder &_fbb) {
  6318. SpaceToBatchNDOptionsBuilder builder_(_fbb);
  6319. return builder_.Finish();
  6320. }
  6321. flatbuffers::Offset<SpaceToBatchNDOptions> CreateSpaceToBatchNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6322. struct BatchToSpaceNDOptionsT : public flatbuffers::NativeTable {
  6323. typedef BatchToSpaceNDOptions TableType;
  6324. };
  6325. struct BatchToSpaceNDOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6326. typedef BatchToSpaceNDOptionsT NativeTableType;
  6327. typedef BatchToSpaceNDOptionsBuilder Builder;
  6328. bool Verify(flatbuffers::Verifier &verifier) const {
  6329. return VerifyTableStart(verifier) &&
  6330. verifier.EndTable();
  6331. }
  6332. BatchToSpaceNDOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6333. void UnPackTo(BatchToSpaceNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6334. static flatbuffers::Offset<BatchToSpaceNDOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6335. };
  6336. struct BatchToSpaceNDOptionsBuilder {
  6337. typedef BatchToSpaceNDOptions Table;
  6338. flatbuffers::FlatBufferBuilder &fbb_;
  6339. flatbuffers::uoffset_t start_;
  6340. explicit BatchToSpaceNDOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6341. : fbb_(_fbb) {
  6342. start_ = fbb_.StartTable();
  6343. }
  6344. flatbuffers::Offset<BatchToSpaceNDOptions> Finish() {
  6345. const auto end = fbb_.EndTable(start_);
  6346. auto o = flatbuffers::Offset<BatchToSpaceNDOptions>(end);
  6347. return o;
  6348. }
  6349. };
  6350. inline flatbuffers::Offset<BatchToSpaceNDOptions> CreateBatchToSpaceNDOptions(
  6351. flatbuffers::FlatBufferBuilder &_fbb) {
  6352. BatchToSpaceNDOptionsBuilder builder_(_fbb);
  6353. return builder_.Finish();
  6354. }
  6355. flatbuffers::Offset<BatchToSpaceNDOptions> CreateBatchToSpaceNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6356. struct SkipGramOptionsT : public flatbuffers::NativeTable {
  6357. typedef SkipGramOptions TableType;
  6358. int32_t ngram_size = 0;
  6359. int32_t max_skip_size = 0;
  6360. bool include_all_ngrams = false;
  6361. };
  6362. struct SkipGramOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6363. typedef SkipGramOptionsT NativeTableType;
  6364. typedef SkipGramOptionsBuilder Builder;
  6365. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6366. VT_NGRAM_SIZE = 4,
  6367. VT_MAX_SKIP_SIZE = 6,
  6368. VT_INCLUDE_ALL_NGRAMS = 8
  6369. };
  6370. int32_t ngram_size() const {
  6371. return GetField<int32_t>(VT_NGRAM_SIZE, 0);
  6372. }
  6373. int32_t max_skip_size() const {
  6374. return GetField<int32_t>(VT_MAX_SKIP_SIZE, 0);
  6375. }
  6376. bool include_all_ngrams() const {
  6377. return GetField<uint8_t>(VT_INCLUDE_ALL_NGRAMS, 0) != 0;
  6378. }
  6379. bool Verify(flatbuffers::Verifier &verifier) const {
  6380. return VerifyTableStart(verifier) &&
  6381. VerifyField<int32_t>(verifier, VT_NGRAM_SIZE, 4) &&
  6382. VerifyField<int32_t>(verifier, VT_MAX_SKIP_SIZE, 4) &&
  6383. VerifyField<uint8_t>(verifier, VT_INCLUDE_ALL_NGRAMS, 1) &&
  6384. verifier.EndTable();
  6385. }
  6386. SkipGramOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6387. void UnPackTo(SkipGramOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6388. static flatbuffers::Offset<SkipGramOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6389. };
  6390. struct SkipGramOptionsBuilder {
  6391. typedef SkipGramOptions Table;
  6392. flatbuffers::FlatBufferBuilder &fbb_;
  6393. flatbuffers::uoffset_t start_;
  6394. void add_ngram_size(int32_t ngram_size) {
  6395. fbb_.AddElement<int32_t>(SkipGramOptions::VT_NGRAM_SIZE, ngram_size, 0);
  6396. }
  6397. void add_max_skip_size(int32_t max_skip_size) {
  6398. fbb_.AddElement<int32_t>(SkipGramOptions::VT_MAX_SKIP_SIZE, max_skip_size, 0);
  6399. }
  6400. void add_include_all_ngrams(bool include_all_ngrams) {
  6401. fbb_.AddElement<uint8_t>(SkipGramOptions::VT_INCLUDE_ALL_NGRAMS, static_cast<uint8_t>(include_all_ngrams), 0);
  6402. }
  6403. explicit SkipGramOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6404. : fbb_(_fbb) {
  6405. start_ = fbb_.StartTable();
  6406. }
  6407. flatbuffers::Offset<SkipGramOptions> Finish() {
  6408. const auto end = fbb_.EndTable(start_);
  6409. auto o = flatbuffers::Offset<SkipGramOptions>(end);
  6410. return o;
  6411. }
  6412. };
  6413. inline flatbuffers::Offset<SkipGramOptions> CreateSkipGramOptions(
  6414. flatbuffers::FlatBufferBuilder &_fbb,
  6415. int32_t ngram_size = 0,
  6416. int32_t max_skip_size = 0,
  6417. bool include_all_ngrams = false) {
  6418. SkipGramOptionsBuilder builder_(_fbb);
  6419. builder_.add_max_skip_size(max_skip_size);
  6420. builder_.add_ngram_size(ngram_size);
  6421. builder_.add_include_all_ngrams(include_all_ngrams);
  6422. return builder_.Finish();
  6423. }
  6424. flatbuffers::Offset<SkipGramOptions> CreateSkipGramOptions(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6425. struct SpaceToDepthOptionsT : public flatbuffers::NativeTable {
  6426. typedef SpaceToDepthOptions TableType;
  6427. int32_t block_size = 0;
  6428. };
  6429. struct SpaceToDepthOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6430. typedef SpaceToDepthOptionsT NativeTableType;
  6431. typedef SpaceToDepthOptionsBuilder Builder;
  6432. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6433. VT_BLOCK_SIZE = 4
  6434. };
  6435. int32_t block_size() const {
  6436. return GetField<int32_t>(VT_BLOCK_SIZE, 0);
  6437. }
  6438. bool Verify(flatbuffers::Verifier &verifier) const {
  6439. return VerifyTableStart(verifier) &&
  6440. VerifyField<int32_t>(verifier, VT_BLOCK_SIZE, 4) &&
  6441. verifier.EndTable();
  6442. }
  6443. SpaceToDepthOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6444. void UnPackTo(SpaceToDepthOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6445. static flatbuffers::Offset<SpaceToDepthOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6446. };
  6447. struct SpaceToDepthOptionsBuilder {
  6448. typedef SpaceToDepthOptions Table;
  6449. flatbuffers::FlatBufferBuilder &fbb_;
  6450. flatbuffers::uoffset_t start_;
  6451. void add_block_size(int32_t block_size) {
  6452. fbb_.AddElement<int32_t>(SpaceToDepthOptions::VT_BLOCK_SIZE, block_size, 0);
  6453. }
  6454. explicit SpaceToDepthOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6455. : fbb_(_fbb) {
  6456. start_ = fbb_.StartTable();
  6457. }
  6458. flatbuffers::Offset<SpaceToDepthOptions> Finish() {
  6459. const auto end = fbb_.EndTable(start_);
  6460. auto o = flatbuffers::Offset<SpaceToDepthOptions>(end);
  6461. return o;
  6462. }
  6463. };
  6464. inline flatbuffers::Offset<SpaceToDepthOptions> CreateSpaceToDepthOptions(
  6465. flatbuffers::FlatBufferBuilder &_fbb,
  6466. int32_t block_size = 0) {
  6467. SpaceToDepthOptionsBuilder builder_(_fbb);
  6468. builder_.add_block_size(block_size);
  6469. return builder_.Finish();
  6470. }
  6471. flatbuffers::Offset<SpaceToDepthOptions> CreateSpaceToDepthOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6472. struct DepthToSpaceOptionsT : public flatbuffers::NativeTable {
  6473. typedef DepthToSpaceOptions TableType;
  6474. int32_t block_size = 0;
  6475. };
  6476. struct DepthToSpaceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6477. typedef DepthToSpaceOptionsT NativeTableType;
  6478. typedef DepthToSpaceOptionsBuilder Builder;
  6479. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6480. VT_BLOCK_SIZE = 4
  6481. };
  6482. int32_t block_size() const {
  6483. return GetField<int32_t>(VT_BLOCK_SIZE, 0);
  6484. }
  6485. bool Verify(flatbuffers::Verifier &verifier) const {
  6486. return VerifyTableStart(verifier) &&
  6487. VerifyField<int32_t>(verifier, VT_BLOCK_SIZE, 4) &&
  6488. verifier.EndTable();
  6489. }
  6490. DepthToSpaceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6491. void UnPackTo(DepthToSpaceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6492. static flatbuffers::Offset<DepthToSpaceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6493. };
  6494. struct DepthToSpaceOptionsBuilder {
  6495. typedef DepthToSpaceOptions Table;
  6496. flatbuffers::FlatBufferBuilder &fbb_;
  6497. flatbuffers::uoffset_t start_;
  6498. void add_block_size(int32_t block_size) {
  6499. fbb_.AddElement<int32_t>(DepthToSpaceOptions::VT_BLOCK_SIZE, block_size, 0);
  6500. }
  6501. explicit DepthToSpaceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6502. : fbb_(_fbb) {
  6503. start_ = fbb_.StartTable();
  6504. }
  6505. flatbuffers::Offset<DepthToSpaceOptions> Finish() {
  6506. const auto end = fbb_.EndTable(start_);
  6507. auto o = flatbuffers::Offset<DepthToSpaceOptions>(end);
  6508. return o;
  6509. }
  6510. };
  6511. inline flatbuffers::Offset<DepthToSpaceOptions> CreateDepthToSpaceOptions(
  6512. flatbuffers::FlatBufferBuilder &_fbb,
  6513. int32_t block_size = 0) {
  6514. DepthToSpaceOptionsBuilder builder_(_fbb);
  6515. builder_.add_block_size(block_size);
  6516. return builder_.Finish();
  6517. }
  6518. flatbuffers::Offset<DepthToSpaceOptions> CreateDepthToSpaceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6519. struct SubOptionsT : public flatbuffers::NativeTable {
  6520. typedef SubOptions TableType;
  6521. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  6522. bool pot_scale_int16 = true;
  6523. };
  6524. struct SubOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6525. typedef SubOptionsT NativeTableType;
  6526. typedef SubOptionsBuilder Builder;
  6527. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6528. VT_FUSED_ACTIVATION_FUNCTION = 4,
  6529. VT_POT_SCALE_INT16 = 6
  6530. };
  6531. tflite::ActivationFunctionType fused_activation_function() const {
  6532. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  6533. }
  6534. bool pot_scale_int16() const {
  6535. return GetField<uint8_t>(VT_POT_SCALE_INT16, 1) != 0;
  6536. }
  6537. bool Verify(flatbuffers::Verifier &verifier) const {
  6538. return VerifyTableStart(verifier) &&
  6539. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  6540. VerifyField<uint8_t>(verifier, VT_POT_SCALE_INT16, 1) &&
  6541. verifier.EndTable();
  6542. }
  6543. SubOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6544. void UnPackTo(SubOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6545. static flatbuffers::Offset<SubOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6546. };
  6547. struct SubOptionsBuilder {
  6548. typedef SubOptions Table;
  6549. flatbuffers::FlatBufferBuilder &fbb_;
  6550. flatbuffers::uoffset_t start_;
  6551. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  6552. fbb_.AddElement<int8_t>(SubOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  6553. }
  6554. void add_pot_scale_int16(bool pot_scale_int16) {
  6555. fbb_.AddElement<uint8_t>(SubOptions::VT_POT_SCALE_INT16, static_cast<uint8_t>(pot_scale_int16), 1);
  6556. }
  6557. explicit SubOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6558. : fbb_(_fbb) {
  6559. start_ = fbb_.StartTable();
  6560. }
  6561. flatbuffers::Offset<SubOptions> Finish() {
  6562. const auto end = fbb_.EndTable(start_);
  6563. auto o = flatbuffers::Offset<SubOptions>(end);
  6564. return o;
  6565. }
  6566. };
  6567. inline flatbuffers::Offset<SubOptions> CreateSubOptions(
  6568. flatbuffers::FlatBufferBuilder &_fbb,
  6569. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  6570. bool pot_scale_int16 = true) {
  6571. SubOptionsBuilder builder_(_fbb);
  6572. builder_.add_pot_scale_int16(pot_scale_int16);
  6573. builder_.add_fused_activation_function(fused_activation_function);
  6574. return builder_.Finish();
  6575. }
  6576. flatbuffers::Offset<SubOptions> CreateSubOptions(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6577. struct DivOptionsT : public flatbuffers::NativeTable {
  6578. typedef DivOptions TableType;
  6579. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE;
  6580. };
  6581. struct DivOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6582. typedef DivOptionsT NativeTableType;
  6583. typedef DivOptionsBuilder Builder;
  6584. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6585. VT_FUSED_ACTIVATION_FUNCTION = 4
  6586. };
  6587. tflite::ActivationFunctionType fused_activation_function() const {
  6588. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  6589. }
  6590. bool Verify(flatbuffers::Verifier &verifier) const {
  6591. return VerifyTableStart(verifier) &&
  6592. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION, 1) &&
  6593. verifier.EndTable();
  6594. }
  6595. DivOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6596. void UnPackTo(DivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6597. static flatbuffers::Offset<DivOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6598. };
  6599. struct DivOptionsBuilder {
  6600. typedef DivOptions Table;
  6601. flatbuffers::FlatBufferBuilder &fbb_;
  6602. flatbuffers::uoffset_t start_;
  6603. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  6604. fbb_.AddElement<int8_t>(DivOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  6605. }
  6606. explicit DivOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6607. : fbb_(_fbb) {
  6608. start_ = fbb_.StartTable();
  6609. }
  6610. flatbuffers::Offset<DivOptions> Finish() {
  6611. const auto end = fbb_.EndTable(start_);
  6612. auto o = flatbuffers::Offset<DivOptions>(end);
  6613. return o;
  6614. }
  6615. };
  6616. inline flatbuffers::Offset<DivOptions> CreateDivOptions(
  6617. flatbuffers::FlatBufferBuilder &_fbb,
  6618. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
  6619. DivOptionsBuilder builder_(_fbb);
  6620. builder_.add_fused_activation_function(fused_activation_function);
  6621. return builder_.Finish();
  6622. }
  6623. flatbuffers::Offset<DivOptions> CreateDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6624. struct TopKV2OptionsT : public flatbuffers::NativeTable {
  6625. typedef TopKV2Options TableType;
  6626. };
  6627. struct TopKV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6628. typedef TopKV2OptionsT NativeTableType;
  6629. typedef TopKV2OptionsBuilder Builder;
  6630. bool Verify(flatbuffers::Verifier &verifier) const {
  6631. return VerifyTableStart(verifier) &&
  6632. verifier.EndTable();
  6633. }
  6634. TopKV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6635. void UnPackTo(TopKV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6636. static flatbuffers::Offset<TopKV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6637. };
  6638. struct TopKV2OptionsBuilder {
  6639. typedef TopKV2Options Table;
  6640. flatbuffers::FlatBufferBuilder &fbb_;
  6641. flatbuffers::uoffset_t start_;
  6642. explicit TopKV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6643. : fbb_(_fbb) {
  6644. start_ = fbb_.StartTable();
  6645. }
  6646. flatbuffers::Offset<TopKV2Options> Finish() {
  6647. const auto end = fbb_.EndTable(start_);
  6648. auto o = flatbuffers::Offset<TopKV2Options>(end);
  6649. return o;
  6650. }
  6651. };
  6652. inline flatbuffers::Offset<TopKV2Options> CreateTopKV2Options(
  6653. flatbuffers::FlatBufferBuilder &_fbb) {
  6654. TopKV2OptionsBuilder builder_(_fbb);
  6655. return builder_.Finish();
  6656. }
  6657. flatbuffers::Offset<TopKV2Options> CreateTopKV2Options(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6658. struct EmbeddingLookupSparseOptionsT : public flatbuffers::NativeTable {
  6659. typedef EmbeddingLookupSparseOptions TableType;
  6660. tflite::CombinerType combiner = tflite::CombinerType_SUM;
  6661. };
  6662. struct EmbeddingLookupSparseOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6663. typedef EmbeddingLookupSparseOptionsT NativeTableType;
  6664. typedef EmbeddingLookupSparseOptionsBuilder Builder;
  6665. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6666. VT_COMBINER = 4
  6667. };
  6668. tflite::CombinerType combiner() const {
  6669. return static_cast<tflite::CombinerType>(GetField<int8_t>(VT_COMBINER, 0));
  6670. }
  6671. bool Verify(flatbuffers::Verifier &verifier) const {
  6672. return VerifyTableStart(verifier) &&
  6673. VerifyField<int8_t>(verifier, VT_COMBINER, 1) &&
  6674. verifier.EndTable();
  6675. }
  6676. EmbeddingLookupSparseOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6677. void UnPackTo(EmbeddingLookupSparseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6678. static flatbuffers::Offset<EmbeddingLookupSparseOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6679. };
  6680. struct EmbeddingLookupSparseOptionsBuilder {
  6681. typedef EmbeddingLookupSparseOptions Table;
  6682. flatbuffers::FlatBufferBuilder &fbb_;
  6683. flatbuffers::uoffset_t start_;
  6684. void add_combiner(tflite::CombinerType combiner) {
  6685. fbb_.AddElement<int8_t>(EmbeddingLookupSparseOptions::VT_COMBINER, static_cast<int8_t>(combiner), 0);
  6686. }
  6687. explicit EmbeddingLookupSparseOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6688. : fbb_(_fbb) {
  6689. start_ = fbb_.StartTable();
  6690. }
  6691. flatbuffers::Offset<EmbeddingLookupSparseOptions> Finish() {
  6692. const auto end = fbb_.EndTable(start_);
  6693. auto o = flatbuffers::Offset<EmbeddingLookupSparseOptions>(end);
  6694. return o;
  6695. }
  6696. };
  6697. inline flatbuffers::Offset<EmbeddingLookupSparseOptions> CreateEmbeddingLookupSparseOptions(
  6698. flatbuffers::FlatBufferBuilder &_fbb,
  6699. tflite::CombinerType combiner = tflite::CombinerType_SUM) {
  6700. EmbeddingLookupSparseOptionsBuilder builder_(_fbb);
  6701. builder_.add_combiner(combiner);
  6702. return builder_.Finish();
  6703. }
  6704. flatbuffers::Offset<EmbeddingLookupSparseOptions> CreateEmbeddingLookupSparseOptions(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6705. struct GatherOptionsT : public flatbuffers::NativeTable {
  6706. typedef GatherOptions TableType;
  6707. int32_t axis = 0;
  6708. int32_t batch_dims = 0;
  6709. };
  6710. struct GatherOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6711. typedef GatherOptionsT NativeTableType;
  6712. typedef GatherOptionsBuilder Builder;
  6713. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6714. VT_AXIS = 4,
  6715. VT_BATCH_DIMS = 6
  6716. };
  6717. int32_t axis() const {
  6718. return GetField<int32_t>(VT_AXIS, 0);
  6719. }
  6720. int32_t batch_dims() const {
  6721. return GetField<int32_t>(VT_BATCH_DIMS, 0);
  6722. }
  6723. bool Verify(flatbuffers::Verifier &verifier) const {
  6724. return VerifyTableStart(verifier) &&
  6725. VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
  6726. VerifyField<int32_t>(verifier, VT_BATCH_DIMS, 4) &&
  6727. verifier.EndTable();
  6728. }
  6729. GatherOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6730. void UnPackTo(GatherOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6731. static flatbuffers::Offset<GatherOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6732. };
  6733. struct GatherOptionsBuilder {
  6734. typedef GatherOptions Table;
  6735. flatbuffers::FlatBufferBuilder &fbb_;
  6736. flatbuffers::uoffset_t start_;
  6737. void add_axis(int32_t axis) {
  6738. fbb_.AddElement<int32_t>(GatherOptions::VT_AXIS, axis, 0);
  6739. }
  6740. void add_batch_dims(int32_t batch_dims) {
  6741. fbb_.AddElement<int32_t>(GatherOptions::VT_BATCH_DIMS, batch_dims, 0);
  6742. }
  6743. explicit GatherOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6744. : fbb_(_fbb) {
  6745. start_ = fbb_.StartTable();
  6746. }
  6747. flatbuffers::Offset<GatherOptions> Finish() {
  6748. const auto end = fbb_.EndTable(start_);
  6749. auto o = flatbuffers::Offset<GatherOptions>(end);
  6750. return o;
  6751. }
  6752. };
  6753. inline flatbuffers::Offset<GatherOptions> CreateGatherOptions(
  6754. flatbuffers::FlatBufferBuilder &_fbb,
  6755. int32_t axis = 0,
  6756. int32_t batch_dims = 0) {
  6757. GatherOptionsBuilder builder_(_fbb);
  6758. builder_.add_batch_dims(batch_dims);
  6759. builder_.add_axis(axis);
  6760. return builder_.Finish();
  6761. }
  6762. flatbuffers::Offset<GatherOptions> CreateGatherOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6763. struct TransposeOptionsT : public flatbuffers::NativeTable {
  6764. typedef TransposeOptions TableType;
  6765. };
  6766. struct TransposeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6767. typedef TransposeOptionsT NativeTableType;
  6768. typedef TransposeOptionsBuilder Builder;
  6769. bool Verify(flatbuffers::Verifier &verifier) const {
  6770. return VerifyTableStart(verifier) &&
  6771. verifier.EndTable();
  6772. }
  6773. TransposeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6774. void UnPackTo(TransposeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6775. static flatbuffers::Offset<TransposeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6776. };
  6777. struct TransposeOptionsBuilder {
  6778. typedef TransposeOptions Table;
  6779. flatbuffers::FlatBufferBuilder &fbb_;
  6780. flatbuffers::uoffset_t start_;
  6781. explicit TransposeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6782. : fbb_(_fbb) {
  6783. start_ = fbb_.StartTable();
  6784. }
  6785. flatbuffers::Offset<TransposeOptions> Finish() {
  6786. const auto end = fbb_.EndTable(start_);
  6787. auto o = flatbuffers::Offset<TransposeOptions>(end);
  6788. return o;
  6789. }
  6790. };
  6791. inline flatbuffers::Offset<TransposeOptions> CreateTransposeOptions(
  6792. flatbuffers::FlatBufferBuilder &_fbb) {
  6793. TransposeOptionsBuilder builder_(_fbb);
  6794. return builder_.Finish();
  6795. }
  6796. flatbuffers::Offset<TransposeOptions> CreateTransposeOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6797. struct ExpOptionsT : public flatbuffers::NativeTable {
  6798. typedef ExpOptions TableType;
  6799. };
  6800. struct ExpOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6801. typedef ExpOptionsT NativeTableType;
  6802. typedef ExpOptionsBuilder Builder;
  6803. bool Verify(flatbuffers::Verifier &verifier) const {
  6804. return VerifyTableStart(verifier) &&
  6805. verifier.EndTable();
  6806. }
  6807. ExpOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6808. void UnPackTo(ExpOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6809. static flatbuffers::Offset<ExpOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6810. };
  6811. struct ExpOptionsBuilder {
  6812. typedef ExpOptions Table;
  6813. flatbuffers::FlatBufferBuilder &fbb_;
  6814. flatbuffers::uoffset_t start_;
  6815. explicit ExpOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6816. : fbb_(_fbb) {
  6817. start_ = fbb_.StartTable();
  6818. }
  6819. flatbuffers::Offset<ExpOptions> Finish() {
  6820. const auto end = fbb_.EndTable(start_);
  6821. auto o = flatbuffers::Offset<ExpOptions>(end);
  6822. return o;
  6823. }
  6824. };
  6825. inline flatbuffers::Offset<ExpOptions> CreateExpOptions(
  6826. flatbuffers::FlatBufferBuilder &_fbb) {
  6827. ExpOptionsBuilder builder_(_fbb);
  6828. return builder_.Finish();
  6829. }
  6830. flatbuffers::Offset<ExpOptions> CreateExpOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6831. struct CosOptionsT : public flatbuffers::NativeTable {
  6832. typedef CosOptions TableType;
  6833. };
  6834. struct CosOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6835. typedef CosOptionsT NativeTableType;
  6836. typedef CosOptionsBuilder Builder;
  6837. bool Verify(flatbuffers::Verifier &verifier) const {
  6838. return VerifyTableStart(verifier) &&
  6839. verifier.EndTable();
  6840. }
  6841. CosOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6842. void UnPackTo(CosOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6843. static flatbuffers::Offset<CosOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6844. };
  6845. struct CosOptionsBuilder {
  6846. typedef CosOptions Table;
  6847. flatbuffers::FlatBufferBuilder &fbb_;
  6848. flatbuffers::uoffset_t start_;
  6849. explicit CosOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6850. : fbb_(_fbb) {
  6851. start_ = fbb_.StartTable();
  6852. }
  6853. flatbuffers::Offset<CosOptions> Finish() {
  6854. const auto end = fbb_.EndTable(start_);
  6855. auto o = flatbuffers::Offset<CosOptions>(end);
  6856. return o;
  6857. }
  6858. };
  6859. inline flatbuffers::Offset<CosOptions> CreateCosOptions(
  6860. flatbuffers::FlatBufferBuilder &_fbb) {
  6861. CosOptionsBuilder builder_(_fbb);
  6862. return builder_.Finish();
  6863. }
  6864. flatbuffers::Offset<CosOptions> CreateCosOptions(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6865. struct ReducerOptionsT : public flatbuffers::NativeTable {
  6866. typedef ReducerOptions TableType;
  6867. bool keep_dims = false;
  6868. };
  6869. struct ReducerOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6870. typedef ReducerOptionsT NativeTableType;
  6871. typedef ReducerOptionsBuilder Builder;
  6872. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6873. VT_KEEP_DIMS = 4
  6874. };
  6875. bool keep_dims() const {
  6876. return GetField<uint8_t>(VT_KEEP_DIMS, 0) != 0;
  6877. }
  6878. bool Verify(flatbuffers::Verifier &verifier) const {
  6879. return VerifyTableStart(verifier) &&
  6880. VerifyField<uint8_t>(verifier, VT_KEEP_DIMS, 1) &&
  6881. verifier.EndTable();
  6882. }
  6883. ReducerOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6884. void UnPackTo(ReducerOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6885. static flatbuffers::Offset<ReducerOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6886. };
  6887. struct ReducerOptionsBuilder {
  6888. typedef ReducerOptions Table;
  6889. flatbuffers::FlatBufferBuilder &fbb_;
  6890. flatbuffers::uoffset_t start_;
  6891. void add_keep_dims(bool keep_dims) {
  6892. fbb_.AddElement<uint8_t>(ReducerOptions::VT_KEEP_DIMS, static_cast<uint8_t>(keep_dims), 0);
  6893. }
  6894. explicit ReducerOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6895. : fbb_(_fbb) {
  6896. start_ = fbb_.StartTable();
  6897. }
  6898. flatbuffers::Offset<ReducerOptions> Finish() {
  6899. const auto end = fbb_.EndTable(start_);
  6900. auto o = flatbuffers::Offset<ReducerOptions>(end);
  6901. return o;
  6902. }
  6903. };
  6904. inline flatbuffers::Offset<ReducerOptions> CreateReducerOptions(
  6905. flatbuffers::FlatBufferBuilder &_fbb,
  6906. bool keep_dims = false) {
  6907. ReducerOptionsBuilder builder_(_fbb);
  6908. builder_.add_keep_dims(keep_dims);
  6909. return builder_.Finish();
  6910. }
  6911. flatbuffers::Offset<ReducerOptions> CreateReducerOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6912. struct SqueezeOptionsT : public flatbuffers::NativeTable {
  6913. typedef SqueezeOptions TableType;
  6914. std::vector<int32_t> squeeze_dims{};
  6915. };
  6916. struct SqueezeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6917. typedef SqueezeOptionsT NativeTableType;
  6918. typedef SqueezeOptionsBuilder Builder;
  6919. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6920. VT_SQUEEZE_DIMS = 4
  6921. };
  6922. const flatbuffers::Vector<int32_t> *squeeze_dims() const {
  6923. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SQUEEZE_DIMS);
  6924. }
  6925. bool Verify(flatbuffers::Verifier &verifier) const {
  6926. return VerifyTableStart(verifier) &&
  6927. VerifyOffset(verifier, VT_SQUEEZE_DIMS) &&
  6928. verifier.VerifyVector(squeeze_dims()) &&
  6929. verifier.EndTable();
  6930. }
  6931. SqueezeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6932. void UnPackTo(SqueezeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6933. static flatbuffers::Offset<SqueezeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6934. };
  6935. struct SqueezeOptionsBuilder {
  6936. typedef SqueezeOptions Table;
  6937. flatbuffers::FlatBufferBuilder &fbb_;
  6938. flatbuffers::uoffset_t start_;
  6939. void add_squeeze_dims(flatbuffers::Offset<flatbuffers::Vector<int32_t>> squeeze_dims) {
  6940. fbb_.AddOffset(SqueezeOptions::VT_SQUEEZE_DIMS, squeeze_dims);
  6941. }
  6942. explicit SqueezeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6943. : fbb_(_fbb) {
  6944. start_ = fbb_.StartTable();
  6945. }
  6946. flatbuffers::Offset<SqueezeOptions> Finish() {
  6947. const auto end = fbb_.EndTable(start_);
  6948. auto o = flatbuffers::Offset<SqueezeOptions>(end);
  6949. return o;
  6950. }
  6951. };
  6952. inline flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptions(
  6953. flatbuffers::FlatBufferBuilder &_fbb,
  6954. flatbuffers::Offset<flatbuffers::Vector<int32_t>> squeeze_dims = 0) {
  6955. SqueezeOptionsBuilder builder_(_fbb);
  6956. builder_.add_squeeze_dims(squeeze_dims);
  6957. return builder_.Finish();
  6958. }
  6959. inline flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptionsDirect(
  6960. flatbuffers::FlatBufferBuilder &_fbb,
  6961. const std::vector<int32_t> *squeeze_dims = nullptr) {
  6962. auto squeeze_dims__ = squeeze_dims ? _fbb.CreateVector<int32_t>(*squeeze_dims) : 0;
  6963. return tflite::CreateSqueezeOptions(
  6964. _fbb,
  6965. squeeze_dims__);
  6966. }
  6967. flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptions(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6968. struct SplitOptionsT : public flatbuffers::NativeTable {
  6969. typedef SplitOptions TableType;
  6970. int32_t num_splits = 0;
  6971. };
  6972. struct SplitOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6973. typedef SplitOptionsT NativeTableType;
  6974. typedef SplitOptionsBuilder Builder;
  6975. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6976. VT_NUM_SPLITS = 4
  6977. };
  6978. int32_t num_splits() const {
  6979. return GetField<int32_t>(VT_NUM_SPLITS, 0);
  6980. }
  6981. bool Verify(flatbuffers::Verifier &verifier) const {
  6982. return VerifyTableStart(verifier) &&
  6983. VerifyField<int32_t>(verifier, VT_NUM_SPLITS, 4) &&
  6984. verifier.EndTable();
  6985. }
  6986. SplitOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6987. void UnPackTo(SplitOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6988. static flatbuffers::Offset<SplitOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6989. };
  6990. struct SplitOptionsBuilder {
  6991. typedef SplitOptions Table;
  6992. flatbuffers::FlatBufferBuilder &fbb_;
  6993. flatbuffers::uoffset_t start_;
  6994. void add_num_splits(int32_t num_splits) {
  6995. fbb_.AddElement<int32_t>(SplitOptions::VT_NUM_SPLITS, num_splits, 0);
  6996. }
  6997. explicit SplitOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6998. : fbb_(_fbb) {
  6999. start_ = fbb_.StartTable();
  7000. }
  7001. flatbuffers::Offset<SplitOptions> Finish() {
  7002. const auto end = fbb_.EndTable(start_);
  7003. auto o = flatbuffers::Offset<SplitOptions>(end);
  7004. return o;
  7005. }
  7006. };
  7007. inline flatbuffers::Offset<SplitOptions> CreateSplitOptions(
  7008. flatbuffers::FlatBufferBuilder &_fbb,
  7009. int32_t num_splits = 0) {
  7010. SplitOptionsBuilder builder_(_fbb);
  7011. builder_.add_num_splits(num_splits);
  7012. return builder_.Finish();
  7013. }
  7014. flatbuffers::Offset<SplitOptions> CreateSplitOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7015. struct SplitVOptionsT : public flatbuffers::NativeTable {
  7016. typedef SplitVOptions TableType;
  7017. int32_t num_splits = 0;
  7018. };
  7019. struct SplitVOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7020. typedef SplitVOptionsT NativeTableType;
  7021. typedef SplitVOptionsBuilder Builder;
  7022. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7023. VT_NUM_SPLITS = 4
  7024. };
  7025. int32_t num_splits() const {
  7026. return GetField<int32_t>(VT_NUM_SPLITS, 0);
  7027. }
  7028. bool Verify(flatbuffers::Verifier &verifier) const {
  7029. return VerifyTableStart(verifier) &&
  7030. VerifyField<int32_t>(verifier, VT_NUM_SPLITS, 4) &&
  7031. verifier.EndTable();
  7032. }
  7033. SplitVOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7034. void UnPackTo(SplitVOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7035. static flatbuffers::Offset<SplitVOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7036. };
  7037. struct SplitVOptionsBuilder {
  7038. typedef SplitVOptions Table;
  7039. flatbuffers::FlatBufferBuilder &fbb_;
  7040. flatbuffers::uoffset_t start_;
  7041. void add_num_splits(int32_t num_splits) {
  7042. fbb_.AddElement<int32_t>(SplitVOptions::VT_NUM_SPLITS, num_splits, 0);
  7043. }
  7044. explicit SplitVOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7045. : fbb_(_fbb) {
  7046. start_ = fbb_.StartTable();
  7047. }
  7048. flatbuffers::Offset<SplitVOptions> Finish() {
  7049. const auto end = fbb_.EndTable(start_);
  7050. auto o = flatbuffers::Offset<SplitVOptions>(end);
  7051. return o;
  7052. }
  7053. };
  7054. inline flatbuffers::Offset<SplitVOptions> CreateSplitVOptions(
  7055. flatbuffers::FlatBufferBuilder &_fbb,
  7056. int32_t num_splits = 0) {
  7057. SplitVOptionsBuilder builder_(_fbb);
  7058. builder_.add_num_splits(num_splits);
  7059. return builder_.Finish();
  7060. }
  7061. flatbuffers::Offset<SplitVOptions> CreateSplitVOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7062. struct StridedSliceOptionsT : public flatbuffers::NativeTable {
  7063. typedef StridedSliceOptions TableType;
  7064. int32_t begin_mask = 0;
  7065. int32_t end_mask = 0;
  7066. int32_t ellipsis_mask = 0;
  7067. int32_t new_axis_mask = 0;
  7068. int32_t shrink_axis_mask = 0;
  7069. };
  7070. struct StridedSliceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7071. typedef StridedSliceOptionsT NativeTableType;
  7072. typedef StridedSliceOptionsBuilder Builder;
  7073. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7074. VT_BEGIN_MASK = 4,
  7075. VT_END_MASK = 6,
  7076. VT_ELLIPSIS_MASK = 8,
  7077. VT_NEW_AXIS_MASK = 10,
  7078. VT_SHRINK_AXIS_MASK = 12
  7079. };
  7080. int32_t begin_mask() const {
  7081. return GetField<int32_t>(VT_BEGIN_MASK, 0);
  7082. }
  7083. int32_t end_mask() const {
  7084. return GetField<int32_t>(VT_END_MASK, 0);
  7085. }
  7086. int32_t ellipsis_mask() const {
  7087. return GetField<int32_t>(VT_ELLIPSIS_MASK, 0);
  7088. }
  7089. int32_t new_axis_mask() const {
  7090. return GetField<int32_t>(VT_NEW_AXIS_MASK, 0);
  7091. }
  7092. int32_t shrink_axis_mask() const {
  7093. return GetField<int32_t>(VT_SHRINK_AXIS_MASK, 0);
  7094. }
  7095. bool Verify(flatbuffers::Verifier &verifier) const {
  7096. return VerifyTableStart(verifier) &&
  7097. VerifyField<int32_t>(verifier, VT_BEGIN_MASK, 4) &&
  7098. VerifyField<int32_t>(verifier, VT_END_MASK, 4) &&
  7099. VerifyField<int32_t>(verifier, VT_ELLIPSIS_MASK, 4) &&
  7100. VerifyField<int32_t>(verifier, VT_NEW_AXIS_MASK, 4) &&
  7101. VerifyField<int32_t>(verifier, VT_SHRINK_AXIS_MASK, 4) &&
  7102. verifier.EndTable();
  7103. }
  7104. StridedSliceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7105. void UnPackTo(StridedSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7106. static flatbuffers::Offset<StridedSliceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7107. };
  7108. struct StridedSliceOptionsBuilder {
  7109. typedef StridedSliceOptions Table;
  7110. flatbuffers::FlatBufferBuilder &fbb_;
  7111. flatbuffers::uoffset_t start_;
  7112. void add_begin_mask(int32_t begin_mask) {
  7113. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_BEGIN_MASK, begin_mask, 0);
  7114. }
  7115. void add_end_mask(int32_t end_mask) {
  7116. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_END_MASK, end_mask, 0);
  7117. }
  7118. void add_ellipsis_mask(int32_t ellipsis_mask) {
  7119. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_ELLIPSIS_MASK, ellipsis_mask, 0);
  7120. }
  7121. void add_new_axis_mask(int32_t new_axis_mask) {
  7122. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_NEW_AXIS_MASK, new_axis_mask, 0);
  7123. }
  7124. void add_shrink_axis_mask(int32_t shrink_axis_mask) {
  7125. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_SHRINK_AXIS_MASK, shrink_axis_mask, 0);
  7126. }
  7127. explicit StridedSliceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7128. : fbb_(_fbb) {
  7129. start_ = fbb_.StartTable();
  7130. }
  7131. flatbuffers::Offset<StridedSliceOptions> Finish() {
  7132. const auto end = fbb_.EndTable(start_);
  7133. auto o = flatbuffers::Offset<StridedSliceOptions>(end);
  7134. return o;
  7135. }
  7136. };
  7137. inline flatbuffers::Offset<StridedSliceOptions> CreateStridedSliceOptions(
  7138. flatbuffers::FlatBufferBuilder &_fbb,
  7139. int32_t begin_mask = 0,
  7140. int32_t end_mask = 0,
  7141. int32_t ellipsis_mask = 0,
  7142. int32_t new_axis_mask = 0,
  7143. int32_t shrink_axis_mask = 0) {
  7144. StridedSliceOptionsBuilder builder_(_fbb);
  7145. builder_.add_shrink_axis_mask(shrink_axis_mask);
  7146. builder_.add_new_axis_mask(new_axis_mask);
  7147. builder_.add_ellipsis_mask(ellipsis_mask);
  7148. builder_.add_end_mask(end_mask);
  7149. builder_.add_begin_mask(begin_mask);
  7150. return builder_.Finish();
  7151. }
  7152. flatbuffers::Offset<StridedSliceOptions> CreateStridedSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7153. struct LogSoftmaxOptionsT : public flatbuffers::NativeTable {
  7154. typedef LogSoftmaxOptions TableType;
  7155. };
  7156. struct LogSoftmaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7157. typedef LogSoftmaxOptionsT NativeTableType;
  7158. typedef LogSoftmaxOptionsBuilder Builder;
  7159. bool Verify(flatbuffers::Verifier &verifier) const {
  7160. return VerifyTableStart(verifier) &&
  7161. verifier.EndTable();
  7162. }
  7163. LogSoftmaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7164. void UnPackTo(LogSoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7165. static flatbuffers::Offset<LogSoftmaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7166. };
  7167. struct LogSoftmaxOptionsBuilder {
  7168. typedef LogSoftmaxOptions Table;
  7169. flatbuffers::FlatBufferBuilder &fbb_;
  7170. flatbuffers::uoffset_t start_;
  7171. explicit LogSoftmaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7172. : fbb_(_fbb) {
  7173. start_ = fbb_.StartTable();
  7174. }
  7175. flatbuffers::Offset<LogSoftmaxOptions> Finish() {
  7176. const auto end = fbb_.EndTable(start_);
  7177. auto o = flatbuffers::Offset<LogSoftmaxOptions>(end);
  7178. return o;
  7179. }
  7180. };
  7181. inline flatbuffers::Offset<LogSoftmaxOptions> CreateLogSoftmaxOptions(
  7182. flatbuffers::FlatBufferBuilder &_fbb) {
  7183. LogSoftmaxOptionsBuilder builder_(_fbb);
  7184. return builder_.Finish();
  7185. }
  7186. flatbuffers::Offset<LogSoftmaxOptions> CreateLogSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7187. struct CastOptionsT : public flatbuffers::NativeTable {
  7188. typedef CastOptions TableType;
  7189. tflite::TensorType in_data_type = tflite::TensorType_FLOAT32;
  7190. tflite::TensorType out_data_type = tflite::TensorType_FLOAT32;
  7191. };
  7192. struct CastOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7193. typedef CastOptionsT NativeTableType;
  7194. typedef CastOptionsBuilder Builder;
  7195. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7196. VT_IN_DATA_TYPE = 4,
  7197. VT_OUT_DATA_TYPE = 6
  7198. };
  7199. tflite::TensorType in_data_type() const {
  7200. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_IN_DATA_TYPE, 0));
  7201. }
  7202. tflite::TensorType out_data_type() const {
  7203. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUT_DATA_TYPE, 0));
  7204. }
  7205. bool Verify(flatbuffers::Verifier &verifier) const {
  7206. return VerifyTableStart(verifier) &&
  7207. VerifyField<int8_t>(verifier, VT_IN_DATA_TYPE, 1) &&
  7208. VerifyField<int8_t>(verifier, VT_OUT_DATA_TYPE, 1) &&
  7209. verifier.EndTable();
  7210. }
  7211. CastOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7212. void UnPackTo(CastOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7213. static flatbuffers::Offset<CastOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7214. };
  7215. struct CastOptionsBuilder {
  7216. typedef CastOptions Table;
  7217. flatbuffers::FlatBufferBuilder &fbb_;
  7218. flatbuffers::uoffset_t start_;
  7219. void add_in_data_type(tflite::TensorType in_data_type) {
  7220. fbb_.AddElement<int8_t>(CastOptions::VT_IN_DATA_TYPE, static_cast<int8_t>(in_data_type), 0);
  7221. }
  7222. void add_out_data_type(tflite::TensorType out_data_type) {
  7223. fbb_.AddElement<int8_t>(CastOptions::VT_OUT_DATA_TYPE, static_cast<int8_t>(out_data_type), 0);
  7224. }
  7225. explicit CastOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7226. : fbb_(_fbb) {
  7227. start_ = fbb_.StartTable();
  7228. }
  7229. flatbuffers::Offset<CastOptions> Finish() {
  7230. const auto end = fbb_.EndTable(start_);
  7231. auto o = flatbuffers::Offset<CastOptions>(end);
  7232. return o;
  7233. }
  7234. };
  7235. inline flatbuffers::Offset<CastOptions> CreateCastOptions(
  7236. flatbuffers::FlatBufferBuilder &_fbb,
  7237. tflite::TensorType in_data_type = tflite::TensorType_FLOAT32,
  7238. tflite::TensorType out_data_type = tflite::TensorType_FLOAT32) {
  7239. CastOptionsBuilder builder_(_fbb);
  7240. builder_.add_out_data_type(out_data_type);
  7241. builder_.add_in_data_type(in_data_type);
  7242. return builder_.Finish();
  7243. }
  7244. flatbuffers::Offset<CastOptions> CreateCastOptions(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7245. struct DequantizeOptionsT : public flatbuffers::NativeTable {
  7246. typedef DequantizeOptions TableType;
  7247. };
  7248. struct DequantizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7249. typedef DequantizeOptionsT NativeTableType;
  7250. typedef DequantizeOptionsBuilder Builder;
  7251. bool Verify(flatbuffers::Verifier &verifier) const {
  7252. return VerifyTableStart(verifier) &&
  7253. verifier.EndTable();
  7254. }
  7255. DequantizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7256. void UnPackTo(DequantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7257. static flatbuffers::Offset<DequantizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7258. };
  7259. struct DequantizeOptionsBuilder {
  7260. typedef DequantizeOptions Table;
  7261. flatbuffers::FlatBufferBuilder &fbb_;
  7262. flatbuffers::uoffset_t start_;
  7263. explicit DequantizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7264. : fbb_(_fbb) {
  7265. start_ = fbb_.StartTable();
  7266. }
  7267. flatbuffers::Offset<DequantizeOptions> Finish() {
  7268. const auto end = fbb_.EndTable(start_);
  7269. auto o = flatbuffers::Offset<DequantizeOptions>(end);
  7270. return o;
  7271. }
  7272. };
  7273. inline flatbuffers::Offset<DequantizeOptions> CreateDequantizeOptions(
  7274. flatbuffers::FlatBufferBuilder &_fbb) {
  7275. DequantizeOptionsBuilder builder_(_fbb);
  7276. return builder_.Finish();
  7277. }
  7278. flatbuffers::Offset<DequantizeOptions> CreateDequantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7279. struct MaximumMinimumOptionsT : public flatbuffers::NativeTable {
  7280. typedef MaximumMinimumOptions TableType;
  7281. };
  7282. struct MaximumMinimumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7283. typedef MaximumMinimumOptionsT NativeTableType;
  7284. typedef MaximumMinimumOptionsBuilder Builder;
  7285. bool Verify(flatbuffers::Verifier &verifier) const {
  7286. return VerifyTableStart(verifier) &&
  7287. verifier.EndTable();
  7288. }
  7289. MaximumMinimumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7290. void UnPackTo(MaximumMinimumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7291. static flatbuffers::Offset<MaximumMinimumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7292. };
  7293. struct MaximumMinimumOptionsBuilder {
  7294. typedef MaximumMinimumOptions Table;
  7295. flatbuffers::FlatBufferBuilder &fbb_;
  7296. flatbuffers::uoffset_t start_;
  7297. explicit MaximumMinimumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7298. : fbb_(_fbb) {
  7299. start_ = fbb_.StartTable();
  7300. }
  7301. flatbuffers::Offset<MaximumMinimumOptions> Finish() {
  7302. const auto end = fbb_.EndTable(start_);
  7303. auto o = flatbuffers::Offset<MaximumMinimumOptions>(end);
  7304. return o;
  7305. }
  7306. };
  7307. inline flatbuffers::Offset<MaximumMinimumOptions> CreateMaximumMinimumOptions(
  7308. flatbuffers::FlatBufferBuilder &_fbb) {
  7309. MaximumMinimumOptionsBuilder builder_(_fbb);
  7310. return builder_.Finish();
  7311. }
  7312. flatbuffers::Offset<MaximumMinimumOptions> CreateMaximumMinimumOptions(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7313. struct TileOptionsT : public flatbuffers::NativeTable {
  7314. typedef TileOptions TableType;
  7315. };
  7316. struct TileOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7317. typedef TileOptionsT NativeTableType;
  7318. typedef TileOptionsBuilder Builder;
  7319. bool Verify(flatbuffers::Verifier &verifier) const {
  7320. return VerifyTableStart(verifier) &&
  7321. verifier.EndTable();
  7322. }
  7323. TileOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7324. void UnPackTo(TileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7325. static flatbuffers::Offset<TileOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7326. };
  7327. struct TileOptionsBuilder {
  7328. typedef TileOptions Table;
  7329. flatbuffers::FlatBufferBuilder &fbb_;
  7330. flatbuffers::uoffset_t start_;
  7331. explicit TileOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7332. : fbb_(_fbb) {
  7333. start_ = fbb_.StartTable();
  7334. }
  7335. flatbuffers::Offset<TileOptions> Finish() {
  7336. const auto end = fbb_.EndTable(start_);
  7337. auto o = flatbuffers::Offset<TileOptions>(end);
  7338. return o;
  7339. }
  7340. };
  7341. inline flatbuffers::Offset<TileOptions> CreateTileOptions(
  7342. flatbuffers::FlatBufferBuilder &_fbb) {
  7343. TileOptionsBuilder builder_(_fbb);
  7344. return builder_.Finish();
  7345. }
  7346. flatbuffers::Offset<TileOptions> CreateTileOptions(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7347. struct ArgMaxOptionsT : public flatbuffers::NativeTable {
  7348. typedef ArgMaxOptions TableType;
  7349. tflite::TensorType output_type = tflite::TensorType_FLOAT32;
  7350. };
  7351. struct ArgMaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7352. typedef ArgMaxOptionsT NativeTableType;
  7353. typedef ArgMaxOptionsBuilder Builder;
  7354. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7355. VT_OUTPUT_TYPE = 4
  7356. };
  7357. tflite::TensorType output_type() const {
  7358. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUTPUT_TYPE, 0));
  7359. }
  7360. bool Verify(flatbuffers::Verifier &verifier) const {
  7361. return VerifyTableStart(verifier) &&
  7362. VerifyField<int8_t>(verifier, VT_OUTPUT_TYPE, 1) &&
  7363. verifier.EndTable();
  7364. }
  7365. ArgMaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7366. void UnPackTo(ArgMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7367. static flatbuffers::Offset<ArgMaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7368. };
  7369. struct ArgMaxOptionsBuilder {
  7370. typedef ArgMaxOptions Table;
  7371. flatbuffers::FlatBufferBuilder &fbb_;
  7372. flatbuffers::uoffset_t start_;
  7373. void add_output_type(tflite::TensorType output_type) {
  7374. fbb_.AddElement<int8_t>(ArgMaxOptions::VT_OUTPUT_TYPE, static_cast<int8_t>(output_type), 0);
  7375. }
  7376. explicit ArgMaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7377. : fbb_(_fbb) {
  7378. start_ = fbb_.StartTable();
  7379. }
  7380. flatbuffers::Offset<ArgMaxOptions> Finish() {
  7381. const auto end = fbb_.EndTable(start_);
  7382. auto o = flatbuffers::Offset<ArgMaxOptions>(end);
  7383. return o;
  7384. }
  7385. };
  7386. inline flatbuffers::Offset<ArgMaxOptions> CreateArgMaxOptions(
  7387. flatbuffers::FlatBufferBuilder &_fbb,
  7388. tflite::TensorType output_type = tflite::TensorType_FLOAT32) {
  7389. ArgMaxOptionsBuilder builder_(_fbb);
  7390. builder_.add_output_type(output_type);
  7391. return builder_.Finish();
  7392. }
  7393. flatbuffers::Offset<ArgMaxOptions> CreateArgMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7394. struct ArgMinOptionsT : public flatbuffers::NativeTable {
  7395. typedef ArgMinOptions TableType;
  7396. tflite::TensorType output_type = tflite::TensorType_FLOAT32;
  7397. };
  7398. struct ArgMinOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7399. typedef ArgMinOptionsT NativeTableType;
  7400. typedef ArgMinOptionsBuilder Builder;
  7401. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7402. VT_OUTPUT_TYPE = 4
  7403. };
  7404. tflite::TensorType output_type() const {
  7405. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUTPUT_TYPE, 0));
  7406. }
  7407. bool Verify(flatbuffers::Verifier &verifier) const {
  7408. return VerifyTableStart(verifier) &&
  7409. VerifyField<int8_t>(verifier, VT_OUTPUT_TYPE, 1) &&
  7410. verifier.EndTable();
  7411. }
  7412. ArgMinOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7413. void UnPackTo(ArgMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7414. static flatbuffers::Offset<ArgMinOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7415. };
  7416. struct ArgMinOptionsBuilder {
  7417. typedef ArgMinOptions Table;
  7418. flatbuffers::FlatBufferBuilder &fbb_;
  7419. flatbuffers::uoffset_t start_;
  7420. void add_output_type(tflite::TensorType output_type) {
  7421. fbb_.AddElement<int8_t>(ArgMinOptions::VT_OUTPUT_TYPE, static_cast<int8_t>(output_type), 0);
  7422. }
  7423. explicit ArgMinOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7424. : fbb_(_fbb) {
  7425. start_ = fbb_.StartTable();
  7426. }
  7427. flatbuffers::Offset<ArgMinOptions> Finish() {
  7428. const auto end = fbb_.EndTable(start_);
  7429. auto o = flatbuffers::Offset<ArgMinOptions>(end);
  7430. return o;
  7431. }
  7432. };
  7433. inline flatbuffers::Offset<ArgMinOptions> CreateArgMinOptions(
  7434. flatbuffers::FlatBufferBuilder &_fbb,
  7435. tflite::TensorType output_type = tflite::TensorType_FLOAT32) {
  7436. ArgMinOptionsBuilder builder_(_fbb);
  7437. builder_.add_output_type(output_type);
  7438. return builder_.Finish();
  7439. }
  7440. flatbuffers::Offset<ArgMinOptions> CreateArgMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7441. struct GreaterOptionsT : public flatbuffers::NativeTable {
  7442. typedef GreaterOptions TableType;
  7443. };
  7444. struct GreaterOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7445. typedef GreaterOptionsT NativeTableType;
  7446. typedef GreaterOptionsBuilder Builder;
  7447. bool Verify(flatbuffers::Verifier &verifier) const {
  7448. return VerifyTableStart(verifier) &&
  7449. verifier.EndTable();
  7450. }
  7451. GreaterOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7452. void UnPackTo(GreaterOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7453. static flatbuffers::Offset<GreaterOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7454. };
  7455. struct GreaterOptionsBuilder {
  7456. typedef GreaterOptions Table;
  7457. flatbuffers::FlatBufferBuilder &fbb_;
  7458. flatbuffers::uoffset_t start_;
  7459. explicit GreaterOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7460. : fbb_(_fbb) {
  7461. start_ = fbb_.StartTable();
  7462. }
  7463. flatbuffers::Offset<GreaterOptions> Finish() {
  7464. const auto end = fbb_.EndTable(start_);
  7465. auto o = flatbuffers::Offset<GreaterOptions>(end);
  7466. return o;
  7467. }
  7468. };
  7469. inline flatbuffers::Offset<GreaterOptions> CreateGreaterOptions(
  7470. flatbuffers::FlatBufferBuilder &_fbb) {
  7471. GreaterOptionsBuilder builder_(_fbb);
  7472. return builder_.Finish();
  7473. }
  7474. flatbuffers::Offset<GreaterOptions> CreateGreaterOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7475. struct GreaterEqualOptionsT : public flatbuffers::NativeTable {
  7476. typedef GreaterEqualOptions TableType;
  7477. };
  7478. struct GreaterEqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7479. typedef GreaterEqualOptionsT NativeTableType;
  7480. typedef GreaterEqualOptionsBuilder Builder;
  7481. bool Verify(flatbuffers::Verifier &verifier) const {
  7482. return VerifyTableStart(verifier) &&
  7483. verifier.EndTable();
  7484. }
  7485. GreaterEqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7486. void UnPackTo(GreaterEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7487. static flatbuffers::Offset<GreaterEqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7488. };
  7489. struct GreaterEqualOptionsBuilder {
  7490. typedef GreaterEqualOptions Table;
  7491. flatbuffers::FlatBufferBuilder &fbb_;
  7492. flatbuffers::uoffset_t start_;
  7493. explicit GreaterEqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7494. : fbb_(_fbb) {
  7495. start_ = fbb_.StartTable();
  7496. }
  7497. flatbuffers::Offset<GreaterEqualOptions> Finish() {
  7498. const auto end = fbb_.EndTable(start_);
  7499. auto o = flatbuffers::Offset<GreaterEqualOptions>(end);
  7500. return o;
  7501. }
  7502. };
  7503. inline flatbuffers::Offset<GreaterEqualOptions> CreateGreaterEqualOptions(
  7504. flatbuffers::FlatBufferBuilder &_fbb) {
  7505. GreaterEqualOptionsBuilder builder_(_fbb);
  7506. return builder_.Finish();
  7507. }
  7508. flatbuffers::Offset<GreaterEqualOptions> CreateGreaterEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7509. struct LessOptionsT : public flatbuffers::NativeTable {
  7510. typedef LessOptions TableType;
  7511. };
  7512. struct LessOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7513. typedef LessOptionsT NativeTableType;
  7514. typedef LessOptionsBuilder Builder;
  7515. bool Verify(flatbuffers::Verifier &verifier) const {
  7516. return VerifyTableStart(verifier) &&
  7517. verifier.EndTable();
  7518. }
  7519. LessOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7520. void UnPackTo(LessOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7521. static flatbuffers::Offset<LessOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7522. };
  7523. struct LessOptionsBuilder {
  7524. typedef LessOptions Table;
  7525. flatbuffers::FlatBufferBuilder &fbb_;
  7526. flatbuffers::uoffset_t start_;
  7527. explicit LessOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7528. : fbb_(_fbb) {
  7529. start_ = fbb_.StartTable();
  7530. }
  7531. flatbuffers::Offset<LessOptions> Finish() {
  7532. const auto end = fbb_.EndTable(start_);
  7533. auto o = flatbuffers::Offset<LessOptions>(end);
  7534. return o;
  7535. }
  7536. };
  7537. inline flatbuffers::Offset<LessOptions> CreateLessOptions(
  7538. flatbuffers::FlatBufferBuilder &_fbb) {
  7539. LessOptionsBuilder builder_(_fbb);
  7540. return builder_.Finish();
  7541. }
  7542. flatbuffers::Offset<LessOptions> CreateLessOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7543. struct LessEqualOptionsT : public flatbuffers::NativeTable {
  7544. typedef LessEqualOptions TableType;
  7545. };
  7546. struct LessEqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7547. typedef LessEqualOptionsT NativeTableType;
  7548. typedef LessEqualOptionsBuilder Builder;
  7549. bool Verify(flatbuffers::Verifier &verifier) const {
  7550. return VerifyTableStart(verifier) &&
  7551. verifier.EndTable();
  7552. }
  7553. LessEqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7554. void UnPackTo(LessEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7555. static flatbuffers::Offset<LessEqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7556. };
  7557. struct LessEqualOptionsBuilder {
  7558. typedef LessEqualOptions Table;
  7559. flatbuffers::FlatBufferBuilder &fbb_;
  7560. flatbuffers::uoffset_t start_;
  7561. explicit LessEqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7562. : fbb_(_fbb) {
  7563. start_ = fbb_.StartTable();
  7564. }
  7565. flatbuffers::Offset<LessEqualOptions> Finish() {
  7566. const auto end = fbb_.EndTable(start_);
  7567. auto o = flatbuffers::Offset<LessEqualOptions>(end);
  7568. return o;
  7569. }
  7570. };
  7571. inline flatbuffers::Offset<LessEqualOptions> CreateLessEqualOptions(
  7572. flatbuffers::FlatBufferBuilder &_fbb) {
  7573. LessEqualOptionsBuilder builder_(_fbb);
  7574. return builder_.Finish();
  7575. }
  7576. flatbuffers::Offset<LessEqualOptions> CreateLessEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7577. struct NegOptionsT : public flatbuffers::NativeTable {
  7578. typedef NegOptions TableType;
  7579. };
  7580. struct NegOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7581. typedef NegOptionsT NativeTableType;
  7582. typedef NegOptionsBuilder Builder;
  7583. bool Verify(flatbuffers::Verifier &verifier) const {
  7584. return VerifyTableStart(verifier) &&
  7585. verifier.EndTable();
  7586. }
  7587. NegOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7588. void UnPackTo(NegOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7589. static flatbuffers::Offset<NegOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7590. };
  7591. struct NegOptionsBuilder {
  7592. typedef NegOptions Table;
  7593. flatbuffers::FlatBufferBuilder &fbb_;
  7594. flatbuffers::uoffset_t start_;
  7595. explicit NegOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7596. : fbb_(_fbb) {
  7597. start_ = fbb_.StartTable();
  7598. }
  7599. flatbuffers::Offset<NegOptions> Finish() {
  7600. const auto end = fbb_.EndTable(start_);
  7601. auto o = flatbuffers::Offset<NegOptions>(end);
  7602. return o;
  7603. }
  7604. };
  7605. inline flatbuffers::Offset<NegOptions> CreateNegOptions(
  7606. flatbuffers::FlatBufferBuilder &_fbb) {
  7607. NegOptionsBuilder builder_(_fbb);
  7608. return builder_.Finish();
  7609. }
  7610. flatbuffers::Offset<NegOptions> CreateNegOptions(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7611. struct SelectOptionsT : public flatbuffers::NativeTable {
  7612. typedef SelectOptions TableType;
  7613. };
  7614. struct SelectOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7615. typedef SelectOptionsT NativeTableType;
  7616. typedef SelectOptionsBuilder Builder;
  7617. bool Verify(flatbuffers::Verifier &verifier) const {
  7618. return VerifyTableStart(verifier) &&
  7619. verifier.EndTable();
  7620. }
  7621. SelectOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7622. void UnPackTo(SelectOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7623. static flatbuffers::Offset<SelectOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7624. };
  7625. struct SelectOptionsBuilder {
  7626. typedef SelectOptions Table;
  7627. flatbuffers::FlatBufferBuilder &fbb_;
  7628. flatbuffers::uoffset_t start_;
  7629. explicit SelectOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7630. : fbb_(_fbb) {
  7631. start_ = fbb_.StartTable();
  7632. }
  7633. flatbuffers::Offset<SelectOptions> Finish() {
  7634. const auto end = fbb_.EndTable(start_);
  7635. auto o = flatbuffers::Offset<SelectOptions>(end);
  7636. return o;
  7637. }
  7638. };
  7639. inline flatbuffers::Offset<SelectOptions> CreateSelectOptions(
  7640. flatbuffers::FlatBufferBuilder &_fbb) {
  7641. SelectOptionsBuilder builder_(_fbb);
  7642. return builder_.Finish();
  7643. }
  7644. flatbuffers::Offset<SelectOptions> CreateSelectOptions(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7645. struct SliceOptionsT : public flatbuffers::NativeTable {
  7646. typedef SliceOptions TableType;
  7647. };
  7648. struct SliceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7649. typedef SliceOptionsT NativeTableType;
  7650. typedef SliceOptionsBuilder Builder;
  7651. bool Verify(flatbuffers::Verifier &verifier) const {
  7652. return VerifyTableStart(verifier) &&
  7653. verifier.EndTable();
  7654. }
  7655. SliceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7656. void UnPackTo(SliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7657. static flatbuffers::Offset<SliceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7658. };
  7659. struct SliceOptionsBuilder {
  7660. typedef SliceOptions Table;
  7661. flatbuffers::FlatBufferBuilder &fbb_;
  7662. flatbuffers::uoffset_t start_;
  7663. explicit SliceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7664. : fbb_(_fbb) {
  7665. start_ = fbb_.StartTable();
  7666. }
  7667. flatbuffers::Offset<SliceOptions> Finish() {
  7668. const auto end = fbb_.EndTable(start_);
  7669. auto o = flatbuffers::Offset<SliceOptions>(end);
  7670. return o;
  7671. }
  7672. };
  7673. inline flatbuffers::Offset<SliceOptions> CreateSliceOptions(
  7674. flatbuffers::FlatBufferBuilder &_fbb) {
  7675. SliceOptionsBuilder builder_(_fbb);
  7676. return builder_.Finish();
  7677. }
  7678. flatbuffers::Offset<SliceOptions> CreateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7679. struct TransposeConvOptionsT : public flatbuffers::NativeTable {
  7680. typedef TransposeConvOptions TableType;
  7681. tflite::Padding padding = tflite::Padding_SAME;
  7682. int32_t stride_w = 0;
  7683. int32_t stride_h = 0;
  7684. };
  7685. struct TransposeConvOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7686. typedef TransposeConvOptionsT NativeTableType;
  7687. typedef TransposeConvOptionsBuilder Builder;
  7688. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7689. VT_PADDING = 4,
  7690. VT_STRIDE_W = 6,
  7691. VT_STRIDE_H = 8
  7692. };
  7693. tflite::Padding padding() const {
  7694. return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  7695. }
  7696. int32_t stride_w() const {
  7697. return GetField<int32_t>(VT_STRIDE_W, 0);
  7698. }
  7699. int32_t stride_h() const {
  7700. return GetField<int32_t>(VT_STRIDE_H, 0);
  7701. }
  7702. bool Verify(flatbuffers::Verifier &verifier) const {
  7703. return VerifyTableStart(verifier) &&
  7704. VerifyField<int8_t>(verifier, VT_PADDING, 1) &&
  7705. VerifyField<int32_t>(verifier, VT_STRIDE_W, 4) &&
  7706. VerifyField<int32_t>(verifier, VT_STRIDE_H, 4) &&
  7707. verifier.EndTable();
  7708. }
  7709. TransposeConvOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7710. void UnPackTo(TransposeConvOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7711. static flatbuffers::Offset<TransposeConvOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7712. };
  7713. struct TransposeConvOptionsBuilder {
  7714. typedef TransposeConvOptions Table;
  7715. flatbuffers::FlatBufferBuilder &fbb_;
  7716. flatbuffers::uoffset_t start_;
  7717. void add_padding(tflite::Padding padding) {
  7718. fbb_.AddElement<int8_t>(TransposeConvOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  7719. }
  7720. void add_stride_w(int32_t stride_w) {
  7721. fbb_.AddElement<int32_t>(TransposeConvOptions::VT_STRIDE_W, stride_w, 0);
  7722. }
  7723. void add_stride_h(int32_t stride_h) {
  7724. fbb_.AddElement<int32_t>(TransposeConvOptions::VT_STRIDE_H, stride_h, 0);
  7725. }
  7726. explicit TransposeConvOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7727. : fbb_(_fbb) {
  7728. start_ = fbb_.StartTable();
  7729. }
  7730. flatbuffers::Offset<TransposeConvOptions> Finish() {
  7731. const auto end = fbb_.EndTable(start_);
  7732. auto o = flatbuffers::Offset<TransposeConvOptions>(end);
  7733. return o;
  7734. }
  7735. };
  7736. inline flatbuffers::Offset<TransposeConvOptions> CreateTransposeConvOptions(
  7737. flatbuffers::FlatBufferBuilder &_fbb,
  7738. tflite::Padding padding = tflite::Padding_SAME,
  7739. int32_t stride_w = 0,
  7740. int32_t stride_h = 0) {
  7741. TransposeConvOptionsBuilder builder_(_fbb);
  7742. builder_.add_stride_h(stride_h);
  7743. builder_.add_stride_w(stride_w);
  7744. builder_.add_padding(padding);
  7745. return builder_.Finish();
  7746. }
  7747. flatbuffers::Offset<TransposeConvOptions> CreateTransposeConvOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7748. struct ExpandDimsOptionsT : public flatbuffers::NativeTable {
  7749. typedef ExpandDimsOptions TableType;
  7750. };
  7751. struct ExpandDimsOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7752. typedef ExpandDimsOptionsT NativeTableType;
  7753. typedef ExpandDimsOptionsBuilder Builder;
  7754. bool Verify(flatbuffers::Verifier &verifier) const {
  7755. return VerifyTableStart(verifier) &&
  7756. verifier.EndTable();
  7757. }
  7758. ExpandDimsOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7759. void UnPackTo(ExpandDimsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7760. static flatbuffers::Offset<ExpandDimsOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7761. };
  7762. struct ExpandDimsOptionsBuilder {
  7763. typedef ExpandDimsOptions Table;
  7764. flatbuffers::FlatBufferBuilder &fbb_;
  7765. flatbuffers::uoffset_t start_;
  7766. explicit ExpandDimsOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7767. : fbb_(_fbb) {
  7768. start_ = fbb_.StartTable();
  7769. }
  7770. flatbuffers::Offset<ExpandDimsOptions> Finish() {
  7771. const auto end = fbb_.EndTable(start_);
  7772. auto o = flatbuffers::Offset<ExpandDimsOptions>(end);
  7773. return o;
  7774. }
  7775. };
  7776. inline flatbuffers::Offset<ExpandDimsOptions> CreateExpandDimsOptions(
  7777. flatbuffers::FlatBufferBuilder &_fbb) {
  7778. ExpandDimsOptionsBuilder builder_(_fbb);
  7779. return builder_.Finish();
  7780. }
  7781. flatbuffers::Offset<ExpandDimsOptions> CreateExpandDimsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7782. struct SparseToDenseOptionsT : public flatbuffers::NativeTable {
  7783. typedef SparseToDenseOptions TableType;
  7784. bool validate_indices = false;
  7785. };
  7786. struct SparseToDenseOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7787. typedef SparseToDenseOptionsT NativeTableType;
  7788. typedef SparseToDenseOptionsBuilder Builder;
  7789. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7790. VT_VALIDATE_INDICES = 4
  7791. };
  7792. bool validate_indices() const {
  7793. return GetField<uint8_t>(VT_VALIDATE_INDICES, 0) != 0;
  7794. }
  7795. bool Verify(flatbuffers::Verifier &verifier) const {
  7796. return VerifyTableStart(verifier) &&
  7797. VerifyField<uint8_t>(verifier, VT_VALIDATE_INDICES, 1) &&
  7798. verifier.EndTable();
  7799. }
  7800. SparseToDenseOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7801. void UnPackTo(SparseToDenseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7802. static flatbuffers::Offset<SparseToDenseOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7803. };
  7804. struct SparseToDenseOptionsBuilder {
  7805. typedef SparseToDenseOptions Table;
  7806. flatbuffers::FlatBufferBuilder &fbb_;
  7807. flatbuffers::uoffset_t start_;
  7808. void add_validate_indices(bool validate_indices) {
  7809. fbb_.AddElement<uint8_t>(SparseToDenseOptions::VT_VALIDATE_INDICES, static_cast<uint8_t>(validate_indices), 0);
  7810. }
  7811. explicit SparseToDenseOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7812. : fbb_(_fbb) {
  7813. start_ = fbb_.StartTable();
  7814. }
  7815. flatbuffers::Offset<SparseToDenseOptions> Finish() {
  7816. const auto end = fbb_.EndTable(start_);
  7817. auto o = flatbuffers::Offset<SparseToDenseOptions>(end);
  7818. return o;
  7819. }
  7820. };
  7821. inline flatbuffers::Offset<SparseToDenseOptions> CreateSparseToDenseOptions(
  7822. flatbuffers::FlatBufferBuilder &_fbb,
  7823. bool validate_indices = false) {
  7824. SparseToDenseOptionsBuilder builder_(_fbb);
  7825. builder_.add_validate_indices(validate_indices);
  7826. return builder_.Finish();
  7827. }
  7828. flatbuffers::Offset<SparseToDenseOptions> CreateSparseToDenseOptions(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7829. struct EqualOptionsT : public flatbuffers::NativeTable {
  7830. typedef EqualOptions TableType;
  7831. };
  7832. struct EqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7833. typedef EqualOptionsT NativeTableType;
  7834. typedef EqualOptionsBuilder Builder;
  7835. bool Verify(flatbuffers::Verifier &verifier) const {
  7836. return VerifyTableStart(verifier) &&
  7837. verifier.EndTable();
  7838. }
  7839. EqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7840. void UnPackTo(EqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7841. static flatbuffers::Offset<EqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7842. };
  7843. struct EqualOptionsBuilder {
  7844. typedef EqualOptions Table;
  7845. flatbuffers::FlatBufferBuilder &fbb_;
  7846. flatbuffers::uoffset_t start_;
  7847. explicit EqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7848. : fbb_(_fbb) {
  7849. start_ = fbb_.StartTable();
  7850. }
  7851. flatbuffers::Offset<EqualOptions> Finish() {
  7852. const auto end = fbb_.EndTable(start_);
  7853. auto o = flatbuffers::Offset<EqualOptions>(end);
  7854. return o;
  7855. }
  7856. };
  7857. inline flatbuffers::Offset<EqualOptions> CreateEqualOptions(
  7858. flatbuffers::FlatBufferBuilder &_fbb) {
  7859. EqualOptionsBuilder builder_(_fbb);
  7860. return builder_.Finish();
  7861. }
  7862. flatbuffers::Offset<EqualOptions> CreateEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7863. struct NotEqualOptionsT : public flatbuffers::NativeTable {
  7864. typedef NotEqualOptions TableType;
  7865. };
  7866. struct NotEqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7867. typedef NotEqualOptionsT NativeTableType;
  7868. typedef NotEqualOptionsBuilder Builder;
  7869. bool Verify(flatbuffers::Verifier &verifier) const {
  7870. return VerifyTableStart(verifier) &&
  7871. verifier.EndTable();
  7872. }
  7873. NotEqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7874. void UnPackTo(NotEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7875. static flatbuffers::Offset<NotEqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7876. };
  7877. struct NotEqualOptionsBuilder {
  7878. typedef NotEqualOptions Table;
  7879. flatbuffers::FlatBufferBuilder &fbb_;
  7880. flatbuffers::uoffset_t start_;
  7881. explicit NotEqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7882. : fbb_(_fbb) {
  7883. start_ = fbb_.StartTable();
  7884. }
  7885. flatbuffers::Offset<NotEqualOptions> Finish() {
  7886. const auto end = fbb_.EndTable(start_);
  7887. auto o = flatbuffers::Offset<NotEqualOptions>(end);
  7888. return o;
  7889. }
  7890. };
  7891. inline flatbuffers::Offset<NotEqualOptions> CreateNotEqualOptions(
  7892. flatbuffers::FlatBufferBuilder &_fbb) {
  7893. NotEqualOptionsBuilder builder_(_fbb);
  7894. return builder_.Finish();
  7895. }
  7896. flatbuffers::Offset<NotEqualOptions> CreateNotEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7897. struct ShapeOptionsT : public flatbuffers::NativeTable {
  7898. typedef ShapeOptions TableType;
  7899. tflite::TensorType out_type = tflite::TensorType_FLOAT32;
  7900. };
  7901. struct ShapeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7902. typedef ShapeOptionsT NativeTableType;
  7903. typedef ShapeOptionsBuilder Builder;
  7904. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7905. VT_OUT_TYPE = 4
  7906. };
  7907. tflite::TensorType out_type() const {
  7908. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUT_TYPE, 0));
  7909. }
  7910. bool Verify(flatbuffers::Verifier &verifier) const {
  7911. return VerifyTableStart(verifier) &&
  7912. VerifyField<int8_t>(verifier, VT_OUT_TYPE, 1) &&
  7913. verifier.EndTable();
  7914. }
  7915. ShapeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7916. void UnPackTo(ShapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7917. static flatbuffers::Offset<ShapeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7918. };
  7919. struct ShapeOptionsBuilder {
  7920. typedef ShapeOptions Table;
  7921. flatbuffers::FlatBufferBuilder &fbb_;
  7922. flatbuffers::uoffset_t start_;
  7923. void add_out_type(tflite::TensorType out_type) {
  7924. fbb_.AddElement<int8_t>(ShapeOptions::VT_OUT_TYPE, static_cast<int8_t>(out_type), 0);
  7925. }
  7926. explicit ShapeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7927. : fbb_(_fbb) {
  7928. start_ = fbb_.StartTable();
  7929. }
  7930. flatbuffers::Offset<ShapeOptions> Finish() {
  7931. const auto end = fbb_.EndTable(start_);
  7932. auto o = flatbuffers::Offset<ShapeOptions>(end);
  7933. return o;
  7934. }
  7935. };
  7936. inline flatbuffers::Offset<ShapeOptions> CreateShapeOptions(
  7937. flatbuffers::FlatBufferBuilder &_fbb,
  7938. tflite::TensorType out_type = tflite::TensorType_FLOAT32) {
  7939. ShapeOptionsBuilder builder_(_fbb);
  7940. builder_.add_out_type(out_type);
  7941. return builder_.Finish();
  7942. }
  7943. flatbuffers::Offset<ShapeOptions> CreateShapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7944. struct RankOptionsT : public flatbuffers::NativeTable {
  7945. typedef RankOptions TableType;
  7946. };
  7947. struct RankOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7948. typedef RankOptionsT NativeTableType;
  7949. typedef RankOptionsBuilder Builder;
  7950. bool Verify(flatbuffers::Verifier &verifier) const {
  7951. return VerifyTableStart(verifier) &&
  7952. verifier.EndTable();
  7953. }
  7954. RankOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7955. void UnPackTo(RankOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7956. static flatbuffers::Offset<RankOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7957. };
  7958. struct RankOptionsBuilder {
  7959. typedef RankOptions Table;
  7960. flatbuffers::FlatBufferBuilder &fbb_;
  7961. flatbuffers::uoffset_t start_;
  7962. explicit RankOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7963. : fbb_(_fbb) {
  7964. start_ = fbb_.StartTable();
  7965. }
  7966. flatbuffers::Offset<RankOptions> Finish() {
  7967. const auto end = fbb_.EndTable(start_);
  7968. auto o = flatbuffers::Offset<RankOptions>(end);
  7969. return o;
  7970. }
  7971. };
  7972. inline flatbuffers::Offset<RankOptions> CreateRankOptions(
  7973. flatbuffers::FlatBufferBuilder &_fbb) {
  7974. RankOptionsBuilder builder_(_fbb);
  7975. return builder_.Finish();
  7976. }
  7977. flatbuffers::Offset<RankOptions> CreateRankOptions(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7978. struct PowOptionsT : public flatbuffers::NativeTable {
  7979. typedef PowOptions TableType;
  7980. };
  7981. struct PowOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7982. typedef PowOptionsT NativeTableType;
  7983. typedef PowOptionsBuilder Builder;
  7984. bool Verify(flatbuffers::Verifier &verifier) const {
  7985. return VerifyTableStart(verifier) &&
  7986. verifier.EndTable();
  7987. }
  7988. PowOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7989. void UnPackTo(PowOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7990. static flatbuffers::Offset<PowOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7991. };
  7992. struct PowOptionsBuilder {
  7993. typedef PowOptions Table;
  7994. flatbuffers::FlatBufferBuilder &fbb_;
  7995. flatbuffers::uoffset_t start_;
  7996. explicit PowOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7997. : fbb_(_fbb) {
  7998. start_ = fbb_.StartTable();
  7999. }
  8000. flatbuffers::Offset<PowOptions> Finish() {
  8001. const auto end = fbb_.EndTable(start_);
  8002. auto o = flatbuffers::Offset<PowOptions>(end);
  8003. return o;
  8004. }
  8005. };
  8006. inline flatbuffers::Offset<PowOptions> CreatePowOptions(
  8007. flatbuffers::FlatBufferBuilder &_fbb) {
  8008. PowOptionsBuilder builder_(_fbb);
  8009. return builder_.Finish();
  8010. }
  8011. flatbuffers::Offset<PowOptions> CreatePowOptions(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8012. struct FakeQuantOptionsT : public flatbuffers::NativeTable {
  8013. typedef FakeQuantOptions TableType;
  8014. float min = 0.0f;
  8015. float max = 0.0f;
  8016. int32_t num_bits = 0;
  8017. bool narrow_range = false;
  8018. };
  8019. struct FakeQuantOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8020. typedef FakeQuantOptionsT NativeTableType;
  8021. typedef FakeQuantOptionsBuilder Builder;
  8022. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8023. VT_MIN = 4,
  8024. VT_MAX = 6,
  8025. VT_NUM_BITS = 8,
  8026. VT_NARROW_RANGE = 10
  8027. };
  8028. float min() const {
  8029. return GetField<float>(VT_MIN, 0.0f);
  8030. }
  8031. float max() const {
  8032. return GetField<float>(VT_MAX, 0.0f);
  8033. }
  8034. int32_t num_bits() const {
  8035. return GetField<int32_t>(VT_NUM_BITS, 0);
  8036. }
  8037. bool narrow_range() const {
  8038. return GetField<uint8_t>(VT_NARROW_RANGE, 0) != 0;
  8039. }
  8040. bool Verify(flatbuffers::Verifier &verifier) const {
  8041. return VerifyTableStart(verifier) &&
  8042. VerifyField<float>(verifier, VT_MIN, 4) &&
  8043. VerifyField<float>(verifier, VT_MAX, 4) &&
  8044. VerifyField<int32_t>(verifier, VT_NUM_BITS, 4) &&
  8045. VerifyField<uint8_t>(verifier, VT_NARROW_RANGE, 1) &&
  8046. verifier.EndTable();
  8047. }
  8048. FakeQuantOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8049. void UnPackTo(FakeQuantOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8050. static flatbuffers::Offset<FakeQuantOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8051. };
  8052. struct FakeQuantOptionsBuilder {
  8053. typedef FakeQuantOptions Table;
  8054. flatbuffers::FlatBufferBuilder &fbb_;
  8055. flatbuffers::uoffset_t start_;
  8056. void add_min(float min) {
  8057. fbb_.AddElement<float>(FakeQuantOptions::VT_MIN, min, 0.0f);
  8058. }
  8059. void add_max(float max) {
  8060. fbb_.AddElement<float>(FakeQuantOptions::VT_MAX, max, 0.0f);
  8061. }
  8062. void add_num_bits(int32_t num_bits) {
  8063. fbb_.AddElement<int32_t>(FakeQuantOptions::VT_NUM_BITS, num_bits, 0);
  8064. }
  8065. void add_narrow_range(bool narrow_range) {
  8066. fbb_.AddElement<uint8_t>(FakeQuantOptions::VT_NARROW_RANGE, static_cast<uint8_t>(narrow_range), 0);
  8067. }
  8068. explicit FakeQuantOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8069. : fbb_(_fbb) {
  8070. start_ = fbb_.StartTable();
  8071. }
  8072. flatbuffers::Offset<FakeQuantOptions> Finish() {
  8073. const auto end = fbb_.EndTable(start_);
  8074. auto o = flatbuffers::Offset<FakeQuantOptions>(end);
  8075. return o;
  8076. }
  8077. };
  8078. inline flatbuffers::Offset<FakeQuantOptions> CreateFakeQuantOptions(
  8079. flatbuffers::FlatBufferBuilder &_fbb,
  8080. float min = 0.0f,
  8081. float max = 0.0f,
  8082. int32_t num_bits = 0,
  8083. bool narrow_range = false) {
  8084. FakeQuantOptionsBuilder builder_(_fbb);
  8085. builder_.add_num_bits(num_bits);
  8086. builder_.add_max(max);
  8087. builder_.add_min(min);
  8088. builder_.add_narrow_range(narrow_range);
  8089. return builder_.Finish();
  8090. }
  8091. flatbuffers::Offset<FakeQuantOptions> CreateFakeQuantOptions(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8092. struct PackOptionsT : public flatbuffers::NativeTable {
  8093. typedef PackOptions TableType;
  8094. int32_t values_count = 0;
  8095. int32_t axis = 0;
  8096. };
  8097. struct PackOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8098. typedef PackOptionsT NativeTableType;
  8099. typedef PackOptionsBuilder Builder;
  8100. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8101. VT_VALUES_COUNT = 4,
  8102. VT_AXIS = 6
  8103. };
  8104. int32_t values_count() const {
  8105. return GetField<int32_t>(VT_VALUES_COUNT, 0);
  8106. }
  8107. int32_t axis() const {
  8108. return GetField<int32_t>(VT_AXIS, 0);
  8109. }
  8110. bool Verify(flatbuffers::Verifier &verifier) const {
  8111. return VerifyTableStart(verifier) &&
  8112. VerifyField<int32_t>(verifier, VT_VALUES_COUNT, 4) &&
  8113. VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
  8114. verifier.EndTable();
  8115. }
  8116. PackOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8117. void UnPackTo(PackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8118. static flatbuffers::Offset<PackOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8119. };
  8120. struct PackOptionsBuilder {
  8121. typedef PackOptions Table;
  8122. flatbuffers::FlatBufferBuilder &fbb_;
  8123. flatbuffers::uoffset_t start_;
  8124. void add_values_count(int32_t values_count) {
  8125. fbb_.AddElement<int32_t>(PackOptions::VT_VALUES_COUNT, values_count, 0);
  8126. }
  8127. void add_axis(int32_t axis) {
  8128. fbb_.AddElement<int32_t>(PackOptions::VT_AXIS, axis, 0);
  8129. }
  8130. explicit PackOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8131. : fbb_(_fbb) {
  8132. start_ = fbb_.StartTable();
  8133. }
  8134. flatbuffers::Offset<PackOptions> Finish() {
  8135. const auto end = fbb_.EndTable(start_);
  8136. auto o = flatbuffers::Offset<PackOptions>(end);
  8137. return o;
  8138. }
  8139. };
  8140. inline flatbuffers::Offset<PackOptions> CreatePackOptions(
  8141. flatbuffers::FlatBufferBuilder &_fbb,
  8142. int32_t values_count = 0,
  8143. int32_t axis = 0) {
  8144. PackOptionsBuilder builder_(_fbb);
  8145. builder_.add_axis(axis);
  8146. builder_.add_values_count(values_count);
  8147. return builder_.Finish();
  8148. }
  8149. flatbuffers::Offset<PackOptions> CreatePackOptions(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8150. struct LogicalOrOptionsT : public flatbuffers::NativeTable {
  8151. typedef LogicalOrOptions TableType;
  8152. };
  8153. struct LogicalOrOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8154. typedef LogicalOrOptionsT NativeTableType;
  8155. typedef LogicalOrOptionsBuilder Builder;
  8156. bool Verify(flatbuffers::Verifier &verifier) const {
  8157. return VerifyTableStart(verifier) &&
  8158. verifier.EndTable();
  8159. }
  8160. LogicalOrOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8161. void UnPackTo(LogicalOrOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8162. static flatbuffers::Offset<LogicalOrOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8163. };
  8164. struct LogicalOrOptionsBuilder {
  8165. typedef LogicalOrOptions Table;
  8166. flatbuffers::FlatBufferBuilder &fbb_;
  8167. flatbuffers::uoffset_t start_;
  8168. explicit LogicalOrOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8169. : fbb_(_fbb) {
  8170. start_ = fbb_.StartTable();
  8171. }
  8172. flatbuffers::Offset<LogicalOrOptions> Finish() {
  8173. const auto end = fbb_.EndTable(start_);
  8174. auto o = flatbuffers::Offset<LogicalOrOptions>(end);
  8175. return o;
  8176. }
  8177. };
  8178. inline flatbuffers::Offset<LogicalOrOptions> CreateLogicalOrOptions(
  8179. flatbuffers::FlatBufferBuilder &_fbb) {
  8180. LogicalOrOptionsBuilder builder_(_fbb);
  8181. return builder_.Finish();
  8182. }
  8183. flatbuffers::Offset<LogicalOrOptions> CreateLogicalOrOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8184. struct OneHotOptionsT : public flatbuffers::NativeTable {
  8185. typedef OneHotOptions TableType;
  8186. int32_t axis = 0;
  8187. };
  8188. struct OneHotOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8189. typedef OneHotOptionsT NativeTableType;
  8190. typedef OneHotOptionsBuilder Builder;
  8191. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8192. VT_AXIS = 4
  8193. };
  8194. int32_t axis() const {
  8195. return GetField<int32_t>(VT_AXIS, 0);
  8196. }
  8197. bool Verify(flatbuffers::Verifier &verifier) const {
  8198. return VerifyTableStart(verifier) &&
  8199. VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
  8200. verifier.EndTable();
  8201. }
  8202. OneHotOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8203. void UnPackTo(OneHotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8204. static flatbuffers::Offset<OneHotOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8205. };
  8206. struct OneHotOptionsBuilder {
  8207. typedef OneHotOptions Table;
  8208. flatbuffers::FlatBufferBuilder &fbb_;
  8209. flatbuffers::uoffset_t start_;
  8210. void add_axis(int32_t axis) {
  8211. fbb_.AddElement<int32_t>(OneHotOptions::VT_AXIS, axis, 0);
  8212. }
  8213. explicit OneHotOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8214. : fbb_(_fbb) {
  8215. start_ = fbb_.StartTable();
  8216. }
  8217. flatbuffers::Offset<OneHotOptions> Finish() {
  8218. const auto end = fbb_.EndTable(start_);
  8219. auto o = flatbuffers::Offset<OneHotOptions>(end);
  8220. return o;
  8221. }
  8222. };
  8223. inline flatbuffers::Offset<OneHotOptions> CreateOneHotOptions(
  8224. flatbuffers::FlatBufferBuilder &_fbb,
  8225. int32_t axis = 0) {
  8226. OneHotOptionsBuilder builder_(_fbb);
  8227. builder_.add_axis(axis);
  8228. return builder_.Finish();
  8229. }
  8230. flatbuffers::Offset<OneHotOptions> CreateOneHotOptions(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8231. struct AbsOptionsT : public flatbuffers::NativeTable {
  8232. typedef AbsOptions TableType;
  8233. };
  8234. struct AbsOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8235. typedef AbsOptionsT NativeTableType;
  8236. typedef AbsOptionsBuilder Builder;
  8237. bool Verify(flatbuffers::Verifier &verifier) const {
  8238. return VerifyTableStart(verifier) &&
  8239. verifier.EndTable();
  8240. }
  8241. AbsOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8242. void UnPackTo(AbsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8243. static flatbuffers::Offset<AbsOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8244. };
  8245. struct AbsOptionsBuilder {
  8246. typedef AbsOptions Table;
  8247. flatbuffers::FlatBufferBuilder &fbb_;
  8248. flatbuffers::uoffset_t start_;
  8249. explicit AbsOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8250. : fbb_(_fbb) {
  8251. start_ = fbb_.StartTable();
  8252. }
  8253. flatbuffers::Offset<AbsOptions> Finish() {
  8254. const auto end = fbb_.EndTable(start_);
  8255. auto o = flatbuffers::Offset<AbsOptions>(end);
  8256. return o;
  8257. }
  8258. };
  8259. inline flatbuffers::Offset<AbsOptions> CreateAbsOptions(
  8260. flatbuffers::FlatBufferBuilder &_fbb) {
  8261. AbsOptionsBuilder builder_(_fbb);
  8262. return builder_.Finish();
  8263. }
  8264. flatbuffers::Offset<AbsOptions> CreateAbsOptions(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8265. struct HardSwishOptionsT : public flatbuffers::NativeTable {
  8266. typedef HardSwishOptions TableType;
  8267. };
  8268. struct HardSwishOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8269. typedef HardSwishOptionsT NativeTableType;
  8270. typedef HardSwishOptionsBuilder Builder;
  8271. bool Verify(flatbuffers::Verifier &verifier) const {
  8272. return VerifyTableStart(verifier) &&
  8273. verifier.EndTable();
  8274. }
  8275. HardSwishOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8276. void UnPackTo(HardSwishOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8277. static flatbuffers::Offset<HardSwishOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8278. };
  8279. struct HardSwishOptionsBuilder {
  8280. typedef HardSwishOptions Table;
  8281. flatbuffers::FlatBufferBuilder &fbb_;
  8282. flatbuffers::uoffset_t start_;
  8283. explicit HardSwishOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8284. : fbb_(_fbb) {
  8285. start_ = fbb_.StartTable();
  8286. }
  8287. flatbuffers::Offset<HardSwishOptions> Finish() {
  8288. const auto end = fbb_.EndTable(start_);
  8289. auto o = flatbuffers::Offset<HardSwishOptions>(end);
  8290. return o;
  8291. }
  8292. };
  8293. inline flatbuffers::Offset<HardSwishOptions> CreateHardSwishOptions(
  8294. flatbuffers::FlatBufferBuilder &_fbb) {
  8295. HardSwishOptionsBuilder builder_(_fbb);
  8296. return builder_.Finish();
  8297. }
  8298. flatbuffers::Offset<HardSwishOptions> CreateHardSwishOptions(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8299. struct LogicalAndOptionsT : public flatbuffers::NativeTable {
  8300. typedef LogicalAndOptions TableType;
  8301. };
  8302. struct LogicalAndOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8303. typedef LogicalAndOptionsT NativeTableType;
  8304. typedef LogicalAndOptionsBuilder Builder;
  8305. bool Verify(flatbuffers::Verifier &verifier) const {
  8306. return VerifyTableStart(verifier) &&
  8307. verifier.EndTable();
  8308. }
  8309. LogicalAndOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8310. void UnPackTo(LogicalAndOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8311. static flatbuffers::Offset<LogicalAndOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8312. };
  8313. struct LogicalAndOptionsBuilder {
  8314. typedef LogicalAndOptions Table;
  8315. flatbuffers::FlatBufferBuilder &fbb_;
  8316. flatbuffers::uoffset_t start_;
  8317. explicit LogicalAndOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8318. : fbb_(_fbb) {
  8319. start_ = fbb_.StartTable();
  8320. }
  8321. flatbuffers::Offset<LogicalAndOptions> Finish() {
  8322. const auto end = fbb_.EndTable(start_);
  8323. auto o = flatbuffers::Offset<LogicalAndOptions>(end);
  8324. return o;
  8325. }
  8326. };
  8327. inline flatbuffers::Offset<LogicalAndOptions> CreateLogicalAndOptions(
  8328. flatbuffers::FlatBufferBuilder &_fbb) {
  8329. LogicalAndOptionsBuilder builder_(_fbb);
  8330. return builder_.Finish();
  8331. }
  8332. flatbuffers::Offset<LogicalAndOptions> CreateLogicalAndOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8333. struct LogicalNotOptionsT : public flatbuffers::NativeTable {
  8334. typedef LogicalNotOptions TableType;
  8335. };
  8336. struct LogicalNotOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8337. typedef LogicalNotOptionsT NativeTableType;
  8338. typedef LogicalNotOptionsBuilder Builder;
  8339. bool Verify(flatbuffers::Verifier &verifier) const {
  8340. return VerifyTableStart(verifier) &&
  8341. verifier.EndTable();
  8342. }
  8343. LogicalNotOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8344. void UnPackTo(LogicalNotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8345. static flatbuffers::Offset<LogicalNotOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8346. };
  8347. struct LogicalNotOptionsBuilder {
  8348. typedef LogicalNotOptions Table;
  8349. flatbuffers::FlatBufferBuilder &fbb_;
  8350. flatbuffers::uoffset_t start_;
  8351. explicit LogicalNotOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8352. : fbb_(_fbb) {
  8353. start_ = fbb_.StartTable();
  8354. }
  8355. flatbuffers::Offset<LogicalNotOptions> Finish() {
  8356. const auto end = fbb_.EndTable(start_);
  8357. auto o = flatbuffers::Offset<LogicalNotOptions>(end);
  8358. return o;
  8359. }
  8360. };
  8361. inline flatbuffers::Offset<LogicalNotOptions> CreateLogicalNotOptions(
  8362. flatbuffers::FlatBufferBuilder &_fbb) {
  8363. LogicalNotOptionsBuilder builder_(_fbb);
  8364. return builder_.Finish();
  8365. }
  8366. flatbuffers::Offset<LogicalNotOptions> CreateLogicalNotOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8367. struct UnpackOptionsT : public flatbuffers::NativeTable {
  8368. typedef UnpackOptions TableType;
  8369. int32_t num = 0;
  8370. int32_t axis = 0;
  8371. };
  8372. struct UnpackOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8373. typedef UnpackOptionsT NativeTableType;
  8374. typedef UnpackOptionsBuilder Builder;
  8375. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8376. VT_NUM = 4,
  8377. VT_AXIS = 6
  8378. };
  8379. int32_t num() const {
  8380. return GetField<int32_t>(VT_NUM, 0);
  8381. }
  8382. int32_t axis() const {
  8383. return GetField<int32_t>(VT_AXIS, 0);
  8384. }
  8385. bool Verify(flatbuffers::Verifier &verifier) const {
  8386. return VerifyTableStart(verifier) &&
  8387. VerifyField<int32_t>(verifier, VT_NUM, 4) &&
  8388. VerifyField<int32_t>(verifier, VT_AXIS, 4) &&
  8389. verifier.EndTable();
  8390. }
  8391. UnpackOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8392. void UnPackTo(UnpackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8393. static flatbuffers::Offset<UnpackOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8394. };
  8395. struct UnpackOptionsBuilder {
  8396. typedef UnpackOptions Table;
  8397. flatbuffers::FlatBufferBuilder &fbb_;
  8398. flatbuffers::uoffset_t start_;
  8399. void add_num(int32_t num) {
  8400. fbb_.AddElement<int32_t>(UnpackOptions::VT_NUM, num, 0);
  8401. }
  8402. void add_axis(int32_t axis) {
  8403. fbb_.AddElement<int32_t>(UnpackOptions::VT_AXIS, axis, 0);
  8404. }
  8405. explicit UnpackOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8406. : fbb_(_fbb) {
  8407. start_ = fbb_.StartTable();
  8408. }
  8409. flatbuffers::Offset<UnpackOptions> Finish() {
  8410. const auto end = fbb_.EndTable(start_);
  8411. auto o = flatbuffers::Offset<UnpackOptions>(end);
  8412. return o;
  8413. }
  8414. };
  8415. inline flatbuffers::Offset<UnpackOptions> CreateUnpackOptions(
  8416. flatbuffers::FlatBufferBuilder &_fbb,
  8417. int32_t num = 0,
  8418. int32_t axis = 0) {
  8419. UnpackOptionsBuilder builder_(_fbb);
  8420. builder_.add_axis(axis);
  8421. builder_.add_num(num);
  8422. return builder_.Finish();
  8423. }
  8424. flatbuffers::Offset<UnpackOptions> CreateUnpackOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8425. struct FloorDivOptionsT : public flatbuffers::NativeTable {
  8426. typedef FloorDivOptions TableType;
  8427. };
  8428. struct FloorDivOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8429. typedef FloorDivOptionsT NativeTableType;
  8430. typedef FloorDivOptionsBuilder Builder;
  8431. bool Verify(flatbuffers::Verifier &verifier) const {
  8432. return VerifyTableStart(verifier) &&
  8433. verifier.EndTable();
  8434. }
  8435. FloorDivOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8436. void UnPackTo(FloorDivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8437. static flatbuffers::Offset<FloorDivOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8438. };
  8439. struct FloorDivOptionsBuilder {
  8440. typedef FloorDivOptions Table;
  8441. flatbuffers::FlatBufferBuilder &fbb_;
  8442. flatbuffers::uoffset_t start_;
  8443. explicit FloorDivOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8444. : fbb_(_fbb) {
  8445. start_ = fbb_.StartTable();
  8446. }
  8447. flatbuffers::Offset<FloorDivOptions> Finish() {
  8448. const auto end = fbb_.EndTable(start_);
  8449. auto o = flatbuffers::Offset<FloorDivOptions>(end);
  8450. return o;
  8451. }
  8452. };
  8453. inline flatbuffers::Offset<FloorDivOptions> CreateFloorDivOptions(
  8454. flatbuffers::FlatBufferBuilder &_fbb) {
  8455. FloorDivOptionsBuilder builder_(_fbb);
  8456. return builder_.Finish();
  8457. }
  8458. flatbuffers::Offset<FloorDivOptions> CreateFloorDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8459. struct SquareOptionsT : public flatbuffers::NativeTable {
  8460. typedef SquareOptions TableType;
  8461. };
  8462. struct SquareOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8463. typedef SquareOptionsT NativeTableType;
  8464. typedef SquareOptionsBuilder Builder;
  8465. bool Verify(flatbuffers::Verifier &verifier) const {
  8466. return VerifyTableStart(verifier) &&
  8467. verifier.EndTable();
  8468. }
  8469. SquareOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8470. void UnPackTo(SquareOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8471. static flatbuffers::Offset<SquareOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8472. };
  8473. struct SquareOptionsBuilder {
  8474. typedef SquareOptions Table;
  8475. flatbuffers::FlatBufferBuilder &fbb_;
  8476. flatbuffers::uoffset_t start_;
  8477. explicit SquareOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8478. : fbb_(_fbb) {
  8479. start_ = fbb_.StartTable();
  8480. }
  8481. flatbuffers::Offset<SquareOptions> Finish() {
  8482. const auto end = fbb_.EndTable(start_);
  8483. auto o = flatbuffers::Offset<SquareOptions>(end);
  8484. return o;
  8485. }
  8486. };
  8487. inline flatbuffers::Offset<SquareOptions> CreateSquareOptions(
  8488. flatbuffers::FlatBufferBuilder &_fbb) {
  8489. SquareOptionsBuilder builder_(_fbb);
  8490. return builder_.Finish();
  8491. }
  8492. flatbuffers::Offset<SquareOptions> CreateSquareOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8493. struct ZerosLikeOptionsT : public flatbuffers::NativeTable {
  8494. typedef ZerosLikeOptions TableType;
  8495. };
  8496. struct ZerosLikeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8497. typedef ZerosLikeOptionsT NativeTableType;
  8498. typedef ZerosLikeOptionsBuilder Builder;
  8499. bool Verify(flatbuffers::Verifier &verifier) const {
  8500. return VerifyTableStart(verifier) &&
  8501. verifier.EndTable();
  8502. }
  8503. ZerosLikeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8504. void UnPackTo(ZerosLikeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8505. static flatbuffers::Offset<ZerosLikeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8506. };
  8507. struct ZerosLikeOptionsBuilder {
  8508. typedef ZerosLikeOptions Table;
  8509. flatbuffers::FlatBufferBuilder &fbb_;
  8510. flatbuffers::uoffset_t start_;
  8511. explicit ZerosLikeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8512. : fbb_(_fbb) {
  8513. start_ = fbb_.StartTable();
  8514. }
  8515. flatbuffers::Offset<ZerosLikeOptions> Finish() {
  8516. const auto end = fbb_.EndTable(start_);
  8517. auto o = flatbuffers::Offset<ZerosLikeOptions>(end);
  8518. return o;
  8519. }
  8520. };
  8521. inline flatbuffers::Offset<ZerosLikeOptions> CreateZerosLikeOptions(
  8522. flatbuffers::FlatBufferBuilder &_fbb) {
  8523. ZerosLikeOptionsBuilder builder_(_fbb);
  8524. return builder_.Finish();
  8525. }
  8526. flatbuffers::Offset<ZerosLikeOptions> CreateZerosLikeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8527. struct FillOptionsT : public flatbuffers::NativeTable {
  8528. typedef FillOptions TableType;
  8529. };
  8530. struct FillOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8531. typedef FillOptionsT NativeTableType;
  8532. typedef FillOptionsBuilder Builder;
  8533. bool Verify(flatbuffers::Verifier &verifier) const {
  8534. return VerifyTableStart(verifier) &&
  8535. verifier.EndTable();
  8536. }
  8537. FillOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8538. void UnPackTo(FillOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8539. static flatbuffers::Offset<FillOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8540. };
  8541. struct FillOptionsBuilder {
  8542. typedef FillOptions Table;
  8543. flatbuffers::FlatBufferBuilder &fbb_;
  8544. flatbuffers::uoffset_t start_;
  8545. explicit FillOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8546. : fbb_(_fbb) {
  8547. start_ = fbb_.StartTable();
  8548. }
  8549. flatbuffers::Offset<FillOptions> Finish() {
  8550. const auto end = fbb_.EndTable(start_);
  8551. auto o = flatbuffers::Offset<FillOptions>(end);
  8552. return o;
  8553. }
  8554. };
  8555. inline flatbuffers::Offset<FillOptions> CreateFillOptions(
  8556. flatbuffers::FlatBufferBuilder &_fbb) {
  8557. FillOptionsBuilder builder_(_fbb);
  8558. return builder_.Finish();
  8559. }
  8560. flatbuffers::Offset<FillOptions> CreateFillOptions(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8561. struct FloorModOptionsT : public flatbuffers::NativeTable {
  8562. typedef FloorModOptions TableType;
  8563. };
  8564. struct FloorModOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8565. typedef FloorModOptionsT NativeTableType;
  8566. typedef FloorModOptionsBuilder Builder;
  8567. bool Verify(flatbuffers::Verifier &verifier) const {
  8568. return VerifyTableStart(verifier) &&
  8569. verifier.EndTable();
  8570. }
  8571. FloorModOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8572. void UnPackTo(FloorModOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8573. static flatbuffers::Offset<FloorModOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8574. };
  8575. struct FloorModOptionsBuilder {
  8576. typedef FloorModOptions Table;
  8577. flatbuffers::FlatBufferBuilder &fbb_;
  8578. flatbuffers::uoffset_t start_;
  8579. explicit FloorModOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8580. : fbb_(_fbb) {
  8581. start_ = fbb_.StartTable();
  8582. }
  8583. flatbuffers::Offset<FloorModOptions> Finish() {
  8584. const auto end = fbb_.EndTable(start_);
  8585. auto o = flatbuffers::Offset<FloorModOptions>(end);
  8586. return o;
  8587. }
  8588. };
  8589. inline flatbuffers::Offset<FloorModOptions> CreateFloorModOptions(
  8590. flatbuffers::FlatBufferBuilder &_fbb) {
  8591. FloorModOptionsBuilder builder_(_fbb);
  8592. return builder_.Finish();
  8593. }
  8594. flatbuffers::Offset<FloorModOptions> CreateFloorModOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8595. struct RangeOptionsT : public flatbuffers::NativeTable {
  8596. typedef RangeOptions TableType;
  8597. };
  8598. struct RangeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8599. typedef RangeOptionsT NativeTableType;
  8600. typedef RangeOptionsBuilder Builder;
  8601. bool Verify(flatbuffers::Verifier &verifier) const {
  8602. return VerifyTableStart(verifier) &&
  8603. verifier.EndTable();
  8604. }
  8605. RangeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8606. void UnPackTo(RangeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8607. static flatbuffers::Offset<RangeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8608. };
  8609. struct RangeOptionsBuilder {
  8610. typedef RangeOptions Table;
  8611. flatbuffers::FlatBufferBuilder &fbb_;
  8612. flatbuffers::uoffset_t start_;
  8613. explicit RangeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8614. : fbb_(_fbb) {
  8615. start_ = fbb_.StartTable();
  8616. }
  8617. flatbuffers::Offset<RangeOptions> Finish() {
  8618. const auto end = fbb_.EndTable(start_);
  8619. auto o = flatbuffers::Offset<RangeOptions>(end);
  8620. return o;
  8621. }
  8622. };
  8623. inline flatbuffers::Offset<RangeOptions> CreateRangeOptions(
  8624. flatbuffers::FlatBufferBuilder &_fbb) {
  8625. RangeOptionsBuilder builder_(_fbb);
  8626. return builder_.Finish();
  8627. }
  8628. flatbuffers::Offset<RangeOptions> CreateRangeOptions(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8629. struct LeakyReluOptionsT : public flatbuffers::NativeTable {
  8630. typedef LeakyReluOptions TableType;
  8631. float alpha = 0.0f;
  8632. };
  8633. struct LeakyReluOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8634. typedef LeakyReluOptionsT NativeTableType;
  8635. typedef LeakyReluOptionsBuilder Builder;
  8636. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8637. VT_ALPHA = 4
  8638. };
  8639. float alpha() const {
  8640. return GetField<float>(VT_ALPHA, 0.0f);
  8641. }
  8642. bool Verify(flatbuffers::Verifier &verifier) const {
  8643. return VerifyTableStart(verifier) &&
  8644. VerifyField<float>(verifier, VT_ALPHA, 4) &&
  8645. verifier.EndTable();
  8646. }
  8647. LeakyReluOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8648. void UnPackTo(LeakyReluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8649. static flatbuffers::Offset<LeakyReluOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8650. };
  8651. struct LeakyReluOptionsBuilder {
  8652. typedef LeakyReluOptions Table;
  8653. flatbuffers::FlatBufferBuilder &fbb_;
  8654. flatbuffers::uoffset_t start_;
  8655. void add_alpha(float alpha) {
  8656. fbb_.AddElement<float>(LeakyReluOptions::VT_ALPHA, alpha, 0.0f);
  8657. }
  8658. explicit LeakyReluOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8659. : fbb_(_fbb) {
  8660. start_ = fbb_.StartTable();
  8661. }
  8662. flatbuffers::Offset<LeakyReluOptions> Finish() {
  8663. const auto end = fbb_.EndTable(start_);
  8664. auto o = flatbuffers::Offset<LeakyReluOptions>(end);
  8665. return o;
  8666. }
  8667. };
  8668. inline flatbuffers::Offset<LeakyReluOptions> CreateLeakyReluOptions(
  8669. flatbuffers::FlatBufferBuilder &_fbb,
  8670. float alpha = 0.0f) {
  8671. LeakyReluOptionsBuilder builder_(_fbb);
  8672. builder_.add_alpha(alpha);
  8673. return builder_.Finish();
  8674. }
  8675. flatbuffers::Offset<LeakyReluOptions> CreateLeakyReluOptions(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8676. struct SquaredDifferenceOptionsT : public flatbuffers::NativeTable {
  8677. typedef SquaredDifferenceOptions TableType;
  8678. };
  8679. struct SquaredDifferenceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8680. typedef SquaredDifferenceOptionsT NativeTableType;
  8681. typedef SquaredDifferenceOptionsBuilder Builder;
  8682. bool Verify(flatbuffers::Verifier &verifier) const {
  8683. return VerifyTableStart(verifier) &&
  8684. verifier.EndTable();
  8685. }
  8686. SquaredDifferenceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8687. void UnPackTo(SquaredDifferenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8688. static flatbuffers::Offset<SquaredDifferenceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8689. };
  8690. struct SquaredDifferenceOptionsBuilder {
  8691. typedef SquaredDifferenceOptions Table;
  8692. flatbuffers::FlatBufferBuilder &fbb_;
  8693. flatbuffers::uoffset_t start_;
  8694. explicit SquaredDifferenceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8695. : fbb_(_fbb) {
  8696. start_ = fbb_.StartTable();
  8697. }
  8698. flatbuffers::Offset<SquaredDifferenceOptions> Finish() {
  8699. const auto end = fbb_.EndTable(start_);
  8700. auto o = flatbuffers::Offset<SquaredDifferenceOptions>(end);
  8701. return o;
  8702. }
  8703. };
  8704. inline flatbuffers::Offset<SquaredDifferenceOptions> CreateSquaredDifferenceOptions(
  8705. flatbuffers::FlatBufferBuilder &_fbb) {
  8706. SquaredDifferenceOptionsBuilder builder_(_fbb);
  8707. return builder_.Finish();
  8708. }
  8709. flatbuffers::Offset<SquaredDifferenceOptions> CreateSquaredDifferenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8710. struct MirrorPadOptionsT : public flatbuffers::NativeTable {
  8711. typedef MirrorPadOptions TableType;
  8712. tflite::MirrorPadMode mode = tflite::MirrorPadMode_REFLECT;
  8713. };
  8714. struct MirrorPadOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8715. typedef MirrorPadOptionsT NativeTableType;
  8716. typedef MirrorPadOptionsBuilder Builder;
  8717. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8718. VT_MODE = 4
  8719. };
  8720. tflite::MirrorPadMode mode() const {
  8721. return static_cast<tflite::MirrorPadMode>(GetField<int8_t>(VT_MODE, 0));
  8722. }
  8723. bool Verify(flatbuffers::Verifier &verifier) const {
  8724. return VerifyTableStart(verifier) &&
  8725. VerifyField<int8_t>(verifier, VT_MODE, 1) &&
  8726. verifier.EndTable();
  8727. }
  8728. MirrorPadOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8729. void UnPackTo(MirrorPadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8730. static flatbuffers::Offset<MirrorPadOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8731. };
  8732. struct MirrorPadOptionsBuilder {
  8733. typedef MirrorPadOptions Table;
  8734. flatbuffers::FlatBufferBuilder &fbb_;
  8735. flatbuffers::uoffset_t start_;
  8736. void add_mode(tflite::MirrorPadMode mode) {
  8737. fbb_.AddElement<int8_t>(MirrorPadOptions::VT_MODE, static_cast<int8_t>(mode), 0);
  8738. }
  8739. explicit MirrorPadOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8740. : fbb_(_fbb) {
  8741. start_ = fbb_.StartTable();
  8742. }
  8743. flatbuffers::Offset<MirrorPadOptions> Finish() {
  8744. const auto end = fbb_.EndTable(start_);
  8745. auto o = flatbuffers::Offset<MirrorPadOptions>(end);
  8746. return o;
  8747. }
  8748. };
  8749. inline flatbuffers::Offset<MirrorPadOptions> CreateMirrorPadOptions(
  8750. flatbuffers::FlatBufferBuilder &_fbb,
  8751. tflite::MirrorPadMode mode = tflite::MirrorPadMode_REFLECT) {
  8752. MirrorPadOptionsBuilder builder_(_fbb);
  8753. builder_.add_mode(mode);
  8754. return builder_.Finish();
  8755. }
  8756. flatbuffers::Offset<MirrorPadOptions> CreateMirrorPadOptions(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8757. struct UniqueOptionsT : public flatbuffers::NativeTable {
  8758. typedef UniqueOptions TableType;
  8759. tflite::TensorType idx_out_type = tflite::TensorType_INT32;
  8760. };
  8761. struct UniqueOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8762. typedef UniqueOptionsT NativeTableType;
  8763. typedef UniqueOptionsBuilder Builder;
  8764. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8765. VT_IDX_OUT_TYPE = 4
  8766. };
  8767. tflite::TensorType idx_out_type() const {
  8768. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_IDX_OUT_TYPE, 2));
  8769. }
  8770. bool Verify(flatbuffers::Verifier &verifier) const {
  8771. return VerifyTableStart(verifier) &&
  8772. VerifyField<int8_t>(verifier, VT_IDX_OUT_TYPE, 1) &&
  8773. verifier.EndTable();
  8774. }
  8775. UniqueOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8776. void UnPackTo(UniqueOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8777. static flatbuffers::Offset<UniqueOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8778. };
  8779. struct UniqueOptionsBuilder {
  8780. typedef UniqueOptions Table;
  8781. flatbuffers::FlatBufferBuilder &fbb_;
  8782. flatbuffers::uoffset_t start_;
  8783. void add_idx_out_type(tflite::TensorType idx_out_type) {
  8784. fbb_.AddElement<int8_t>(UniqueOptions::VT_IDX_OUT_TYPE, static_cast<int8_t>(idx_out_type), 2);
  8785. }
  8786. explicit UniqueOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8787. : fbb_(_fbb) {
  8788. start_ = fbb_.StartTable();
  8789. }
  8790. flatbuffers::Offset<UniqueOptions> Finish() {
  8791. const auto end = fbb_.EndTable(start_);
  8792. auto o = flatbuffers::Offset<UniqueOptions>(end);
  8793. return o;
  8794. }
  8795. };
  8796. inline flatbuffers::Offset<UniqueOptions> CreateUniqueOptions(
  8797. flatbuffers::FlatBufferBuilder &_fbb,
  8798. tflite::TensorType idx_out_type = tflite::TensorType_INT32) {
  8799. UniqueOptionsBuilder builder_(_fbb);
  8800. builder_.add_idx_out_type(idx_out_type);
  8801. return builder_.Finish();
  8802. }
  8803. flatbuffers::Offset<UniqueOptions> CreateUniqueOptions(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8804. struct ReverseV2OptionsT : public flatbuffers::NativeTable {
  8805. typedef ReverseV2Options TableType;
  8806. };
  8807. struct ReverseV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8808. typedef ReverseV2OptionsT NativeTableType;
  8809. typedef ReverseV2OptionsBuilder Builder;
  8810. bool Verify(flatbuffers::Verifier &verifier) const {
  8811. return VerifyTableStart(verifier) &&
  8812. verifier.EndTable();
  8813. }
  8814. ReverseV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8815. void UnPackTo(ReverseV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8816. static flatbuffers::Offset<ReverseV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8817. };
  8818. struct ReverseV2OptionsBuilder {
  8819. typedef ReverseV2Options Table;
  8820. flatbuffers::FlatBufferBuilder &fbb_;
  8821. flatbuffers::uoffset_t start_;
  8822. explicit ReverseV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8823. : fbb_(_fbb) {
  8824. start_ = fbb_.StartTable();
  8825. }
  8826. flatbuffers::Offset<ReverseV2Options> Finish() {
  8827. const auto end = fbb_.EndTable(start_);
  8828. auto o = flatbuffers::Offset<ReverseV2Options>(end);
  8829. return o;
  8830. }
  8831. };
  8832. inline flatbuffers::Offset<ReverseV2Options> CreateReverseV2Options(
  8833. flatbuffers::FlatBufferBuilder &_fbb) {
  8834. ReverseV2OptionsBuilder builder_(_fbb);
  8835. return builder_.Finish();
  8836. }
  8837. flatbuffers::Offset<ReverseV2Options> CreateReverseV2Options(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8838. struct AddNOptionsT : public flatbuffers::NativeTable {
  8839. typedef AddNOptions TableType;
  8840. };
  8841. struct AddNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8842. typedef AddNOptionsT NativeTableType;
  8843. typedef AddNOptionsBuilder Builder;
  8844. bool Verify(flatbuffers::Verifier &verifier) const {
  8845. return VerifyTableStart(verifier) &&
  8846. verifier.EndTable();
  8847. }
  8848. AddNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8849. void UnPackTo(AddNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8850. static flatbuffers::Offset<AddNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8851. };
  8852. struct AddNOptionsBuilder {
  8853. typedef AddNOptions Table;
  8854. flatbuffers::FlatBufferBuilder &fbb_;
  8855. flatbuffers::uoffset_t start_;
  8856. explicit AddNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8857. : fbb_(_fbb) {
  8858. start_ = fbb_.StartTable();
  8859. }
  8860. flatbuffers::Offset<AddNOptions> Finish() {
  8861. const auto end = fbb_.EndTable(start_);
  8862. auto o = flatbuffers::Offset<AddNOptions>(end);
  8863. return o;
  8864. }
  8865. };
  8866. inline flatbuffers::Offset<AddNOptions> CreateAddNOptions(
  8867. flatbuffers::FlatBufferBuilder &_fbb) {
  8868. AddNOptionsBuilder builder_(_fbb);
  8869. return builder_.Finish();
  8870. }
  8871. flatbuffers::Offset<AddNOptions> CreateAddNOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8872. struct GatherNdOptionsT : public flatbuffers::NativeTable {
  8873. typedef GatherNdOptions TableType;
  8874. };
  8875. struct GatherNdOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8876. typedef GatherNdOptionsT NativeTableType;
  8877. typedef GatherNdOptionsBuilder Builder;
  8878. bool Verify(flatbuffers::Verifier &verifier) const {
  8879. return VerifyTableStart(verifier) &&
  8880. verifier.EndTable();
  8881. }
  8882. GatherNdOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8883. void UnPackTo(GatherNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8884. static flatbuffers::Offset<GatherNdOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8885. };
  8886. struct GatherNdOptionsBuilder {
  8887. typedef GatherNdOptions Table;
  8888. flatbuffers::FlatBufferBuilder &fbb_;
  8889. flatbuffers::uoffset_t start_;
  8890. explicit GatherNdOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8891. : fbb_(_fbb) {
  8892. start_ = fbb_.StartTable();
  8893. }
  8894. flatbuffers::Offset<GatherNdOptions> Finish() {
  8895. const auto end = fbb_.EndTable(start_);
  8896. auto o = flatbuffers::Offset<GatherNdOptions>(end);
  8897. return o;
  8898. }
  8899. };
  8900. inline flatbuffers::Offset<GatherNdOptions> CreateGatherNdOptions(
  8901. flatbuffers::FlatBufferBuilder &_fbb) {
  8902. GatherNdOptionsBuilder builder_(_fbb);
  8903. return builder_.Finish();
  8904. }
  8905. flatbuffers::Offset<GatherNdOptions> CreateGatherNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8906. struct WhereOptionsT : public flatbuffers::NativeTable {
  8907. typedef WhereOptions TableType;
  8908. };
  8909. struct WhereOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8910. typedef WhereOptionsT NativeTableType;
  8911. typedef WhereOptionsBuilder Builder;
  8912. bool Verify(flatbuffers::Verifier &verifier) const {
  8913. return VerifyTableStart(verifier) &&
  8914. verifier.EndTable();
  8915. }
  8916. WhereOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8917. void UnPackTo(WhereOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8918. static flatbuffers::Offset<WhereOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8919. };
  8920. struct WhereOptionsBuilder {
  8921. typedef WhereOptions Table;
  8922. flatbuffers::FlatBufferBuilder &fbb_;
  8923. flatbuffers::uoffset_t start_;
  8924. explicit WhereOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8925. : fbb_(_fbb) {
  8926. start_ = fbb_.StartTable();
  8927. }
  8928. flatbuffers::Offset<WhereOptions> Finish() {
  8929. const auto end = fbb_.EndTable(start_);
  8930. auto o = flatbuffers::Offset<WhereOptions>(end);
  8931. return o;
  8932. }
  8933. };
  8934. inline flatbuffers::Offset<WhereOptions> CreateWhereOptions(
  8935. flatbuffers::FlatBufferBuilder &_fbb) {
  8936. WhereOptionsBuilder builder_(_fbb);
  8937. return builder_.Finish();
  8938. }
  8939. flatbuffers::Offset<WhereOptions> CreateWhereOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8940. struct ReverseSequenceOptionsT : public flatbuffers::NativeTable {
  8941. typedef ReverseSequenceOptions TableType;
  8942. int32_t seq_dim = 0;
  8943. int32_t batch_dim = 0;
  8944. };
  8945. struct ReverseSequenceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8946. typedef ReverseSequenceOptionsT NativeTableType;
  8947. typedef ReverseSequenceOptionsBuilder Builder;
  8948. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8949. VT_SEQ_DIM = 4,
  8950. VT_BATCH_DIM = 6
  8951. };
  8952. int32_t seq_dim() const {
  8953. return GetField<int32_t>(VT_SEQ_DIM, 0);
  8954. }
  8955. int32_t batch_dim() const {
  8956. return GetField<int32_t>(VT_BATCH_DIM, 0);
  8957. }
  8958. bool Verify(flatbuffers::Verifier &verifier) const {
  8959. return VerifyTableStart(verifier) &&
  8960. VerifyField<int32_t>(verifier, VT_SEQ_DIM, 4) &&
  8961. VerifyField<int32_t>(verifier, VT_BATCH_DIM, 4) &&
  8962. verifier.EndTable();
  8963. }
  8964. ReverseSequenceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8965. void UnPackTo(ReverseSequenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8966. static flatbuffers::Offset<ReverseSequenceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8967. };
  8968. struct ReverseSequenceOptionsBuilder {
  8969. typedef ReverseSequenceOptions Table;
  8970. flatbuffers::FlatBufferBuilder &fbb_;
  8971. flatbuffers::uoffset_t start_;
  8972. void add_seq_dim(int32_t seq_dim) {
  8973. fbb_.AddElement<int32_t>(ReverseSequenceOptions::VT_SEQ_DIM, seq_dim, 0);
  8974. }
  8975. void add_batch_dim(int32_t batch_dim) {
  8976. fbb_.AddElement<int32_t>(ReverseSequenceOptions::VT_BATCH_DIM, batch_dim, 0);
  8977. }
  8978. explicit ReverseSequenceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8979. : fbb_(_fbb) {
  8980. start_ = fbb_.StartTable();
  8981. }
  8982. flatbuffers::Offset<ReverseSequenceOptions> Finish() {
  8983. const auto end = fbb_.EndTable(start_);
  8984. auto o = flatbuffers::Offset<ReverseSequenceOptions>(end);
  8985. return o;
  8986. }
  8987. };
  8988. inline flatbuffers::Offset<ReverseSequenceOptions> CreateReverseSequenceOptions(
  8989. flatbuffers::FlatBufferBuilder &_fbb,
  8990. int32_t seq_dim = 0,
  8991. int32_t batch_dim = 0) {
  8992. ReverseSequenceOptionsBuilder builder_(_fbb);
  8993. builder_.add_batch_dim(batch_dim);
  8994. builder_.add_seq_dim(seq_dim);
  8995. return builder_.Finish();
  8996. }
  8997. flatbuffers::Offset<ReverseSequenceOptions> CreateReverseSequenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8998. struct MatrixDiagOptionsT : public flatbuffers::NativeTable {
  8999. typedef MatrixDiagOptions TableType;
  9000. };
  9001. struct MatrixDiagOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9002. typedef MatrixDiagOptionsT NativeTableType;
  9003. typedef MatrixDiagOptionsBuilder Builder;
  9004. bool Verify(flatbuffers::Verifier &verifier) const {
  9005. return VerifyTableStart(verifier) &&
  9006. verifier.EndTable();
  9007. }
  9008. MatrixDiagOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9009. void UnPackTo(MatrixDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9010. static flatbuffers::Offset<MatrixDiagOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9011. };
  9012. struct MatrixDiagOptionsBuilder {
  9013. typedef MatrixDiagOptions Table;
  9014. flatbuffers::FlatBufferBuilder &fbb_;
  9015. flatbuffers::uoffset_t start_;
  9016. explicit MatrixDiagOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9017. : fbb_(_fbb) {
  9018. start_ = fbb_.StartTable();
  9019. }
  9020. flatbuffers::Offset<MatrixDiagOptions> Finish() {
  9021. const auto end = fbb_.EndTable(start_);
  9022. auto o = flatbuffers::Offset<MatrixDiagOptions>(end);
  9023. return o;
  9024. }
  9025. };
  9026. inline flatbuffers::Offset<MatrixDiagOptions> CreateMatrixDiagOptions(
  9027. flatbuffers::FlatBufferBuilder &_fbb) {
  9028. MatrixDiagOptionsBuilder builder_(_fbb);
  9029. return builder_.Finish();
  9030. }
  9031. flatbuffers::Offset<MatrixDiagOptions> CreateMatrixDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9032. struct QuantizeOptionsT : public flatbuffers::NativeTable {
  9033. typedef QuantizeOptions TableType;
  9034. };
  9035. struct QuantizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9036. typedef QuantizeOptionsT NativeTableType;
  9037. typedef QuantizeOptionsBuilder Builder;
  9038. bool Verify(flatbuffers::Verifier &verifier) const {
  9039. return VerifyTableStart(verifier) &&
  9040. verifier.EndTable();
  9041. }
  9042. QuantizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9043. void UnPackTo(QuantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9044. static flatbuffers::Offset<QuantizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9045. };
  9046. struct QuantizeOptionsBuilder {
  9047. typedef QuantizeOptions Table;
  9048. flatbuffers::FlatBufferBuilder &fbb_;
  9049. flatbuffers::uoffset_t start_;
  9050. explicit QuantizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9051. : fbb_(_fbb) {
  9052. start_ = fbb_.StartTable();
  9053. }
  9054. flatbuffers::Offset<QuantizeOptions> Finish() {
  9055. const auto end = fbb_.EndTable(start_);
  9056. auto o = flatbuffers::Offset<QuantizeOptions>(end);
  9057. return o;
  9058. }
  9059. };
  9060. inline flatbuffers::Offset<QuantizeOptions> CreateQuantizeOptions(
  9061. flatbuffers::FlatBufferBuilder &_fbb) {
  9062. QuantizeOptionsBuilder builder_(_fbb);
  9063. return builder_.Finish();
  9064. }
  9065. flatbuffers::Offset<QuantizeOptions> CreateQuantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9066. struct MatrixSetDiagOptionsT : public flatbuffers::NativeTable {
  9067. typedef MatrixSetDiagOptions TableType;
  9068. };
  9069. struct MatrixSetDiagOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9070. typedef MatrixSetDiagOptionsT NativeTableType;
  9071. typedef MatrixSetDiagOptionsBuilder Builder;
  9072. bool Verify(flatbuffers::Verifier &verifier) const {
  9073. return VerifyTableStart(verifier) &&
  9074. verifier.EndTable();
  9075. }
  9076. MatrixSetDiagOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9077. void UnPackTo(MatrixSetDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9078. static flatbuffers::Offset<MatrixSetDiagOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9079. };
  9080. struct MatrixSetDiagOptionsBuilder {
  9081. typedef MatrixSetDiagOptions Table;
  9082. flatbuffers::FlatBufferBuilder &fbb_;
  9083. flatbuffers::uoffset_t start_;
  9084. explicit MatrixSetDiagOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9085. : fbb_(_fbb) {
  9086. start_ = fbb_.StartTable();
  9087. }
  9088. flatbuffers::Offset<MatrixSetDiagOptions> Finish() {
  9089. const auto end = fbb_.EndTable(start_);
  9090. auto o = flatbuffers::Offset<MatrixSetDiagOptions>(end);
  9091. return o;
  9092. }
  9093. };
  9094. inline flatbuffers::Offset<MatrixSetDiagOptions> CreateMatrixSetDiagOptions(
  9095. flatbuffers::FlatBufferBuilder &_fbb) {
  9096. MatrixSetDiagOptionsBuilder builder_(_fbb);
  9097. return builder_.Finish();
  9098. }
  9099. flatbuffers::Offset<MatrixSetDiagOptions> CreateMatrixSetDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9100. struct IfOptionsT : public flatbuffers::NativeTable {
  9101. typedef IfOptions TableType;
  9102. int32_t then_subgraph_index = 0;
  9103. int32_t else_subgraph_index = 0;
  9104. };
  9105. struct IfOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9106. typedef IfOptionsT NativeTableType;
  9107. typedef IfOptionsBuilder Builder;
  9108. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9109. VT_THEN_SUBGRAPH_INDEX = 4,
  9110. VT_ELSE_SUBGRAPH_INDEX = 6
  9111. };
  9112. int32_t then_subgraph_index() const {
  9113. return GetField<int32_t>(VT_THEN_SUBGRAPH_INDEX, 0);
  9114. }
  9115. int32_t else_subgraph_index() const {
  9116. return GetField<int32_t>(VT_ELSE_SUBGRAPH_INDEX, 0);
  9117. }
  9118. bool Verify(flatbuffers::Verifier &verifier) const {
  9119. return VerifyTableStart(verifier) &&
  9120. VerifyField<int32_t>(verifier, VT_THEN_SUBGRAPH_INDEX, 4) &&
  9121. VerifyField<int32_t>(verifier, VT_ELSE_SUBGRAPH_INDEX, 4) &&
  9122. verifier.EndTable();
  9123. }
  9124. IfOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9125. void UnPackTo(IfOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9126. static flatbuffers::Offset<IfOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9127. };
  9128. struct IfOptionsBuilder {
  9129. typedef IfOptions Table;
  9130. flatbuffers::FlatBufferBuilder &fbb_;
  9131. flatbuffers::uoffset_t start_;
  9132. void add_then_subgraph_index(int32_t then_subgraph_index) {
  9133. fbb_.AddElement<int32_t>(IfOptions::VT_THEN_SUBGRAPH_INDEX, then_subgraph_index, 0);
  9134. }
  9135. void add_else_subgraph_index(int32_t else_subgraph_index) {
  9136. fbb_.AddElement<int32_t>(IfOptions::VT_ELSE_SUBGRAPH_INDEX, else_subgraph_index, 0);
  9137. }
  9138. explicit IfOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9139. : fbb_(_fbb) {
  9140. start_ = fbb_.StartTable();
  9141. }
  9142. flatbuffers::Offset<IfOptions> Finish() {
  9143. const auto end = fbb_.EndTable(start_);
  9144. auto o = flatbuffers::Offset<IfOptions>(end);
  9145. return o;
  9146. }
  9147. };
  9148. inline flatbuffers::Offset<IfOptions> CreateIfOptions(
  9149. flatbuffers::FlatBufferBuilder &_fbb,
  9150. int32_t then_subgraph_index = 0,
  9151. int32_t else_subgraph_index = 0) {
  9152. IfOptionsBuilder builder_(_fbb);
  9153. builder_.add_else_subgraph_index(else_subgraph_index);
  9154. builder_.add_then_subgraph_index(then_subgraph_index);
  9155. return builder_.Finish();
  9156. }
  9157. flatbuffers::Offset<IfOptions> CreateIfOptions(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9158. struct CallOnceOptionsT : public flatbuffers::NativeTable {
  9159. typedef CallOnceOptions TableType;
  9160. int32_t init_subgraph_index = 0;
  9161. };
  9162. struct CallOnceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9163. typedef CallOnceOptionsT NativeTableType;
  9164. typedef CallOnceOptionsBuilder Builder;
  9165. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9166. VT_INIT_SUBGRAPH_INDEX = 4
  9167. };
  9168. int32_t init_subgraph_index() const {
  9169. return GetField<int32_t>(VT_INIT_SUBGRAPH_INDEX, 0);
  9170. }
  9171. bool Verify(flatbuffers::Verifier &verifier) const {
  9172. return VerifyTableStart(verifier) &&
  9173. VerifyField<int32_t>(verifier, VT_INIT_SUBGRAPH_INDEX, 4) &&
  9174. verifier.EndTable();
  9175. }
  9176. CallOnceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9177. void UnPackTo(CallOnceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9178. static flatbuffers::Offset<CallOnceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9179. };
  9180. struct CallOnceOptionsBuilder {
  9181. typedef CallOnceOptions Table;
  9182. flatbuffers::FlatBufferBuilder &fbb_;
  9183. flatbuffers::uoffset_t start_;
  9184. void add_init_subgraph_index(int32_t init_subgraph_index) {
  9185. fbb_.AddElement<int32_t>(CallOnceOptions::VT_INIT_SUBGRAPH_INDEX, init_subgraph_index, 0);
  9186. }
  9187. explicit CallOnceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9188. : fbb_(_fbb) {
  9189. start_ = fbb_.StartTable();
  9190. }
  9191. flatbuffers::Offset<CallOnceOptions> Finish() {
  9192. const auto end = fbb_.EndTable(start_);
  9193. auto o = flatbuffers::Offset<CallOnceOptions>(end);
  9194. return o;
  9195. }
  9196. };
  9197. inline flatbuffers::Offset<CallOnceOptions> CreateCallOnceOptions(
  9198. flatbuffers::FlatBufferBuilder &_fbb,
  9199. int32_t init_subgraph_index = 0) {
  9200. CallOnceOptionsBuilder builder_(_fbb);
  9201. builder_.add_init_subgraph_index(init_subgraph_index);
  9202. return builder_.Finish();
  9203. }
  9204. flatbuffers::Offset<CallOnceOptions> CreateCallOnceOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9205. struct WhileOptionsT : public flatbuffers::NativeTable {
  9206. typedef WhileOptions TableType;
  9207. int32_t cond_subgraph_index = 0;
  9208. int32_t body_subgraph_index = 0;
  9209. };
  9210. struct WhileOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9211. typedef WhileOptionsT NativeTableType;
  9212. typedef WhileOptionsBuilder Builder;
  9213. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9214. VT_COND_SUBGRAPH_INDEX = 4,
  9215. VT_BODY_SUBGRAPH_INDEX = 6
  9216. };
  9217. int32_t cond_subgraph_index() const {
  9218. return GetField<int32_t>(VT_COND_SUBGRAPH_INDEX, 0);
  9219. }
  9220. int32_t body_subgraph_index() const {
  9221. return GetField<int32_t>(VT_BODY_SUBGRAPH_INDEX, 0);
  9222. }
  9223. bool Verify(flatbuffers::Verifier &verifier) const {
  9224. return VerifyTableStart(verifier) &&
  9225. VerifyField<int32_t>(verifier, VT_COND_SUBGRAPH_INDEX, 4) &&
  9226. VerifyField<int32_t>(verifier, VT_BODY_SUBGRAPH_INDEX, 4) &&
  9227. verifier.EndTable();
  9228. }
  9229. WhileOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9230. void UnPackTo(WhileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9231. static flatbuffers::Offset<WhileOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9232. };
  9233. struct WhileOptionsBuilder {
  9234. typedef WhileOptions Table;
  9235. flatbuffers::FlatBufferBuilder &fbb_;
  9236. flatbuffers::uoffset_t start_;
  9237. void add_cond_subgraph_index(int32_t cond_subgraph_index) {
  9238. fbb_.AddElement<int32_t>(WhileOptions::VT_COND_SUBGRAPH_INDEX, cond_subgraph_index, 0);
  9239. }
  9240. void add_body_subgraph_index(int32_t body_subgraph_index) {
  9241. fbb_.AddElement<int32_t>(WhileOptions::VT_BODY_SUBGRAPH_INDEX, body_subgraph_index, 0);
  9242. }
  9243. explicit WhileOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9244. : fbb_(_fbb) {
  9245. start_ = fbb_.StartTable();
  9246. }
  9247. flatbuffers::Offset<WhileOptions> Finish() {
  9248. const auto end = fbb_.EndTable(start_);
  9249. auto o = flatbuffers::Offset<WhileOptions>(end);
  9250. return o;
  9251. }
  9252. };
  9253. inline flatbuffers::Offset<WhileOptions> CreateWhileOptions(
  9254. flatbuffers::FlatBufferBuilder &_fbb,
  9255. int32_t cond_subgraph_index = 0,
  9256. int32_t body_subgraph_index = 0) {
  9257. WhileOptionsBuilder builder_(_fbb);
  9258. builder_.add_body_subgraph_index(body_subgraph_index);
  9259. builder_.add_cond_subgraph_index(cond_subgraph_index);
  9260. return builder_.Finish();
  9261. }
  9262. flatbuffers::Offset<WhileOptions> CreateWhileOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9263. struct NonMaxSuppressionV4OptionsT : public flatbuffers::NativeTable {
  9264. typedef NonMaxSuppressionV4Options TableType;
  9265. };
  9266. struct NonMaxSuppressionV4Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9267. typedef NonMaxSuppressionV4OptionsT NativeTableType;
  9268. typedef NonMaxSuppressionV4OptionsBuilder Builder;
  9269. bool Verify(flatbuffers::Verifier &verifier) const {
  9270. return VerifyTableStart(verifier) &&
  9271. verifier.EndTable();
  9272. }
  9273. NonMaxSuppressionV4OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9274. void UnPackTo(NonMaxSuppressionV4OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9275. static flatbuffers::Offset<NonMaxSuppressionV4Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9276. };
  9277. struct NonMaxSuppressionV4OptionsBuilder {
  9278. typedef NonMaxSuppressionV4Options Table;
  9279. flatbuffers::FlatBufferBuilder &fbb_;
  9280. flatbuffers::uoffset_t start_;
  9281. explicit NonMaxSuppressionV4OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9282. : fbb_(_fbb) {
  9283. start_ = fbb_.StartTable();
  9284. }
  9285. flatbuffers::Offset<NonMaxSuppressionV4Options> Finish() {
  9286. const auto end = fbb_.EndTable(start_);
  9287. auto o = flatbuffers::Offset<NonMaxSuppressionV4Options>(end);
  9288. return o;
  9289. }
  9290. };
  9291. inline flatbuffers::Offset<NonMaxSuppressionV4Options> CreateNonMaxSuppressionV4Options(
  9292. flatbuffers::FlatBufferBuilder &_fbb) {
  9293. NonMaxSuppressionV4OptionsBuilder builder_(_fbb);
  9294. return builder_.Finish();
  9295. }
  9296. flatbuffers::Offset<NonMaxSuppressionV4Options> CreateNonMaxSuppressionV4Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9297. struct NonMaxSuppressionV5OptionsT : public flatbuffers::NativeTable {
  9298. typedef NonMaxSuppressionV5Options TableType;
  9299. };
  9300. struct NonMaxSuppressionV5Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9301. typedef NonMaxSuppressionV5OptionsT NativeTableType;
  9302. typedef NonMaxSuppressionV5OptionsBuilder Builder;
  9303. bool Verify(flatbuffers::Verifier &verifier) const {
  9304. return VerifyTableStart(verifier) &&
  9305. verifier.EndTable();
  9306. }
  9307. NonMaxSuppressionV5OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9308. void UnPackTo(NonMaxSuppressionV5OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9309. static flatbuffers::Offset<NonMaxSuppressionV5Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9310. };
  9311. struct NonMaxSuppressionV5OptionsBuilder {
  9312. typedef NonMaxSuppressionV5Options Table;
  9313. flatbuffers::FlatBufferBuilder &fbb_;
  9314. flatbuffers::uoffset_t start_;
  9315. explicit NonMaxSuppressionV5OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9316. : fbb_(_fbb) {
  9317. start_ = fbb_.StartTable();
  9318. }
  9319. flatbuffers::Offset<NonMaxSuppressionV5Options> Finish() {
  9320. const auto end = fbb_.EndTable(start_);
  9321. auto o = flatbuffers::Offset<NonMaxSuppressionV5Options>(end);
  9322. return o;
  9323. }
  9324. };
  9325. inline flatbuffers::Offset<NonMaxSuppressionV5Options> CreateNonMaxSuppressionV5Options(
  9326. flatbuffers::FlatBufferBuilder &_fbb) {
  9327. NonMaxSuppressionV5OptionsBuilder builder_(_fbb);
  9328. return builder_.Finish();
  9329. }
  9330. flatbuffers::Offset<NonMaxSuppressionV5Options> CreateNonMaxSuppressionV5Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9331. struct ScatterNdOptionsT : public flatbuffers::NativeTable {
  9332. typedef ScatterNdOptions TableType;
  9333. };
  9334. struct ScatterNdOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9335. typedef ScatterNdOptionsT NativeTableType;
  9336. typedef ScatterNdOptionsBuilder Builder;
  9337. bool Verify(flatbuffers::Verifier &verifier) const {
  9338. return VerifyTableStart(verifier) &&
  9339. verifier.EndTable();
  9340. }
  9341. ScatterNdOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9342. void UnPackTo(ScatterNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9343. static flatbuffers::Offset<ScatterNdOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9344. };
  9345. struct ScatterNdOptionsBuilder {
  9346. typedef ScatterNdOptions Table;
  9347. flatbuffers::FlatBufferBuilder &fbb_;
  9348. flatbuffers::uoffset_t start_;
  9349. explicit ScatterNdOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9350. : fbb_(_fbb) {
  9351. start_ = fbb_.StartTable();
  9352. }
  9353. flatbuffers::Offset<ScatterNdOptions> Finish() {
  9354. const auto end = fbb_.EndTable(start_);
  9355. auto o = flatbuffers::Offset<ScatterNdOptions>(end);
  9356. return o;
  9357. }
  9358. };
  9359. inline flatbuffers::Offset<ScatterNdOptions> CreateScatterNdOptions(
  9360. flatbuffers::FlatBufferBuilder &_fbb) {
  9361. ScatterNdOptionsBuilder builder_(_fbb);
  9362. return builder_.Finish();
  9363. }
  9364. flatbuffers::Offset<ScatterNdOptions> CreateScatterNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9365. struct SelectV2OptionsT : public flatbuffers::NativeTable {
  9366. typedef SelectV2Options TableType;
  9367. };
  9368. struct SelectV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9369. typedef SelectV2OptionsT NativeTableType;
  9370. typedef SelectV2OptionsBuilder Builder;
  9371. bool Verify(flatbuffers::Verifier &verifier) const {
  9372. return VerifyTableStart(verifier) &&
  9373. verifier.EndTable();
  9374. }
  9375. SelectV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9376. void UnPackTo(SelectV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9377. static flatbuffers::Offset<SelectV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9378. };
  9379. struct SelectV2OptionsBuilder {
  9380. typedef SelectV2Options Table;
  9381. flatbuffers::FlatBufferBuilder &fbb_;
  9382. flatbuffers::uoffset_t start_;
  9383. explicit SelectV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9384. : fbb_(_fbb) {
  9385. start_ = fbb_.StartTable();
  9386. }
  9387. flatbuffers::Offset<SelectV2Options> Finish() {
  9388. const auto end = fbb_.EndTable(start_);
  9389. auto o = flatbuffers::Offset<SelectV2Options>(end);
  9390. return o;
  9391. }
  9392. };
  9393. inline flatbuffers::Offset<SelectV2Options> CreateSelectV2Options(
  9394. flatbuffers::FlatBufferBuilder &_fbb) {
  9395. SelectV2OptionsBuilder builder_(_fbb);
  9396. return builder_.Finish();
  9397. }
  9398. flatbuffers::Offset<SelectV2Options> CreateSelectV2Options(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9399. struct DensifyOptionsT : public flatbuffers::NativeTable {
  9400. typedef DensifyOptions TableType;
  9401. };
  9402. struct DensifyOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9403. typedef DensifyOptionsT NativeTableType;
  9404. typedef DensifyOptionsBuilder Builder;
  9405. bool Verify(flatbuffers::Verifier &verifier) const {
  9406. return VerifyTableStart(verifier) &&
  9407. verifier.EndTable();
  9408. }
  9409. DensifyOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9410. void UnPackTo(DensifyOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9411. static flatbuffers::Offset<DensifyOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9412. };
  9413. struct DensifyOptionsBuilder {
  9414. typedef DensifyOptions Table;
  9415. flatbuffers::FlatBufferBuilder &fbb_;
  9416. flatbuffers::uoffset_t start_;
  9417. explicit DensifyOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9418. : fbb_(_fbb) {
  9419. start_ = fbb_.StartTable();
  9420. }
  9421. flatbuffers::Offset<DensifyOptions> Finish() {
  9422. const auto end = fbb_.EndTable(start_);
  9423. auto o = flatbuffers::Offset<DensifyOptions>(end);
  9424. return o;
  9425. }
  9426. };
  9427. inline flatbuffers::Offset<DensifyOptions> CreateDensifyOptions(
  9428. flatbuffers::FlatBufferBuilder &_fbb) {
  9429. DensifyOptionsBuilder builder_(_fbb);
  9430. return builder_.Finish();
  9431. }
  9432. flatbuffers::Offset<DensifyOptions> CreateDensifyOptions(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9433. struct SegmentSumOptionsT : public flatbuffers::NativeTable {
  9434. typedef SegmentSumOptions TableType;
  9435. };
  9436. struct SegmentSumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9437. typedef SegmentSumOptionsT NativeTableType;
  9438. typedef SegmentSumOptionsBuilder Builder;
  9439. bool Verify(flatbuffers::Verifier &verifier) const {
  9440. return VerifyTableStart(verifier) &&
  9441. verifier.EndTable();
  9442. }
  9443. SegmentSumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9444. void UnPackTo(SegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9445. static flatbuffers::Offset<SegmentSumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9446. };
  9447. struct SegmentSumOptionsBuilder {
  9448. typedef SegmentSumOptions Table;
  9449. flatbuffers::FlatBufferBuilder &fbb_;
  9450. flatbuffers::uoffset_t start_;
  9451. explicit SegmentSumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9452. : fbb_(_fbb) {
  9453. start_ = fbb_.StartTable();
  9454. }
  9455. flatbuffers::Offset<SegmentSumOptions> Finish() {
  9456. const auto end = fbb_.EndTable(start_);
  9457. auto o = flatbuffers::Offset<SegmentSumOptions>(end);
  9458. return o;
  9459. }
  9460. };
  9461. inline flatbuffers::Offset<SegmentSumOptions> CreateSegmentSumOptions(
  9462. flatbuffers::FlatBufferBuilder &_fbb) {
  9463. SegmentSumOptionsBuilder builder_(_fbb);
  9464. return builder_.Finish();
  9465. }
  9466. flatbuffers::Offset<SegmentSumOptions> CreateSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9467. struct BatchMatMulOptionsT : public flatbuffers::NativeTable {
  9468. typedef BatchMatMulOptions TableType;
  9469. bool adj_x = false;
  9470. bool adj_y = false;
  9471. bool asymmetric_quantize_inputs = false;
  9472. };
  9473. struct BatchMatMulOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9474. typedef BatchMatMulOptionsT NativeTableType;
  9475. typedef BatchMatMulOptionsBuilder Builder;
  9476. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9477. VT_ADJ_X = 4,
  9478. VT_ADJ_Y = 6,
  9479. VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
  9480. };
  9481. bool adj_x() const {
  9482. return GetField<uint8_t>(VT_ADJ_X, 0) != 0;
  9483. }
  9484. bool adj_y() const {
  9485. return GetField<uint8_t>(VT_ADJ_Y, 0) != 0;
  9486. }
  9487. bool asymmetric_quantize_inputs() const {
  9488. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  9489. }
  9490. bool Verify(flatbuffers::Verifier &verifier) const {
  9491. return VerifyTableStart(verifier) &&
  9492. VerifyField<uint8_t>(verifier, VT_ADJ_X, 1) &&
  9493. VerifyField<uint8_t>(verifier, VT_ADJ_Y, 1) &&
  9494. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS, 1) &&
  9495. verifier.EndTable();
  9496. }
  9497. BatchMatMulOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9498. void UnPackTo(BatchMatMulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9499. static flatbuffers::Offset<BatchMatMulOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9500. };
  9501. struct BatchMatMulOptionsBuilder {
  9502. typedef BatchMatMulOptions Table;
  9503. flatbuffers::FlatBufferBuilder &fbb_;
  9504. flatbuffers::uoffset_t start_;
  9505. void add_adj_x(bool adj_x) {
  9506. fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ADJ_X, static_cast<uint8_t>(adj_x), 0);
  9507. }
  9508. void add_adj_y(bool adj_y) {
  9509. fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ADJ_Y, static_cast<uint8_t>(adj_y), 0);
  9510. }
  9511. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  9512. fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  9513. }
  9514. explicit BatchMatMulOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9515. : fbb_(_fbb) {
  9516. start_ = fbb_.StartTable();
  9517. }
  9518. flatbuffers::Offset<BatchMatMulOptions> Finish() {
  9519. const auto end = fbb_.EndTable(start_);
  9520. auto o = flatbuffers::Offset<BatchMatMulOptions>(end);
  9521. return o;
  9522. }
  9523. };
  9524. inline flatbuffers::Offset<BatchMatMulOptions> CreateBatchMatMulOptions(
  9525. flatbuffers::FlatBufferBuilder &_fbb,
  9526. bool adj_x = false,
  9527. bool adj_y = false,
  9528. bool asymmetric_quantize_inputs = false) {
  9529. BatchMatMulOptionsBuilder builder_(_fbb);
  9530. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  9531. builder_.add_adj_y(adj_y);
  9532. builder_.add_adj_x(adj_x);
  9533. return builder_.Finish();
  9534. }
  9535. flatbuffers::Offset<BatchMatMulOptions> CreateBatchMatMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9536. struct CumsumOptionsT : public flatbuffers::NativeTable {
  9537. typedef CumsumOptions TableType;
  9538. bool exclusive = false;
  9539. bool reverse = false;
  9540. };
  9541. struct CumsumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9542. typedef CumsumOptionsT NativeTableType;
  9543. typedef CumsumOptionsBuilder Builder;
  9544. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9545. VT_EXCLUSIVE = 4,
  9546. VT_REVERSE = 6
  9547. };
  9548. bool exclusive() const {
  9549. return GetField<uint8_t>(VT_EXCLUSIVE, 0) != 0;
  9550. }
  9551. bool reverse() const {
  9552. return GetField<uint8_t>(VT_REVERSE, 0) != 0;
  9553. }
  9554. bool Verify(flatbuffers::Verifier &verifier) const {
  9555. return VerifyTableStart(verifier) &&
  9556. VerifyField<uint8_t>(verifier, VT_EXCLUSIVE, 1) &&
  9557. VerifyField<uint8_t>(verifier, VT_REVERSE, 1) &&
  9558. verifier.EndTable();
  9559. }
  9560. CumsumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9561. void UnPackTo(CumsumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9562. static flatbuffers::Offset<CumsumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9563. };
  9564. struct CumsumOptionsBuilder {
  9565. typedef CumsumOptions Table;
  9566. flatbuffers::FlatBufferBuilder &fbb_;
  9567. flatbuffers::uoffset_t start_;
  9568. void add_exclusive(bool exclusive) {
  9569. fbb_.AddElement<uint8_t>(CumsumOptions::VT_EXCLUSIVE, static_cast<uint8_t>(exclusive), 0);
  9570. }
  9571. void add_reverse(bool reverse) {
  9572. fbb_.AddElement<uint8_t>(CumsumOptions::VT_REVERSE, static_cast<uint8_t>(reverse), 0);
  9573. }
  9574. explicit CumsumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9575. : fbb_(_fbb) {
  9576. start_ = fbb_.StartTable();
  9577. }
  9578. flatbuffers::Offset<CumsumOptions> Finish() {
  9579. const auto end = fbb_.EndTable(start_);
  9580. auto o = flatbuffers::Offset<CumsumOptions>(end);
  9581. return o;
  9582. }
  9583. };
  9584. inline flatbuffers::Offset<CumsumOptions> CreateCumsumOptions(
  9585. flatbuffers::FlatBufferBuilder &_fbb,
  9586. bool exclusive = false,
  9587. bool reverse = false) {
  9588. CumsumOptionsBuilder builder_(_fbb);
  9589. builder_.add_reverse(reverse);
  9590. builder_.add_exclusive(exclusive);
  9591. return builder_.Finish();
  9592. }
  9593. flatbuffers::Offset<CumsumOptions> CreateCumsumOptions(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9594. struct BroadcastToOptionsT : public flatbuffers::NativeTable {
  9595. typedef BroadcastToOptions TableType;
  9596. };
  9597. struct BroadcastToOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9598. typedef BroadcastToOptionsT NativeTableType;
  9599. typedef BroadcastToOptionsBuilder Builder;
  9600. bool Verify(flatbuffers::Verifier &verifier) const {
  9601. return VerifyTableStart(verifier) &&
  9602. verifier.EndTable();
  9603. }
  9604. BroadcastToOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9605. void UnPackTo(BroadcastToOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9606. static flatbuffers::Offset<BroadcastToOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9607. };
  9608. struct BroadcastToOptionsBuilder {
  9609. typedef BroadcastToOptions Table;
  9610. flatbuffers::FlatBufferBuilder &fbb_;
  9611. flatbuffers::uoffset_t start_;
  9612. explicit BroadcastToOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9613. : fbb_(_fbb) {
  9614. start_ = fbb_.StartTable();
  9615. }
  9616. flatbuffers::Offset<BroadcastToOptions> Finish() {
  9617. const auto end = fbb_.EndTable(start_);
  9618. auto o = flatbuffers::Offset<BroadcastToOptions>(end);
  9619. return o;
  9620. }
  9621. };
  9622. inline flatbuffers::Offset<BroadcastToOptions> CreateBroadcastToOptions(
  9623. flatbuffers::FlatBufferBuilder &_fbb) {
  9624. BroadcastToOptionsBuilder builder_(_fbb);
  9625. return builder_.Finish();
  9626. }
  9627. flatbuffers::Offset<BroadcastToOptions> CreateBroadcastToOptions(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9628. struct Rfft2dOptionsT : public flatbuffers::NativeTable {
  9629. typedef Rfft2dOptions TableType;
  9630. };
  9631. struct Rfft2dOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9632. typedef Rfft2dOptionsT NativeTableType;
  9633. typedef Rfft2dOptionsBuilder Builder;
  9634. bool Verify(flatbuffers::Verifier &verifier) const {
  9635. return VerifyTableStart(verifier) &&
  9636. verifier.EndTable();
  9637. }
  9638. Rfft2dOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9639. void UnPackTo(Rfft2dOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9640. static flatbuffers::Offset<Rfft2dOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9641. };
  9642. struct Rfft2dOptionsBuilder {
  9643. typedef Rfft2dOptions Table;
  9644. flatbuffers::FlatBufferBuilder &fbb_;
  9645. flatbuffers::uoffset_t start_;
  9646. explicit Rfft2dOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9647. : fbb_(_fbb) {
  9648. start_ = fbb_.StartTable();
  9649. }
  9650. flatbuffers::Offset<Rfft2dOptions> Finish() {
  9651. const auto end = fbb_.EndTable(start_);
  9652. auto o = flatbuffers::Offset<Rfft2dOptions>(end);
  9653. return o;
  9654. }
  9655. };
  9656. inline flatbuffers::Offset<Rfft2dOptions> CreateRfft2dOptions(
  9657. flatbuffers::FlatBufferBuilder &_fbb) {
  9658. Rfft2dOptionsBuilder builder_(_fbb);
  9659. return builder_.Finish();
  9660. }
  9661. flatbuffers::Offset<Rfft2dOptions> CreateRfft2dOptions(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9662. struct HashtableOptionsT : public flatbuffers::NativeTable {
  9663. typedef HashtableOptions TableType;
  9664. int32_t table_id = 0;
  9665. tflite::TensorType key_dtype = tflite::TensorType_FLOAT32;
  9666. tflite::TensorType value_dtype = tflite::TensorType_FLOAT32;
  9667. };
  9668. struct HashtableOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9669. typedef HashtableOptionsT NativeTableType;
  9670. typedef HashtableOptionsBuilder Builder;
  9671. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9672. VT_TABLE_ID = 4,
  9673. VT_KEY_DTYPE = 6,
  9674. VT_VALUE_DTYPE = 8
  9675. };
  9676. int32_t table_id() const {
  9677. return GetField<int32_t>(VT_TABLE_ID, 0);
  9678. }
  9679. tflite::TensorType key_dtype() const {
  9680. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_KEY_DTYPE, 0));
  9681. }
  9682. tflite::TensorType value_dtype() const {
  9683. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_VALUE_DTYPE, 0));
  9684. }
  9685. bool Verify(flatbuffers::Verifier &verifier) const {
  9686. return VerifyTableStart(verifier) &&
  9687. VerifyField<int32_t>(verifier, VT_TABLE_ID, 4) &&
  9688. VerifyField<int8_t>(verifier, VT_KEY_DTYPE, 1) &&
  9689. VerifyField<int8_t>(verifier, VT_VALUE_DTYPE, 1) &&
  9690. verifier.EndTable();
  9691. }
  9692. HashtableOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9693. void UnPackTo(HashtableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9694. static flatbuffers::Offset<HashtableOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9695. };
  9696. struct HashtableOptionsBuilder {
  9697. typedef HashtableOptions Table;
  9698. flatbuffers::FlatBufferBuilder &fbb_;
  9699. flatbuffers::uoffset_t start_;
  9700. void add_table_id(int32_t table_id) {
  9701. fbb_.AddElement<int32_t>(HashtableOptions::VT_TABLE_ID, table_id, 0);
  9702. }
  9703. void add_key_dtype(tflite::TensorType key_dtype) {
  9704. fbb_.AddElement<int8_t>(HashtableOptions::VT_KEY_DTYPE, static_cast<int8_t>(key_dtype), 0);
  9705. }
  9706. void add_value_dtype(tflite::TensorType value_dtype) {
  9707. fbb_.AddElement<int8_t>(HashtableOptions::VT_VALUE_DTYPE, static_cast<int8_t>(value_dtype), 0);
  9708. }
  9709. explicit HashtableOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9710. : fbb_(_fbb) {
  9711. start_ = fbb_.StartTable();
  9712. }
  9713. flatbuffers::Offset<HashtableOptions> Finish() {
  9714. const auto end = fbb_.EndTable(start_);
  9715. auto o = flatbuffers::Offset<HashtableOptions>(end);
  9716. return o;
  9717. }
  9718. };
  9719. inline flatbuffers::Offset<HashtableOptions> CreateHashtableOptions(
  9720. flatbuffers::FlatBufferBuilder &_fbb,
  9721. int32_t table_id = 0,
  9722. tflite::TensorType key_dtype = tflite::TensorType_FLOAT32,
  9723. tflite::TensorType value_dtype = tflite::TensorType_FLOAT32) {
  9724. HashtableOptionsBuilder builder_(_fbb);
  9725. builder_.add_table_id(table_id);
  9726. builder_.add_value_dtype(value_dtype);
  9727. builder_.add_key_dtype(key_dtype);
  9728. return builder_.Finish();
  9729. }
  9730. flatbuffers::Offset<HashtableOptions> CreateHashtableOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9731. struct HashtableFindOptionsT : public flatbuffers::NativeTable {
  9732. typedef HashtableFindOptions TableType;
  9733. };
  9734. struct HashtableFindOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9735. typedef HashtableFindOptionsT NativeTableType;
  9736. typedef HashtableFindOptionsBuilder Builder;
  9737. bool Verify(flatbuffers::Verifier &verifier) const {
  9738. return VerifyTableStart(verifier) &&
  9739. verifier.EndTable();
  9740. }
  9741. HashtableFindOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9742. void UnPackTo(HashtableFindOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9743. static flatbuffers::Offset<HashtableFindOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9744. };
  9745. struct HashtableFindOptionsBuilder {
  9746. typedef HashtableFindOptions Table;
  9747. flatbuffers::FlatBufferBuilder &fbb_;
  9748. flatbuffers::uoffset_t start_;
  9749. explicit HashtableFindOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9750. : fbb_(_fbb) {
  9751. start_ = fbb_.StartTable();
  9752. }
  9753. flatbuffers::Offset<HashtableFindOptions> Finish() {
  9754. const auto end = fbb_.EndTable(start_);
  9755. auto o = flatbuffers::Offset<HashtableFindOptions>(end);
  9756. return o;
  9757. }
  9758. };
  9759. inline flatbuffers::Offset<HashtableFindOptions> CreateHashtableFindOptions(
  9760. flatbuffers::FlatBufferBuilder &_fbb) {
  9761. HashtableFindOptionsBuilder builder_(_fbb);
  9762. return builder_.Finish();
  9763. }
  9764. flatbuffers::Offset<HashtableFindOptions> CreateHashtableFindOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9765. struct HashtableImportOptionsT : public flatbuffers::NativeTable {
  9766. typedef HashtableImportOptions TableType;
  9767. };
  9768. struct HashtableImportOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9769. typedef HashtableImportOptionsT NativeTableType;
  9770. typedef HashtableImportOptionsBuilder Builder;
  9771. bool Verify(flatbuffers::Verifier &verifier) const {
  9772. return VerifyTableStart(verifier) &&
  9773. verifier.EndTable();
  9774. }
  9775. HashtableImportOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9776. void UnPackTo(HashtableImportOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9777. static flatbuffers::Offset<HashtableImportOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9778. };
  9779. struct HashtableImportOptionsBuilder {
  9780. typedef HashtableImportOptions Table;
  9781. flatbuffers::FlatBufferBuilder &fbb_;
  9782. flatbuffers::uoffset_t start_;
  9783. explicit HashtableImportOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9784. : fbb_(_fbb) {
  9785. start_ = fbb_.StartTable();
  9786. }
  9787. flatbuffers::Offset<HashtableImportOptions> Finish() {
  9788. const auto end = fbb_.EndTable(start_);
  9789. auto o = flatbuffers::Offset<HashtableImportOptions>(end);
  9790. return o;
  9791. }
  9792. };
  9793. inline flatbuffers::Offset<HashtableImportOptions> CreateHashtableImportOptions(
  9794. flatbuffers::FlatBufferBuilder &_fbb) {
  9795. HashtableImportOptionsBuilder builder_(_fbb);
  9796. return builder_.Finish();
  9797. }
  9798. flatbuffers::Offset<HashtableImportOptions> CreateHashtableImportOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9799. struct HashtableSizeOptionsT : public flatbuffers::NativeTable {
  9800. typedef HashtableSizeOptions TableType;
  9801. };
  9802. struct HashtableSizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9803. typedef HashtableSizeOptionsT NativeTableType;
  9804. typedef HashtableSizeOptionsBuilder Builder;
  9805. bool Verify(flatbuffers::Verifier &verifier) const {
  9806. return VerifyTableStart(verifier) &&
  9807. verifier.EndTable();
  9808. }
  9809. HashtableSizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9810. void UnPackTo(HashtableSizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9811. static flatbuffers::Offset<HashtableSizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9812. };
  9813. struct HashtableSizeOptionsBuilder {
  9814. typedef HashtableSizeOptions Table;
  9815. flatbuffers::FlatBufferBuilder &fbb_;
  9816. flatbuffers::uoffset_t start_;
  9817. explicit HashtableSizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9818. : fbb_(_fbb) {
  9819. start_ = fbb_.StartTable();
  9820. }
  9821. flatbuffers::Offset<HashtableSizeOptions> Finish() {
  9822. const auto end = fbb_.EndTable(start_);
  9823. auto o = flatbuffers::Offset<HashtableSizeOptions>(end);
  9824. return o;
  9825. }
  9826. };
  9827. inline flatbuffers::Offset<HashtableSizeOptions> CreateHashtableSizeOptions(
  9828. flatbuffers::FlatBufferBuilder &_fbb) {
  9829. HashtableSizeOptionsBuilder builder_(_fbb);
  9830. return builder_.Finish();
  9831. }
  9832. flatbuffers::Offset<HashtableSizeOptions> CreateHashtableSizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9833. struct VarHandleOptionsT : public flatbuffers::NativeTable {
  9834. typedef VarHandleOptions TableType;
  9835. std::string container{};
  9836. std::string shared_name{};
  9837. };
  9838. struct VarHandleOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9839. typedef VarHandleOptionsT NativeTableType;
  9840. typedef VarHandleOptionsBuilder Builder;
  9841. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9842. VT_CONTAINER = 4,
  9843. VT_SHARED_NAME = 6
  9844. };
  9845. const flatbuffers::String *container() const {
  9846. return GetPointer<const flatbuffers::String *>(VT_CONTAINER);
  9847. }
  9848. const flatbuffers::String *shared_name() const {
  9849. return GetPointer<const flatbuffers::String *>(VT_SHARED_NAME);
  9850. }
  9851. bool Verify(flatbuffers::Verifier &verifier) const {
  9852. return VerifyTableStart(verifier) &&
  9853. VerifyOffset(verifier, VT_CONTAINER) &&
  9854. verifier.VerifyString(container()) &&
  9855. VerifyOffset(verifier, VT_SHARED_NAME) &&
  9856. verifier.VerifyString(shared_name()) &&
  9857. verifier.EndTable();
  9858. }
  9859. VarHandleOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9860. void UnPackTo(VarHandleOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9861. static flatbuffers::Offset<VarHandleOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9862. };
  9863. struct VarHandleOptionsBuilder {
  9864. typedef VarHandleOptions Table;
  9865. flatbuffers::FlatBufferBuilder &fbb_;
  9866. flatbuffers::uoffset_t start_;
  9867. void add_container(flatbuffers::Offset<flatbuffers::String> container) {
  9868. fbb_.AddOffset(VarHandleOptions::VT_CONTAINER, container);
  9869. }
  9870. void add_shared_name(flatbuffers::Offset<flatbuffers::String> shared_name) {
  9871. fbb_.AddOffset(VarHandleOptions::VT_SHARED_NAME, shared_name);
  9872. }
  9873. explicit VarHandleOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9874. : fbb_(_fbb) {
  9875. start_ = fbb_.StartTable();
  9876. }
  9877. flatbuffers::Offset<VarHandleOptions> Finish() {
  9878. const auto end = fbb_.EndTable(start_);
  9879. auto o = flatbuffers::Offset<VarHandleOptions>(end);
  9880. return o;
  9881. }
  9882. };
  9883. inline flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptions(
  9884. flatbuffers::FlatBufferBuilder &_fbb,
  9885. flatbuffers::Offset<flatbuffers::String> container = 0,
  9886. flatbuffers::Offset<flatbuffers::String> shared_name = 0) {
  9887. VarHandleOptionsBuilder builder_(_fbb);
  9888. builder_.add_shared_name(shared_name);
  9889. builder_.add_container(container);
  9890. return builder_.Finish();
  9891. }
  9892. inline flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptionsDirect(
  9893. flatbuffers::FlatBufferBuilder &_fbb,
  9894. const char *container = nullptr,
  9895. const char *shared_name = nullptr) {
  9896. auto container__ = container ? _fbb.CreateString(container) : 0;
  9897. auto shared_name__ = shared_name ? _fbb.CreateString(shared_name) : 0;
  9898. return tflite::CreateVarHandleOptions(
  9899. _fbb,
  9900. container__,
  9901. shared_name__);
  9902. }
  9903. flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptions(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9904. struct ReadVariableOptionsT : public flatbuffers::NativeTable {
  9905. typedef ReadVariableOptions TableType;
  9906. };
  9907. struct ReadVariableOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9908. typedef ReadVariableOptionsT NativeTableType;
  9909. typedef ReadVariableOptionsBuilder Builder;
  9910. bool Verify(flatbuffers::Verifier &verifier) const {
  9911. return VerifyTableStart(verifier) &&
  9912. verifier.EndTable();
  9913. }
  9914. ReadVariableOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9915. void UnPackTo(ReadVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9916. static flatbuffers::Offset<ReadVariableOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9917. };
  9918. struct ReadVariableOptionsBuilder {
  9919. typedef ReadVariableOptions Table;
  9920. flatbuffers::FlatBufferBuilder &fbb_;
  9921. flatbuffers::uoffset_t start_;
  9922. explicit ReadVariableOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9923. : fbb_(_fbb) {
  9924. start_ = fbb_.StartTable();
  9925. }
  9926. flatbuffers::Offset<ReadVariableOptions> Finish() {
  9927. const auto end = fbb_.EndTable(start_);
  9928. auto o = flatbuffers::Offset<ReadVariableOptions>(end);
  9929. return o;
  9930. }
  9931. };
  9932. inline flatbuffers::Offset<ReadVariableOptions> CreateReadVariableOptions(
  9933. flatbuffers::FlatBufferBuilder &_fbb) {
  9934. ReadVariableOptionsBuilder builder_(_fbb);
  9935. return builder_.Finish();
  9936. }
  9937. flatbuffers::Offset<ReadVariableOptions> CreateReadVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9938. struct AssignVariableOptionsT : public flatbuffers::NativeTable {
  9939. typedef AssignVariableOptions TableType;
  9940. };
  9941. struct AssignVariableOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9942. typedef AssignVariableOptionsT NativeTableType;
  9943. typedef AssignVariableOptionsBuilder Builder;
  9944. bool Verify(flatbuffers::Verifier &verifier) const {
  9945. return VerifyTableStart(verifier) &&
  9946. verifier.EndTable();
  9947. }
  9948. AssignVariableOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9949. void UnPackTo(AssignVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9950. static flatbuffers::Offset<AssignVariableOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9951. };
  9952. struct AssignVariableOptionsBuilder {
  9953. typedef AssignVariableOptions Table;
  9954. flatbuffers::FlatBufferBuilder &fbb_;
  9955. flatbuffers::uoffset_t start_;
  9956. explicit AssignVariableOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9957. : fbb_(_fbb) {
  9958. start_ = fbb_.StartTable();
  9959. }
  9960. flatbuffers::Offset<AssignVariableOptions> Finish() {
  9961. const auto end = fbb_.EndTable(start_);
  9962. auto o = flatbuffers::Offset<AssignVariableOptions>(end);
  9963. return o;
  9964. }
  9965. };
  9966. inline flatbuffers::Offset<AssignVariableOptions> CreateAssignVariableOptions(
  9967. flatbuffers::FlatBufferBuilder &_fbb) {
  9968. AssignVariableOptionsBuilder builder_(_fbb);
  9969. return builder_.Finish();
  9970. }
  9971. flatbuffers::Offset<AssignVariableOptions> CreateAssignVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9972. struct RandomOptionsT : public flatbuffers::NativeTable {
  9973. typedef RandomOptions TableType;
  9974. int64_t seed = 0;
  9975. int64_t seed2 = 0;
  9976. };
  9977. struct RandomOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9978. typedef RandomOptionsT NativeTableType;
  9979. typedef RandomOptionsBuilder Builder;
  9980. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9981. VT_SEED = 4,
  9982. VT_SEED2 = 6
  9983. };
  9984. int64_t seed() const {
  9985. return GetField<int64_t>(VT_SEED, 0);
  9986. }
  9987. int64_t seed2() const {
  9988. return GetField<int64_t>(VT_SEED2, 0);
  9989. }
  9990. bool Verify(flatbuffers::Verifier &verifier) const {
  9991. return VerifyTableStart(verifier) &&
  9992. VerifyField<int64_t>(verifier, VT_SEED, 8) &&
  9993. VerifyField<int64_t>(verifier, VT_SEED2, 8) &&
  9994. verifier.EndTable();
  9995. }
  9996. RandomOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9997. void UnPackTo(RandomOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9998. static flatbuffers::Offset<RandomOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9999. };
  10000. struct RandomOptionsBuilder {
  10001. typedef RandomOptions Table;
  10002. flatbuffers::FlatBufferBuilder &fbb_;
  10003. flatbuffers::uoffset_t start_;
  10004. void add_seed(int64_t seed) {
  10005. fbb_.AddElement<int64_t>(RandomOptions::VT_SEED, seed, 0);
  10006. }
  10007. void add_seed2(int64_t seed2) {
  10008. fbb_.AddElement<int64_t>(RandomOptions::VT_SEED2, seed2, 0);
  10009. }
  10010. explicit RandomOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10011. : fbb_(_fbb) {
  10012. start_ = fbb_.StartTable();
  10013. }
  10014. flatbuffers::Offset<RandomOptions> Finish() {
  10015. const auto end = fbb_.EndTable(start_);
  10016. auto o = flatbuffers::Offset<RandomOptions>(end);
  10017. return o;
  10018. }
  10019. };
  10020. inline flatbuffers::Offset<RandomOptions> CreateRandomOptions(
  10021. flatbuffers::FlatBufferBuilder &_fbb,
  10022. int64_t seed = 0,
  10023. int64_t seed2 = 0) {
  10024. RandomOptionsBuilder builder_(_fbb);
  10025. builder_.add_seed2(seed2);
  10026. builder_.add_seed(seed);
  10027. return builder_.Finish();
  10028. }
  10029. flatbuffers::Offset<RandomOptions> CreateRandomOptions(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10030. struct BucketizeOptionsT : public flatbuffers::NativeTable {
  10031. typedef BucketizeOptions TableType;
  10032. std::vector<float> boundaries{};
  10033. };
  10034. struct BucketizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10035. typedef BucketizeOptionsT NativeTableType;
  10036. typedef BucketizeOptionsBuilder Builder;
  10037. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  10038. VT_BOUNDARIES = 4
  10039. };
  10040. const flatbuffers::Vector<float> *boundaries() const {
  10041. return GetPointer<const flatbuffers::Vector<float> *>(VT_BOUNDARIES);
  10042. }
  10043. bool Verify(flatbuffers::Verifier &verifier) const {
  10044. return VerifyTableStart(verifier) &&
  10045. VerifyOffset(verifier, VT_BOUNDARIES) &&
  10046. verifier.VerifyVector(boundaries()) &&
  10047. verifier.EndTable();
  10048. }
  10049. BucketizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10050. void UnPackTo(BucketizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10051. static flatbuffers::Offset<BucketizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10052. };
  10053. struct BucketizeOptionsBuilder {
  10054. typedef BucketizeOptions Table;
  10055. flatbuffers::FlatBufferBuilder &fbb_;
  10056. flatbuffers::uoffset_t start_;
  10057. void add_boundaries(flatbuffers::Offset<flatbuffers::Vector<float>> boundaries) {
  10058. fbb_.AddOffset(BucketizeOptions::VT_BOUNDARIES, boundaries);
  10059. }
  10060. explicit BucketizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10061. : fbb_(_fbb) {
  10062. start_ = fbb_.StartTable();
  10063. }
  10064. flatbuffers::Offset<BucketizeOptions> Finish() {
  10065. const auto end = fbb_.EndTable(start_);
  10066. auto o = flatbuffers::Offset<BucketizeOptions>(end);
  10067. return o;
  10068. }
  10069. };
  10070. inline flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptions(
  10071. flatbuffers::FlatBufferBuilder &_fbb,
  10072. flatbuffers::Offset<flatbuffers::Vector<float>> boundaries = 0) {
  10073. BucketizeOptionsBuilder builder_(_fbb);
  10074. builder_.add_boundaries(boundaries);
  10075. return builder_.Finish();
  10076. }
  10077. inline flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptionsDirect(
  10078. flatbuffers::FlatBufferBuilder &_fbb,
  10079. const std::vector<float> *boundaries = nullptr) {
  10080. auto boundaries__ = boundaries ? _fbb.CreateVector<float>(*boundaries) : 0;
  10081. return tflite::CreateBucketizeOptions(
  10082. _fbb,
  10083. boundaries__);
  10084. }
  10085. flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10086. struct GeluOptionsT : public flatbuffers::NativeTable {
  10087. typedef GeluOptions TableType;
  10088. bool approximate = false;
  10089. };
  10090. struct GeluOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10091. typedef GeluOptionsT NativeTableType;
  10092. typedef GeluOptionsBuilder Builder;
  10093. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  10094. VT_APPROXIMATE = 4
  10095. };
  10096. bool approximate() const {
  10097. return GetField<uint8_t>(VT_APPROXIMATE, 0) != 0;
  10098. }
  10099. bool Verify(flatbuffers::Verifier &verifier) const {
  10100. return VerifyTableStart(verifier) &&
  10101. VerifyField<uint8_t>(verifier, VT_APPROXIMATE, 1) &&
  10102. verifier.EndTable();
  10103. }
  10104. GeluOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10105. void UnPackTo(GeluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10106. static flatbuffers::Offset<GeluOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10107. };
  10108. struct GeluOptionsBuilder {
  10109. typedef GeluOptions Table;
  10110. flatbuffers::FlatBufferBuilder &fbb_;
  10111. flatbuffers::uoffset_t start_;
  10112. void add_approximate(bool approximate) {
  10113. fbb_.AddElement<uint8_t>(GeluOptions::VT_APPROXIMATE, static_cast<uint8_t>(approximate), 0);
  10114. }
  10115. explicit GeluOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10116. : fbb_(_fbb) {
  10117. start_ = fbb_.StartTable();
  10118. }
  10119. flatbuffers::Offset<GeluOptions> Finish() {
  10120. const auto end = fbb_.EndTable(start_);
  10121. auto o = flatbuffers::Offset<GeluOptions>(end);
  10122. return o;
  10123. }
  10124. };
  10125. inline flatbuffers::Offset<GeluOptions> CreateGeluOptions(
  10126. flatbuffers::FlatBufferBuilder &_fbb,
  10127. bool approximate = false) {
  10128. GeluOptionsBuilder builder_(_fbb);
  10129. builder_.add_approximate(approximate);
  10130. return builder_.Finish();
  10131. }
  10132. flatbuffers::Offset<GeluOptions> CreateGeluOptions(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10133. struct DynamicUpdateSliceOptionsT : public flatbuffers::NativeTable {
  10134. typedef DynamicUpdateSliceOptions TableType;
  10135. };
  10136. struct DynamicUpdateSliceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10137. typedef DynamicUpdateSliceOptionsT NativeTableType;
  10138. typedef DynamicUpdateSliceOptionsBuilder Builder;
  10139. bool Verify(flatbuffers::Verifier &verifier) const {
  10140. return VerifyTableStart(verifier) &&
  10141. verifier.EndTable();
  10142. }
  10143. DynamicUpdateSliceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10144. void UnPackTo(DynamicUpdateSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10145. static flatbuffers::Offset<DynamicUpdateSliceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10146. };
  10147. struct DynamicUpdateSliceOptionsBuilder {
  10148. typedef DynamicUpdateSliceOptions Table;
  10149. flatbuffers::FlatBufferBuilder &fbb_;
  10150. flatbuffers::uoffset_t start_;
  10151. explicit DynamicUpdateSliceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10152. : fbb_(_fbb) {
  10153. start_ = fbb_.StartTable();
  10154. }
  10155. flatbuffers::Offset<DynamicUpdateSliceOptions> Finish() {
  10156. const auto end = fbb_.EndTable(start_);
  10157. auto o = flatbuffers::Offset<DynamicUpdateSliceOptions>(end);
  10158. return o;
  10159. }
  10160. };
  10161. inline flatbuffers::Offset<DynamicUpdateSliceOptions> CreateDynamicUpdateSliceOptions(
  10162. flatbuffers::FlatBufferBuilder &_fbb) {
  10163. DynamicUpdateSliceOptionsBuilder builder_(_fbb);
  10164. return builder_.Finish();
  10165. }
  10166. flatbuffers::Offset<DynamicUpdateSliceOptions> CreateDynamicUpdateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10167. struct UnsortedSegmentProdOptionsT : public flatbuffers::NativeTable {
  10168. typedef UnsortedSegmentProdOptions TableType;
  10169. };
  10170. struct UnsortedSegmentProdOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10171. typedef UnsortedSegmentProdOptionsT NativeTableType;
  10172. typedef UnsortedSegmentProdOptionsBuilder Builder;
  10173. bool Verify(flatbuffers::Verifier &verifier) const {
  10174. return VerifyTableStart(verifier) &&
  10175. verifier.EndTable();
  10176. }
  10177. UnsortedSegmentProdOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10178. void UnPackTo(UnsortedSegmentProdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10179. static flatbuffers::Offset<UnsortedSegmentProdOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10180. };
  10181. struct UnsortedSegmentProdOptionsBuilder {
  10182. typedef UnsortedSegmentProdOptions Table;
  10183. flatbuffers::FlatBufferBuilder &fbb_;
  10184. flatbuffers::uoffset_t start_;
  10185. explicit UnsortedSegmentProdOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10186. : fbb_(_fbb) {
  10187. start_ = fbb_.StartTable();
  10188. }
  10189. flatbuffers::Offset<UnsortedSegmentProdOptions> Finish() {
  10190. const auto end = fbb_.EndTable(start_);
  10191. auto o = flatbuffers::Offset<UnsortedSegmentProdOptions>(end);
  10192. return o;
  10193. }
  10194. };
  10195. inline flatbuffers::Offset<UnsortedSegmentProdOptions> CreateUnsortedSegmentProdOptions(
  10196. flatbuffers::FlatBufferBuilder &_fbb) {
  10197. UnsortedSegmentProdOptionsBuilder builder_(_fbb);
  10198. return builder_.Finish();
  10199. }
  10200. flatbuffers::Offset<UnsortedSegmentProdOptions> CreateUnsortedSegmentProdOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10201. struct UnsortedSegmentMaxOptionsT : public flatbuffers::NativeTable {
  10202. typedef UnsortedSegmentMaxOptions TableType;
  10203. };
  10204. struct UnsortedSegmentMaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10205. typedef UnsortedSegmentMaxOptionsT NativeTableType;
  10206. typedef UnsortedSegmentMaxOptionsBuilder Builder;
  10207. bool Verify(flatbuffers::Verifier &verifier) const {
  10208. return VerifyTableStart(verifier) &&
  10209. verifier.EndTable();
  10210. }
  10211. UnsortedSegmentMaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10212. void UnPackTo(UnsortedSegmentMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10213. static flatbuffers::Offset<UnsortedSegmentMaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10214. };
  10215. struct UnsortedSegmentMaxOptionsBuilder {
  10216. typedef UnsortedSegmentMaxOptions Table;
  10217. flatbuffers::FlatBufferBuilder &fbb_;
  10218. flatbuffers::uoffset_t start_;
  10219. explicit UnsortedSegmentMaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10220. : fbb_(_fbb) {
  10221. start_ = fbb_.StartTable();
  10222. }
  10223. flatbuffers::Offset<UnsortedSegmentMaxOptions> Finish() {
  10224. const auto end = fbb_.EndTable(start_);
  10225. auto o = flatbuffers::Offset<UnsortedSegmentMaxOptions>(end);
  10226. return o;
  10227. }
  10228. };
  10229. inline flatbuffers::Offset<UnsortedSegmentMaxOptions> CreateUnsortedSegmentMaxOptions(
  10230. flatbuffers::FlatBufferBuilder &_fbb) {
  10231. UnsortedSegmentMaxOptionsBuilder builder_(_fbb);
  10232. return builder_.Finish();
  10233. }
  10234. flatbuffers::Offset<UnsortedSegmentMaxOptions> CreateUnsortedSegmentMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10235. struct UnsortedSegmentSumOptionsT : public flatbuffers::NativeTable {
  10236. typedef UnsortedSegmentSumOptions TableType;
  10237. };
  10238. struct UnsortedSegmentSumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10239. typedef UnsortedSegmentSumOptionsT NativeTableType;
  10240. typedef UnsortedSegmentSumOptionsBuilder Builder;
  10241. bool Verify(flatbuffers::Verifier &verifier) const {
  10242. return VerifyTableStart(verifier) &&
  10243. verifier.EndTable();
  10244. }
  10245. UnsortedSegmentSumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10246. void UnPackTo(UnsortedSegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10247. static flatbuffers::Offset<UnsortedSegmentSumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10248. };
  10249. struct UnsortedSegmentSumOptionsBuilder {
  10250. typedef UnsortedSegmentSumOptions Table;
  10251. flatbuffers::FlatBufferBuilder &fbb_;
  10252. flatbuffers::uoffset_t start_;
  10253. explicit UnsortedSegmentSumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10254. : fbb_(_fbb) {
  10255. start_ = fbb_.StartTable();
  10256. }
  10257. flatbuffers::Offset<UnsortedSegmentSumOptions> Finish() {
  10258. const auto end = fbb_.EndTable(start_);
  10259. auto o = flatbuffers::Offset<UnsortedSegmentSumOptions>(end);
  10260. return o;
  10261. }
  10262. };
  10263. inline flatbuffers::Offset<UnsortedSegmentSumOptions> CreateUnsortedSegmentSumOptions(
  10264. flatbuffers::FlatBufferBuilder &_fbb) {
  10265. UnsortedSegmentSumOptionsBuilder builder_(_fbb);
  10266. return builder_.Finish();
  10267. }
  10268. flatbuffers::Offset<UnsortedSegmentSumOptions> CreateUnsortedSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10269. struct ATan2OptionsT : public flatbuffers::NativeTable {
  10270. typedef ATan2Options TableType;
  10271. };
  10272. struct ATan2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10273. typedef ATan2OptionsT NativeTableType;
  10274. typedef ATan2OptionsBuilder Builder;
  10275. bool Verify(flatbuffers::Verifier &verifier) const {
  10276. return VerifyTableStart(verifier) &&
  10277. verifier.EndTable();
  10278. }
  10279. ATan2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10280. void UnPackTo(ATan2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10281. static flatbuffers::Offset<ATan2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10282. };
  10283. struct ATan2OptionsBuilder {
  10284. typedef ATan2Options Table;
  10285. flatbuffers::FlatBufferBuilder &fbb_;
  10286. flatbuffers::uoffset_t start_;
  10287. explicit ATan2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10288. : fbb_(_fbb) {
  10289. start_ = fbb_.StartTable();
  10290. }
  10291. flatbuffers::Offset<ATan2Options> Finish() {
  10292. const auto end = fbb_.EndTable(start_);
  10293. auto o = flatbuffers::Offset<ATan2Options>(end);
  10294. return o;
  10295. }
  10296. };
  10297. inline flatbuffers::Offset<ATan2Options> CreateATan2Options(
  10298. flatbuffers::FlatBufferBuilder &_fbb) {
  10299. ATan2OptionsBuilder builder_(_fbb);
  10300. return builder_.Finish();
  10301. }
  10302. flatbuffers::Offset<ATan2Options> CreateATan2Options(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10303. struct UnsortedSegmentMinOptionsT : public flatbuffers::NativeTable {
  10304. typedef UnsortedSegmentMinOptions TableType;
  10305. };
  10306. struct UnsortedSegmentMinOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10307. typedef UnsortedSegmentMinOptionsT NativeTableType;
  10308. typedef UnsortedSegmentMinOptionsBuilder Builder;
  10309. bool Verify(flatbuffers::Verifier &verifier) const {
  10310. return VerifyTableStart(verifier) &&
  10311. verifier.EndTable();
  10312. }
  10313. UnsortedSegmentMinOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10314. void UnPackTo(UnsortedSegmentMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10315. static flatbuffers::Offset<UnsortedSegmentMinOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10316. };
  10317. struct UnsortedSegmentMinOptionsBuilder {
  10318. typedef UnsortedSegmentMinOptions Table;
  10319. flatbuffers::FlatBufferBuilder &fbb_;
  10320. flatbuffers::uoffset_t start_;
  10321. explicit UnsortedSegmentMinOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10322. : fbb_(_fbb) {
  10323. start_ = fbb_.StartTable();
  10324. }
  10325. flatbuffers::Offset<UnsortedSegmentMinOptions> Finish() {
  10326. const auto end = fbb_.EndTable(start_);
  10327. auto o = flatbuffers::Offset<UnsortedSegmentMinOptions>(end);
  10328. return o;
  10329. }
  10330. };
  10331. inline flatbuffers::Offset<UnsortedSegmentMinOptions> CreateUnsortedSegmentMinOptions(
  10332. flatbuffers::FlatBufferBuilder &_fbb) {
  10333. UnsortedSegmentMinOptionsBuilder builder_(_fbb);
  10334. return builder_.Finish();
  10335. }
  10336. flatbuffers::Offset<UnsortedSegmentMinOptions> CreateUnsortedSegmentMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10337. struct SignOptionsT : public flatbuffers::NativeTable {
  10338. typedef SignOptions TableType;
  10339. };
  10340. struct SignOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10341. typedef SignOptionsT NativeTableType;
  10342. typedef SignOptionsBuilder Builder;
  10343. bool Verify(flatbuffers::Verifier &verifier) const {
  10344. return VerifyTableStart(verifier) &&
  10345. verifier.EndTable();
  10346. }
  10347. SignOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10348. void UnPackTo(SignOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10349. static flatbuffers::Offset<SignOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SignOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10350. };
  10351. struct SignOptionsBuilder {
  10352. typedef SignOptions Table;
  10353. flatbuffers::FlatBufferBuilder &fbb_;
  10354. flatbuffers::uoffset_t start_;
  10355. explicit SignOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10356. : fbb_(_fbb) {
  10357. start_ = fbb_.StartTable();
  10358. }
  10359. flatbuffers::Offset<SignOptions> Finish() {
  10360. const auto end = fbb_.EndTable(start_);
  10361. auto o = flatbuffers::Offset<SignOptions>(end);
  10362. return o;
  10363. }
  10364. };
  10365. inline flatbuffers::Offset<SignOptions> CreateSignOptions(
  10366. flatbuffers::FlatBufferBuilder &_fbb) {
  10367. SignOptionsBuilder builder_(_fbb);
  10368. return builder_.Finish();
  10369. }
  10370. flatbuffers::Offset<SignOptions> CreateSignOptions(flatbuffers::FlatBufferBuilder &_fbb, const SignOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10371. struct OperatorCodeT : public flatbuffers::NativeTable {
  10372. typedef OperatorCode TableType;
  10373. int8_t deprecated_builtin_code = 0;
  10374. std::string custom_code{};
  10375. int32_t version = 1;
  10376. tflite::BuiltinOperator builtin_code = tflite::BuiltinOperator_ADD;
  10377. };
  10378. struct OperatorCode FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10379. typedef OperatorCodeT NativeTableType;
  10380. typedef OperatorCodeBuilder Builder;
  10381. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  10382. VT_DEPRECATED_BUILTIN_CODE = 4,
  10383. VT_CUSTOM_CODE = 6,
  10384. VT_VERSION = 8,
  10385. VT_BUILTIN_CODE = 10
  10386. };
  10387. int8_t deprecated_builtin_code() const {
  10388. return GetField<int8_t>(VT_DEPRECATED_BUILTIN_CODE, 0);
  10389. }
  10390. const flatbuffers::String *custom_code() const {
  10391. return GetPointer<const flatbuffers::String *>(VT_CUSTOM_CODE);
  10392. }
  10393. int32_t version() const {
  10394. return GetField<int32_t>(VT_VERSION, 1);
  10395. }
  10396. tflite::BuiltinOperator builtin_code() const {
  10397. return static_cast<tflite::BuiltinOperator>(GetField<int32_t>(VT_BUILTIN_CODE, 0));
  10398. }
  10399. bool Verify(flatbuffers::Verifier &verifier) const {
  10400. return VerifyTableStart(verifier) &&
  10401. VerifyField<int8_t>(verifier, VT_DEPRECATED_BUILTIN_CODE, 1) &&
  10402. VerifyOffset(verifier, VT_CUSTOM_CODE) &&
  10403. verifier.VerifyString(custom_code()) &&
  10404. VerifyField<int32_t>(verifier, VT_VERSION, 4) &&
  10405. VerifyField<int32_t>(verifier, VT_BUILTIN_CODE, 4) &&
  10406. verifier.EndTable();
  10407. }
  10408. OperatorCodeT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10409. void UnPackTo(OperatorCodeT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10410. static flatbuffers::Offset<OperatorCode> Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10411. };
  10412. struct OperatorCodeBuilder {
  10413. typedef OperatorCode Table;
  10414. flatbuffers::FlatBufferBuilder &fbb_;
  10415. flatbuffers::uoffset_t start_;
  10416. void add_deprecated_builtin_code(int8_t deprecated_builtin_code) {
  10417. fbb_.AddElement<int8_t>(OperatorCode::VT_DEPRECATED_BUILTIN_CODE, deprecated_builtin_code, 0);
  10418. }
  10419. void add_custom_code(flatbuffers::Offset<flatbuffers::String> custom_code) {
  10420. fbb_.AddOffset(OperatorCode::VT_CUSTOM_CODE, custom_code);
  10421. }
  10422. void add_version(int32_t version) {
  10423. fbb_.AddElement<int32_t>(OperatorCode::VT_VERSION, version, 1);
  10424. }
  10425. void add_builtin_code(tflite::BuiltinOperator builtin_code) {
  10426. fbb_.AddElement<int32_t>(OperatorCode::VT_BUILTIN_CODE, static_cast<int32_t>(builtin_code), 0);
  10427. }
  10428. explicit OperatorCodeBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10429. : fbb_(_fbb) {
  10430. start_ = fbb_.StartTable();
  10431. }
  10432. flatbuffers::Offset<OperatorCode> Finish() {
  10433. const auto end = fbb_.EndTable(start_);
  10434. auto o = flatbuffers::Offset<OperatorCode>(end);
  10435. return o;
  10436. }
  10437. };
  10438. inline flatbuffers::Offset<OperatorCode> CreateOperatorCode(
  10439. flatbuffers::FlatBufferBuilder &_fbb,
  10440. int8_t deprecated_builtin_code = 0,
  10441. flatbuffers::Offset<flatbuffers::String> custom_code = 0,
  10442. int32_t version = 1,
  10443. tflite::BuiltinOperator builtin_code = tflite::BuiltinOperator_ADD) {
  10444. OperatorCodeBuilder builder_(_fbb);
  10445. builder_.add_builtin_code(builtin_code);
  10446. builder_.add_version(version);
  10447. builder_.add_custom_code(custom_code);
  10448. builder_.add_deprecated_builtin_code(deprecated_builtin_code);
  10449. return builder_.Finish();
  10450. }
  10451. inline flatbuffers::Offset<OperatorCode> CreateOperatorCodeDirect(
  10452. flatbuffers::FlatBufferBuilder &_fbb,
  10453. int8_t deprecated_builtin_code = 0,
  10454. const char *custom_code = nullptr,
  10455. int32_t version = 1,
  10456. tflite::BuiltinOperator builtin_code = tflite::BuiltinOperator_ADD) {
  10457. auto custom_code__ = custom_code ? _fbb.CreateString(custom_code) : 0;
  10458. return tflite::CreateOperatorCode(
  10459. _fbb,
  10460. deprecated_builtin_code,
  10461. custom_code__,
  10462. version,
  10463. builtin_code);
  10464. }
  10465. flatbuffers::Offset<OperatorCode> CreateOperatorCode(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10466. struct OperatorT : public flatbuffers::NativeTable {
  10467. typedef Operator TableType;
  10468. uint32_t opcode_index = 0;
  10469. std::vector<int32_t> inputs{};
  10470. std::vector<int32_t> outputs{};
  10471. tflite::BuiltinOptionsUnion builtin_options{};
  10472. std::vector<uint8_t> custom_options{};
  10473. tflite::CustomOptionsFormat custom_options_format = tflite::CustomOptionsFormat_FLEXBUFFERS;
  10474. std::vector<bool> mutating_variable_inputs{};
  10475. std::vector<int32_t> intermediates{};
  10476. };
  10477. struct Operator FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10478. typedef OperatorT NativeTableType;
  10479. typedef OperatorBuilder Builder;
  10480. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  10481. VT_OPCODE_INDEX = 4,
  10482. VT_INPUTS = 6,
  10483. VT_OUTPUTS = 8,
  10484. VT_BUILTIN_OPTIONS_TYPE = 10,
  10485. VT_BUILTIN_OPTIONS = 12,
  10486. VT_CUSTOM_OPTIONS = 14,
  10487. VT_CUSTOM_OPTIONS_FORMAT = 16,
  10488. VT_MUTATING_VARIABLE_INPUTS = 18,
  10489. VT_INTERMEDIATES = 20
  10490. };
  10491. uint32_t opcode_index() const {
  10492. return GetField<uint32_t>(VT_OPCODE_INDEX, 0);
  10493. }
  10494. const flatbuffers::Vector<int32_t> *inputs() const {
  10495. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_INPUTS);
  10496. }
  10497. const flatbuffers::Vector<int32_t> *outputs() const {
  10498. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_OUTPUTS);
  10499. }
  10500. tflite::BuiltinOptions builtin_options_type() const {
  10501. return static_cast<tflite::BuiltinOptions>(GetField<uint8_t>(VT_BUILTIN_OPTIONS_TYPE, 0));
  10502. }
  10503. const void *builtin_options() const {
  10504. return GetPointer<const void *>(VT_BUILTIN_OPTIONS);
  10505. }
  10506. template<typename T> const T *builtin_options_as() const;
  10507. const tflite::Conv2DOptions *builtin_options_as_Conv2DOptions() const {
  10508. return builtin_options_type() == tflite::BuiltinOptions_Conv2DOptions ? static_cast<const tflite::Conv2DOptions *>(builtin_options()) : nullptr;
  10509. }
  10510. const tflite::DepthwiseConv2DOptions *builtin_options_as_DepthwiseConv2DOptions() const {
  10511. return builtin_options_type() == tflite::BuiltinOptions_DepthwiseConv2DOptions ? static_cast<const tflite::DepthwiseConv2DOptions *>(builtin_options()) : nullptr;
  10512. }
  10513. const tflite::ConcatEmbeddingsOptions *builtin_options_as_ConcatEmbeddingsOptions() const {
  10514. return builtin_options_type() == tflite::BuiltinOptions_ConcatEmbeddingsOptions ? static_cast<const tflite::ConcatEmbeddingsOptions *>(builtin_options()) : nullptr;
  10515. }
  10516. const tflite::LSHProjectionOptions *builtin_options_as_LSHProjectionOptions() const {
  10517. return builtin_options_type() == tflite::BuiltinOptions_LSHProjectionOptions ? static_cast<const tflite::LSHProjectionOptions *>(builtin_options()) : nullptr;
  10518. }
  10519. const tflite::Pool2DOptions *builtin_options_as_Pool2DOptions() const {
  10520. return builtin_options_type() == tflite::BuiltinOptions_Pool2DOptions ? static_cast<const tflite::Pool2DOptions *>(builtin_options()) : nullptr;
  10521. }
  10522. const tflite::SVDFOptions *builtin_options_as_SVDFOptions() const {
  10523. return builtin_options_type() == tflite::BuiltinOptions_SVDFOptions ? static_cast<const tflite::SVDFOptions *>(builtin_options()) : nullptr;
  10524. }
  10525. const tflite::RNNOptions *builtin_options_as_RNNOptions() const {
  10526. return builtin_options_type() == tflite::BuiltinOptions_RNNOptions ? static_cast<const tflite::RNNOptions *>(builtin_options()) : nullptr;
  10527. }
  10528. const tflite::FullyConnectedOptions *builtin_options_as_FullyConnectedOptions() const {
  10529. return builtin_options_type() == tflite::BuiltinOptions_FullyConnectedOptions ? static_cast<const tflite::FullyConnectedOptions *>(builtin_options()) : nullptr;
  10530. }
  10531. const tflite::SoftmaxOptions *builtin_options_as_SoftmaxOptions() const {
  10532. return builtin_options_type() == tflite::BuiltinOptions_SoftmaxOptions ? static_cast<const tflite::SoftmaxOptions *>(builtin_options()) : nullptr;
  10533. }
  10534. const tflite::ConcatenationOptions *builtin_options_as_ConcatenationOptions() const {
  10535. return builtin_options_type() == tflite::BuiltinOptions_ConcatenationOptions ? static_cast<const tflite::ConcatenationOptions *>(builtin_options()) : nullptr;
  10536. }
  10537. const tflite::AddOptions *builtin_options_as_AddOptions() const {
  10538. return builtin_options_type() == tflite::BuiltinOptions_AddOptions ? static_cast<const tflite::AddOptions *>(builtin_options()) : nullptr;
  10539. }
  10540. const tflite::L2NormOptions *builtin_options_as_L2NormOptions() const {
  10541. return builtin_options_type() == tflite::BuiltinOptions_L2NormOptions ? static_cast<const tflite::L2NormOptions *>(builtin_options()) : nullptr;
  10542. }
  10543. const tflite::LocalResponseNormalizationOptions *builtin_options_as_LocalResponseNormalizationOptions() const {
  10544. return builtin_options_type() == tflite::BuiltinOptions_LocalResponseNormalizationOptions ? static_cast<const tflite::LocalResponseNormalizationOptions *>(builtin_options()) : nullptr;
  10545. }
  10546. const tflite::LSTMOptions *builtin_options_as_LSTMOptions() const {
  10547. return builtin_options_type() == tflite::BuiltinOptions_LSTMOptions ? static_cast<const tflite::LSTMOptions *>(builtin_options()) : nullptr;
  10548. }
  10549. const tflite::ResizeBilinearOptions *builtin_options_as_ResizeBilinearOptions() const {
  10550. return builtin_options_type() == tflite::BuiltinOptions_ResizeBilinearOptions ? static_cast<const tflite::ResizeBilinearOptions *>(builtin_options()) : nullptr;
  10551. }
  10552. const tflite::CallOptions *builtin_options_as_CallOptions() const {
  10553. return builtin_options_type() == tflite::BuiltinOptions_CallOptions ? static_cast<const tflite::CallOptions *>(builtin_options()) : nullptr;
  10554. }
  10555. const tflite::ReshapeOptions *builtin_options_as_ReshapeOptions() const {
  10556. return builtin_options_type() == tflite::BuiltinOptions_ReshapeOptions ? static_cast<const tflite::ReshapeOptions *>(builtin_options()) : nullptr;
  10557. }
  10558. const tflite::SkipGramOptions *builtin_options_as_SkipGramOptions() const {
  10559. return builtin_options_type() == tflite::BuiltinOptions_SkipGramOptions ? static_cast<const tflite::SkipGramOptions *>(builtin_options()) : nullptr;
  10560. }
  10561. const tflite::SpaceToDepthOptions *builtin_options_as_SpaceToDepthOptions() const {
  10562. return builtin_options_type() == tflite::BuiltinOptions_SpaceToDepthOptions ? static_cast<const tflite::SpaceToDepthOptions *>(builtin_options()) : nullptr;
  10563. }
  10564. const tflite::EmbeddingLookupSparseOptions *builtin_options_as_EmbeddingLookupSparseOptions() const {
  10565. return builtin_options_type() == tflite::BuiltinOptions_EmbeddingLookupSparseOptions ? static_cast<const tflite::EmbeddingLookupSparseOptions *>(builtin_options()) : nullptr;
  10566. }
  10567. const tflite::MulOptions *builtin_options_as_MulOptions() const {
  10568. return builtin_options_type() == tflite::BuiltinOptions_MulOptions ? static_cast<const tflite::MulOptions *>(builtin_options()) : nullptr;
  10569. }
  10570. const tflite::PadOptions *builtin_options_as_PadOptions() const {
  10571. return builtin_options_type() == tflite::BuiltinOptions_PadOptions ? static_cast<const tflite::PadOptions *>(builtin_options()) : nullptr;
  10572. }
  10573. const tflite::GatherOptions *builtin_options_as_GatherOptions() const {
  10574. return builtin_options_type() == tflite::BuiltinOptions_GatherOptions ? static_cast<const tflite::GatherOptions *>(builtin_options()) : nullptr;
  10575. }
  10576. const tflite::BatchToSpaceNDOptions *builtin_options_as_BatchToSpaceNDOptions() const {
  10577. return builtin_options_type() == tflite::BuiltinOptions_BatchToSpaceNDOptions ? static_cast<const tflite::BatchToSpaceNDOptions *>(builtin_options()) : nullptr;
  10578. }
  10579. const tflite::SpaceToBatchNDOptions *builtin_options_as_SpaceToBatchNDOptions() const {
  10580. return builtin_options_type() == tflite::BuiltinOptions_SpaceToBatchNDOptions ? static_cast<const tflite::SpaceToBatchNDOptions *>(builtin_options()) : nullptr;
  10581. }
  10582. const tflite::TransposeOptions *builtin_options_as_TransposeOptions() const {
  10583. return builtin_options_type() == tflite::BuiltinOptions_TransposeOptions ? static_cast<const tflite::TransposeOptions *>(builtin_options()) : nullptr;
  10584. }
  10585. const tflite::ReducerOptions *builtin_options_as_ReducerOptions() const {
  10586. return builtin_options_type() == tflite::BuiltinOptions_ReducerOptions ? static_cast<const tflite::ReducerOptions *>(builtin_options()) : nullptr;
  10587. }
  10588. const tflite::SubOptions *builtin_options_as_SubOptions() const {
  10589. return builtin_options_type() == tflite::BuiltinOptions_SubOptions ? static_cast<const tflite::SubOptions *>(builtin_options()) : nullptr;
  10590. }
  10591. const tflite::DivOptions *builtin_options_as_DivOptions() const {
  10592. return builtin_options_type() == tflite::BuiltinOptions_DivOptions ? static_cast<const tflite::DivOptions *>(builtin_options()) : nullptr;
  10593. }
  10594. const tflite::SqueezeOptions *builtin_options_as_SqueezeOptions() const {
  10595. return builtin_options_type() == tflite::BuiltinOptions_SqueezeOptions ? static_cast<const tflite::SqueezeOptions *>(builtin_options()) : nullptr;
  10596. }
  10597. const tflite::SequenceRNNOptions *builtin_options_as_SequenceRNNOptions() const {
  10598. return builtin_options_type() == tflite::BuiltinOptions_SequenceRNNOptions ? static_cast<const tflite::SequenceRNNOptions *>(builtin_options()) : nullptr;
  10599. }
  10600. const tflite::StridedSliceOptions *builtin_options_as_StridedSliceOptions() const {
  10601. return builtin_options_type() == tflite::BuiltinOptions_StridedSliceOptions ? static_cast<const tflite::StridedSliceOptions *>(builtin_options()) : nullptr;
  10602. }
  10603. const tflite::ExpOptions *builtin_options_as_ExpOptions() const {
  10604. return builtin_options_type() == tflite::BuiltinOptions_ExpOptions ? static_cast<const tflite::ExpOptions *>(builtin_options()) : nullptr;
  10605. }
  10606. const tflite::TopKV2Options *builtin_options_as_TopKV2Options() const {
  10607. return builtin_options_type() == tflite::BuiltinOptions_TopKV2Options ? static_cast<const tflite::TopKV2Options *>(builtin_options()) : nullptr;
  10608. }
  10609. const tflite::SplitOptions *builtin_options_as_SplitOptions() const {
  10610. return builtin_options_type() == tflite::BuiltinOptions_SplitOptions ? static_cast<const tflite::SplitOptions *>(builtin_options()) : nullptr;
  10611. }
  10612. const tflite::LogSoftmaxOptions *builtin_options_as_LogSoftmaxOptions() const {
  10613. return builtin_options_type() == tflite::BuiltinOptions_LogSoftmaxOptions ? static_cast<const tflite::LogSoftmaxOptions *>(builtin_options()) : nullptr;
  10614. }
  10615. const tflite::CastOptions *builtin_options_as_CastOptions() const {
  10616. return builtin_options_type() == tflite::BuiltinOptions_CastOptions ? static_cast<const tflite::CastOptions *>(builtin_options()) : nullptr;
  10617. }
  10618. const tflite::DequantizeOptions *builtin_options_as_DequantizeOptions() const {
  10619. return builtin_options_type() == tflite::BuiltinOptions_DequantizeOptions ? static_cast<const tflite::DequantizeOptions *>(builtin_options()) : nullptr;
  10620. }
  10621. const tflite::MaximumMinimumOptions *builtin_options_as_MaximumMinimumOptions() const {
  10622. return builtin_options_type() == tflite::BuiltinOptions_MaximumMinimumOptions ? static_cast<const tflite::MaximumMinimumOptions *>(builtin_options()) : nullptr;
  10623. }
  10624. const tflite::ArgMaxOptions *builtin_options_as_ArgMaxOptions() const {
  10625. return builtin_options_type() == tflite::BuiltinOptions_ArgMaxOptions ? static_cast<const tflite::ArgMaxOptions *>(builtin_options()) : nullptr;
  10626. }
  10627. const tflite::LessOptions *builtin_options_as_LessOptions() const {
  10628. return builtin_options_type() == tflite::BuiltinOptions_LessOptions ? static_cast<const tflite::LessOptions *>(builtin_options()) : nullptr;
  10629. }
  10630. const tflite::NegOptions *builtin_options_as_NegOptions() const {
  10631. return builtin_options_type() == tflite::BuiltinOptions_NegOptions ? static_cast<const tflite::NegOptions *>(builtin_options()) : nullptr;
  10632. }
  10633. const tflite::PadV2Options *builtin_options_as_PadV2Options() const {
  10634. return builtin_options_type() == tflite::BuiltinOptions_PadV2Options ? static_cast<const tflite::PadV2Options *>(builtin_options()) : nullptr;
  10635. }
  10636. const tflite::GreaterOptions *builtin_options_as_GreaterOptions() const {
  10637. return builtin_options_type() == tflite::BuiltinOptions_GreaterOptions ? static_cast<const tflite::GreaterOptions *>(builtin_options()) : nullptr;
  10638. }
  10639. const tflite::GreaterEqualOptions *builtin_options_as_GreaterEqualOptions() const {
  10640. return builtin_options_type() == tflite::BuiltinOptions_GreaterEqualOptions ? static_cast<const tflite::GreaterEqualOptions *>(builtin_options()) : nullptr;
  10641. }
  10642. const tflite::LessEqualOptions *builtin_options_as_LessEqualOptions() const {
  10643. return builtin_options_type() == tflite::BuiltinOptions_LessEqualOptions ? static_cast<const tflite::LessEqualOptions *>(builtin_options()) : nullptr;
  10644. }
  10645. const tflite::SelectOptions *builtin_options_as_SelectOptions() const {
  10646. return builtin_options_type() == tflite::BuiltinOptions_SelectOptions ? static_cast<const tflite::SelectOptions *>(builtin_options()) : nullptr;
  10647. }
  10648. const tflite::SliceOptions *builtin_options_as_SliceOptions() const {
  10649. return builtin_options_type() == tflite::BuiltinOptions_SliceOptions ? static_cast<const tflite::SliceOptions *>(builtin_options()) : nullptr;
  10650. }
  10651. const tflite::TransposeConvOptions *builtin_options_as_TransposeConvOptions() const {
  10652. return builtin_options_type() == tflite::BuiltinOptions_TransposeConvOptions ? static_cast<const tflite::TransposeConvOptions *>(builtin_options()) : nullptr;
  10653. }
  10654. const tflite::SparseToDenseOptions *builtin_options_as_SparseToDenseOptions() const {
  10655. return builtin_options_type() == tflite::BuiltinOptions_SparseToDenseOptions ? static_cast<const tflite::SparseToDenseOptions *>(builtin_options()) : nullptr;
  10656. }
  10657. const tflite::TileOptions *builtin_options_as_TileOptions() const {
  10658. return builtin_options_type() == tflite::BuiltinOptions_TileOptions ? static_cast<const tflite::TileOptions *>(builtin_options()) : nullptr;
  10659. }
  10660. const tflite::ExpandDimsOptions *builtin_options_as_ExpandDimsOptions() const {
  10661. return builtin_options_type() == tflite::BuiltinOptions_ExpandDimsOptions ? static_cast<const tflite::ExpandDimsOptions *>(builtin_options()) : nullptr;
  10662. }
  10663. const tflite::EqualOptions *builtin_options_as_EqualOptions() const {
  10664. return builtin_options_type() == tflite::BuiltinOptions_EqualOptions ? static_cast<const tflite::EqualOptions *>(builtin_options()) : nullptr;
  10665. }
  10666. const tflite::NotEqualOptions *builtin_options_as_NotEqualOptions() const {
  10667. return builtin_options_type() == tflite::BuiltinOptions_NotEqualOptions ? static_cast<const tflite::NotEqualOptions *>(builtin_options()) : nullptr;
  10668. }
  10669. const tflite::ShapeOptions *builtin_options_as_ShapeOptions() const {
  10670. return builtin_options_type() == tflite::BuiltinOptions_ShapeOptions ? static_cast<const tflite::ShapeOptions *>(builtin_options()) : nullptr;
  10671. }
  10672. const tflite::PowOptions *builtin_options_as_PowOptions() const {
  10673. return builtin_options_type() == tflite::BuiltinOptions_PowOptions ? static_cast<const tflite::PowOptions *>(builtin_options()) : nullptr;
  10674. }
  10675. const tflite::ArgMinOptions *builtin_options_as_ArgMinOptions() const {
  10676. return builtin_options_type() == tflite::BuiltinOptions_ArgMinOptions ? static_cast<const tflite::ArgMinOptions *>(builtin_options()) : nullptr;
  10677. }
  10678. const tflite::FakeQuantOptions *builtin_options_as_FakeQuantOptions() const {
  10679. return builtin_options_type() == tflite::BuiltinOptions_FakeQuantOptions ? static_cast<const tflite::FakeQuantOptions *>(builtin_options()) : nullptr;
  10680. }
  10681. const tflite::PackOptions *builtin_options_as_PackOptions() const {
  10682. return builtin_options_type() == tflite::BuiltinOptions_PackOptions ? static_cast<const tflite::PackOptions *>(builtin_options()) : nullptr;
  10683. }
  10684. const tflite::LogicalOrOptions *builtin_options_as_LogicalOrOptions() const {
  10685. return builtin_options_type() == tflite::BuiltinOptions_LogicalOrOptions ? static_cast<const tflite::LogicalOrOptions *>(builtin_options()) : nullptr;
  10686. }
  10687. const tflite::OneHotOptions *builtin_options_as_OneHotOptions() const {
  10688. return builtin_options_type() == tflite::BuiltinOptions_OneHotOptions ? static_cast<const tflite::OneHotOptions *>(builtin_options()) : nullptr;
  10689. }
  10690. const tflite::LogicalAndOptions *builtin_options_as_LogicalAndOptions() const {
  10691. return builtin_options_type() == tflite::BuiltinOptions_LogicalAndOptions ? static_cast<const tflite::LogicalAndOptions *>(builtin_options()) : nullptr;
  10692. }
  10693. const tflite::LogicalNotOptions *builtin_options_as_LogicalNotOptions() const {
  10694. return builtin_options_type() == tflite::BuiltinOptions_LogicalNotOptions ? static_cast<const tflite::LogicalNotOptions *>(builtin_options()) : nullptr;
  10695. }
  10696. const tflite::UnpackOptions *builtin_options_as_UnpackOptions() const {
  10697. return builtin_options_type() == tflite::BuiltinOptions_UnpackOptions ? static_cast<const tflite::UnpackOptions *>(builtin_options()) : nullptr;
  10698. }
  10699. const tflite::FloorDivOptions *builtin_options_as_FloorDivOptions() const {
  10700. return builtin_options_type() == tflite::BuiltinOptions_FloorDivOptions ? static_cast<const tflite::FloorDivOptions *>(builtin_options()) : nullptr;
  10701. }
  10702. const tflite::SquareOptions *builtin_options_as_SquareOptions() const {
  10703. return builtin_options_type() == tflite::BuiltinOptions_SquareOptions ? static_cast<const tflite::SquareOptions *>(builtin_options()) : nullptr;
  10704. }
  10705. const tflite::ZerosLikeOptions *builtin_options_as_ZerosLikeOptions() const {
  10706. return builtin_options_type() == tflite::BuiltinOptions_ZerosLikeOptions ? static_cast<const tflite::ZerosLikeOptions *>(builtin_options()) : nullptr;
  10707. }
  10708. const tflite::FillOptions *builtin_options_as_FillOptions() const {
  10709. return builtin_options_type() == tflite::BuiltinOptions_FillOptions ? static_cast<const tflite::FillOptions *>(builtin_options()) : nullptr;
  10710. }
  10711. const tflite::BidirectionalSequenceLSTMOptions *builtin_options_as_BidirectionalSequenceLSTMOptions() const {
  10712. return builtin_options_type() == tflite::BuiltinOptions_BidirectionalSequenceLSTMOptions ? static_cast<const tflite::BidirectionalSequenceLSTMOptions *>(builtin_options()) : nullptr;
  10713. }
  10714. const tflite::BidirectionalSequenceRNNOptions *builtin_options_as_BidirectionalSequenceRNNOptions() const {
  10715. return builtin_options_type() == tflite::BuiltinOptions_BidirectionalSequenceRNNOptions ? static_cast<const tflite::BidirectionalSequenceRNNOptions *>(builtin_options()) : nullptr;
  10716. }
  10717. const tflite::UnidirectionalSequenceLSTMOptions *builtin_options_as_UnidirectionalSequenceLSTMOptions() const {
  10718. return builtin_options_type() == tflite::BuiltinOptions_UnidirectionalSequenceLSTMOptions ? static_cast<const tflite::UnidirectionalSequenceLSTMOptions *>(builtin_options()) : nullptr;
  10719. }
  10720. const tflite::FloorModOptions *builtin_options_as_FloorModOptions() const {
  10721. return builtin_options_type() == tflite::BuiltinOptions_FloorModOptions ? static_cast<const tflite::FloorModOptions *>(builtin_options()) : nullptr;
  10722. }
  10723. const tflite::RangeOptions *builtin_options_as_RangeOptions() const {
  10724. return builtin_options_type() == tflite::BuiltinOptions_RangeOptions ? static_cast<const tflite::RangeOptions *>(builtin_options()) : nullptr;
  10725. }
  10726. const tflite::ResizeNearestNeighborOptions *builtin_options_as_ResizeNearestNeighborOptions() const {
  10727. return builtin_options_type() == tflite::BuiltinOptions_ResizeNearestNeighborOptions ? static_cast<const tflite::ResizeNearestNeighborOptions *>(builtin_options()) : nullptr;
  10728. }
  10729. const tflite::LeakyReluOptions *builtin_options_as_LeakyReluOptions() const {
  10730. return builtin_options_type() == tflite::BuiltinOptions_LeakyReluOptions ? static_cast<const tflite::LeakyReluOptions *>(builtin_options()) : nullptr;
  10731. }
  10732. const tflite::SquaredDifferenceOptions *builtin_options_as_SquaredDifferenceOptions() const {
  10733. return builtin_options_type() == tflite::BuiltinOptions_SquaredDifferenceOptions ? static_cast<const tflite::SquaredDifferenceOptions *>(builtin_options()) : nullptr;
  10734. }
  10735. const tflite::MirrorPadOptions *builtin_options_as_MirrorPadOptions() const {
  10736. return builtin_options_type() == tflite::BuiltinOptions_MirrorPadOptions ? static_cast<const tflite::MirrorPadOptions *>(builtin_options()) : nullptr;
  10737. }
  10738. const tflite::AbsOptions *builtin_options_as_AbsOptions() const {
  10739. return builtin_options_type() == tflite::BuiltinOptions_AbsOptions ? static_cast<const tflite::AbsOptions *>(builtin_options()) : nullptr;
  10740. }
  10741. const tflite::SplitVOptions *builtin_options_as_SplitVOptions() const {
  10742. return builtin_options_type() == tflite::BuiltinOptions_SplitVOptions ? static_cast<const tflite::SplitVOptions *>(builtin_options()) : nullptr;
  10743. }
  10744. const tflite::UniqueOptions *builtin_options_as_UniqueOptions() const {
  10745. return builtin_options_type() == tflite::BuiltinOptions_UniqueOptions ? static_cast<const tflite::UniqueOptions *>(builtin_options()) : nullptr;
  10746. }
  10747. const tflite::ReverseV2Options *builtin_options_as_ReverseV2Options() const {
  10748. return builtin_options_type() == tflite::BuiltinOptions_ReverseV2Options ? static_cast<const tflite::ReverseV2Options *>(builtin_options()) : nullptr;
  10749. }
  10750. const tflite::AddNOptions *builtin_options_as_AddNOptions() const {
  10751. return builtin_options_type() == tflite::BuiltinOptions_AddNOptions ? static_cast<const tflite::AddNOptions *>(builtin_options()) : nullptr;
  10752. }
  10753. const tflite::GatherNdOptions *builtin_options_as_GatherNdOptions() const {
  10754. return builtin_options_type() == tflite::BuiltinOptions_GatherNdOptions ? static_cast<const tflite::GatherNdOptions *>(builtin_options()) : nullptr;
  10755. }
  10756. const tflite::CosOptions *builtin_options_as_CosOptions() const {
  10757. return builtin_options_type() == tflite::BuiltinOptions_CosOptions ? static_cast<const tflite::CosOptions *>(builtin_options()) : nullptr;
  10758. }
  10759. const tflite::WhereOptions *builtin_options_as_WhereOptions() const {
  10760. return builtin_options_type() == tflite::BuiltinOptions_WhereOptions ? static_cast<const tflite::WhereOptions *>(builtin_options()) : nullptr;
  10761. }
  10762. const tflite::RankOptions *builtin_options_as_RankOptions() const {
  10763. return builtin_options_type() == tflite::BuiltinOptions_RankOptions ? static_cast<const tflite::RankOptions *>(builtin_options()) : nullptr;
  10764. }
  10765. const tflite::ReverseSequenceOptions *builtin_options_as_ReverseSequenceOptions() const {
  10766. return builtin_options_type() == tflite::BuiltinOptions_ReverseSequenceOptions ? static_cast<const tflite::ReverseSequenceOptions *>(builtin_options()) : nullptr;
  10767. }
  10768. const tflite::MatrixDiagOptions *builtin_options_as_MatrixDiagOptions() const {
  10769. return builtin_options_type() == tflite::BuiltinOptions_MatrixDiagOptions ? static_cast<const tflite::MatrixDiagOptions *>(builtin_options()) : nullptr;
  10770. }
  10771. const tflite::QuantizeOptions *builtin_options_as_QuantizeOptions() const {
  10772. return builtin_options_type() == tflite::BuiltinOptions_QuantizeOptions ? static_cast<const tflite::QuantizeOptions *>(builtin_options()) : nullptr;
  10773. }
  10774. const tflite::MatrixSetDiagOptions *builtin_options_as_MatrixSetDiagOptions() const {
  10775. return builtin_options_type() == tflite::BuiltinOptions_MatrixSetDiagOptions ? static_cast<const tflite::MatrixSetDiagOptions *>(builtin_options()) : nullptr;
  10776. }
  10777. const tflite::HardSwishOptions *builtin_options_as_HardSwishOptions() const {
  10778. return builtin_options_type() == tflite::BuiltinOptions_HardSwishOptions ? static_cast<const tflite::HardSwishOptions *>(builtin_options()) : nullptr;
  10779. }
  10780. const tflite::IfOptions *builtin_options_as_IfOptions() const {
  10781. return builtin_options_type() == tflite::BuiltinOptions_IfOptions ? static_cast<const tflite::IfOptions *>(builtin_options()) : nullptr;
  10782. }
  10783. const tflite::WhileOptions *builtin_options_as_WhileOptions() const {
  10784. return builtin_options_type() == tflite::BuiltinOptions_WhileOptions ? static_cast<const tflite::WhileOptions *>(builtin_options()) : nullptr;
  10785. }
  10786. const tflite::DepthToSpaceOptions *builtin_options_as_DepthToSpaceOptions() const {
  10787. return builtin_options_type() == tflite::BuiltinOptions_DepthToSpaceOptions ? static_cast<const tflite::DepthToSpaceOptions *>(builtin_options()) : nullptr;
  10788. }
  10789. const tflite::NonMaxSuppressionV4Options *builtin_options_as_NonMaxSuppressionV4Options() const {
  10790. return builtin_options_type() == tflite::BuiltinOptions_NonMaxSuppressionV4Options ? static_cast<const tflite::NonMaxSuppressionV4Options *>(builtin_options()) : nullptr;
  10791. }
  10792. const tflite::NonMaxSuppressionV5Options *builtin_options_as_NonMaxSuppressionV5Options() const {
  10793. return builtin_options_type() == tflite::BuiltinOptions_NonMaxSuppressionV5Options ? static_cast<const tflite::NonMaxSuppressionV5Options *>(builtin_options()) : nullptr;
  10794. }
  10795. const tflite::ScatterNdOptions *builtin_options_as_ScatterNdOptions() const {
  10796. return builtin_options_type() == tflite::BuiltinOptions_ScatterNdOptions ? static_cast<const tflite::ScatterNdOptions *>(builtin_options()) : nullptr;
  10797. }
  10798. const tflite::SelectV2Options *builtin_options_as_SelectV2Options() const {
  10799. return builtin_options_type() == tflite::BuiltinOptions_SelectV2Options ? static_cast<const tflite::SelectV2Options *>(builtin_options()) : nullptr;
  10800. }
  10801. const tflite::DensifyOptions *builtin_options_as_DensifyOptions() const {
  10802. return builtin_options_type() == tflite::BuiltinOptions_DensifyOptions ? static_cast<const tflite::DensifyOptions *>(builtin_options()) : nullptr;
  10803. }
  10804. const tflite::SegmentSumOptions *builtin_options_as_SegmentSumOptions() const {
  10805. return builtin_options_type() == tflite::BuiltinOptions_SegmentSumOptions ? static_cast<const tflite::SegmentSumOptions *>(builtin_options()) : nullptr;
  10806. }
  10807. const tflite::BatchMatMulOptions *builtin_options_as_BatchMatMulOptions() const {
  10808. return builtin_options_type() == tflite::BuiltinOptions_BatchMatMulOptions ? static_cast<const tflite::BatchMatMulOptions *>(builtin_options()) : nullptr;
  10809. }
  10810. const tflite::CumsumOptions *builtin_options_as_CumsumOptions() const {
  10811. return builtin_options_type() == tflite::BuiltinOptions_CumsumOptions ? static_cast<const tflite::CumsumOptions *>(builtin_options()) : nullptr;
  10812. }
  10813. const tflite::CallOnceOptions *builtin_options_as_CallOnceOptions() const {
  10814. return builtin_options_type() == tflite::BuiltinOptions_CallOnceOptions ? static_cast<const tflite::CallOnceOptions *>(builtin_options()) : nullptr;
  10815. }
  10816. const tflite::BroadcastToOptions *builtin_options_as_BroadcastToOptions() const {
  10817. return builtin_options_type() == tflite::BuiltinOptions_BroadcastToOptions ? static_cast<const tflite::BroadcastToOptions *>(builtin_options()) : nullptr;
  10818. }
  10819. const tflite::Rfft2dOptions *builtin_options_as_Rfft2dOptions() const {
  10820. return builtin_options_type() == tflite::BuiltinOptions_Rfft2dOptions ? static_cast<const tflite::Rfft2dOptions *>(builtin_options()) : nullptr;
  10821. }
  10822. const tflite::Conv3DOptions *builtin_options_as_Conv3DOptions() const {
  10823. return builtin_options_type() == tflite::BuiltinOptions_Conv3DOptions ? static_cast<const tflite::Conv3DOptions *>(builtin_options()) : nullptr;
  10824. }
  10825. const tflite::HashtableOptions *builtin_options_as_HashtableOptions() const {
  10826. return builtin_options_type() == tflite::BuiltinOptions_HashtableOptions ? static_cast<const tflite::HashtableOptions *>(builtin_options()) : nullptr;
  10827. }
  10828. const tflite::HashtableFindOptions *builtin_options_as_HashtableFindOptions() const {
  10829. return builtin_options_type() == tflite::BuiltinOptions_HashtableFindOptions ? static_cast<const tflite::HashtableFindOptions *>(builtin_options()) : nullptr;
  10830. }
  10831. const tflite::HashtableImportOptions *builtin_options_as_HashtableImportOptions() const {
  10832. return builtin_options_type() == tflite::BuiltinOptions_HashtableImportOptions ? static_cast<const tflite::HashtableImportOptions *>(builtin_options()) : nullptr;
  10833. }
  10834. const tflite::HashtableSizeOptions *builtin_options_as_HashtableSizeOptions() const {
  10835. return builtin_options_type() == tflite::BuiltinOptions_HashtableSizeOptions ? static_cast<const tflite::HashtableSizeOptions *>(builtin_options()) : nullptr;
  10836. }
  10837. const tflite::VarHandleOptions *builtin_options_as_VarHandleOptions() const {
  10838. return builtin_options_type() == tflite::BuiltinOptions_VarHandleOptions ? static_cast<const tflite::VarHandleOptions *>(builtin_options()) : nullptr;
  10839. }
  10840. const tflite::ReadVariableOptions *builtin_options_as_ReadVariableOptions() const {
  10841. return builtin_options_type() == tflite::BuiltinOptions_ReadVariableOptions ? static_cast<const tflite::ReadVariableOptions *>(builtin_options()) : nullptr;
  10842. }
  10843. const tflite::AssignVariableOptions *builtin_options_as_AssignVariableOptions() const {
  10844. return builtin_options_type() == tflite::BuiltinOptions_AssignVariableOptions ? static_cast<const tflite::AssignVariableOptions *>(builtin_options()) : nullptr;
  10845. }
  10846. const tflite::RandomOptions *builtin_options_as_RandomOptions() const {
  10847. return builtin_options_type() == tflite::BuiltinOptions_RandomOptions ? static_cast<const tflite::RandomOptions *>(builtin_options()) : nullptr;
  10848. }
  10849. const tflite::BucketizeOptions *builtin_options_as_BucketizeOptions() const {
  10850. return builtin_options_type() == tflite::BuiltinOptions_BucketizeOptions ? static_cast<const tflite::BucketizeOptions *>(builtin_options()) : nullptr;
  10851. }
  10852. const tflite::GeluOptions *builtin_options_as_GeluOptions() const {
  10853. return builtin_options_type() == tflite::BuiltinOptions_GeluOptions ? static_cast<const tflite::GeluOptions *>(builtin_options()) : nullptr;
  10854. }
  10855. const tflite::DynamicUpdateSliceOptions *builtin_options_as_DynamicUpdateSliceOptions() const {
  10856. return builtin_options_type() == tflite::BuiltinOptions_DynamicUpdateSliceOptions ? static_cast<const tflite::DynamicUpdateSliceOptions *>(builtin_options()) : nullptr;
  10857. }
  10858. const tflite::UnsortedSegmentProdOptions *builtin_options_as_UnsortedSegmentProdOptions() const {
  10859. return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentProdOptions ? static_cast<const tflite::UnsortedSegmentProdOptions *>(builtin_options()) : nullptr;
  10860. }
  10861. const tflite::UnsortedSegmentMaxOptions *builtin_options_as_UnsortedSegmentMaxOptions() const {
  10862. return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentMaxOptions ? static_cast<const tflite::UnsortedSegmentMaxOptions *>(builtin_options()) : nullptr;
  10863. }
  10864. const tflite::UnsortedSegmentMinOptions *builtin_options_as_UnsortedSegmentMinOptions() const {
  10865. return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentMinOptions ? static_cast<const tflite::UnsortedSegmentMinOptions *>(builtin_options()) : nullptr;
  10866. }
  10867. const tflite::UnsortedSegmentSumOptions *builtin_options_as_UnsortedSegmentSumOptions() const {
  10868. return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentSumOptions ? static_cast<const tflite::UnsortedSegmentSumOptions *>(builtin_options()) : nullptr;
  10869. }
  10870. const tflite::ATan2Options *builtin_options_as_ATan2Options() const {
  10871. return builtin_options_type() == tflite::BuiltinOptions_ATan2Options ? static_cast<const tflite::ATan2Options *>(builtin_options()) : nullptr;
  10872. }
  10873. const tflite::SignOptions *builtin_options_as_SignOptions() const {
  10874. return builtin_options_type() == tflite::BuiltinOptions_SignOptions ? static_cast<const tflite::SignOptions *>(builtin_options()) : nullptr;
  10875. }
  10876. const flatbuffers::Vector<uint8_t> *custom_options() const {
  10877. return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_CUSTOM_OPTIONS);
  10878. }
  10879. tflite::CustomOptionsFormat custom_options_format() const {
  10880. return static_cast<tflite::CustomOptionsFormat>(GetField<int8_t>(VT_CUSTOM_OPTIONS_FORMAT, 0));
  10881. }
  10882. const flatbuffers::Vector<uint8_t> *mutating_variable_inputs() const {
  10883. return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_MUTATING_VARIABLE_INPUTS);
  10884. }
  10885. const flatbuffers::Vector<int32_t> *intermediates() const {
  10886. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_INTERMEDIATES);
  10887. }
  10888. bool Verify(flatbuffers::Verifier &verifier) const {
  10889. return VerifyTableStart(verifier) &&
  10890. VerifyField<uint32_t>(verifier, VT_OPCODE_INDEX, 4) &&
  10891. VerifyOffset(verifier, VT_INPUTS) &&
  10892. verifier.VerifyVector(inputs()) &&
  10893. VerifyOffset(verifier, VT_OUTPUTS) &&
  10894. verifier.VerifyVector(outputs()) &&
  10895. VerifyField<uint8_t>(verifier, VT_BUILTIN_OPTIONS_TYPE, 1) &&
  10896. VerifyOffset(verifier, VT_BUILTIN_OPTIONS) &&
  10897. VerifyBuiltinOptions(verifier, builtin_options(), builtin_options_type()) &&
  10898. VerifyOffset(verifier, VT_CUSTOM_OPTIONS) &&
  10899. verifier.VerifyVector(custom_options()) &&
  10900. VerifyField<int8_t>(verifier, VT_CUSTOM_OPTIONS_FORMAT, 1) &&
  10901. VerifyOffset(verifier, VT_MUTATING_VARIABLE_INPUTS) &&
  10902. verifier.VerifyVector(mutating_variable_inputs()) &&
  10903. VerifyOffset(verifier, VT_INTERMEDIATES) &&
  10904. verifier.VerifyVector(intermediates()) &&
  10905. verifier.EndTable();
  10906. }
  10907. OperatorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10908. void UnPackTo(OperatorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10909. static flatbuffers::Offset<Operator> Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10910. };
  10911. template<> inline const tflite::Conv2DOptions *Operator::builtin_options_as<tflite::Conv2DOptions>() const {
  10912. return builtin_options_as_Conv2DOptions();
  10913. }
  10914. template<> inline const tflite::DepthwiseConv2DOptions *Operator::builtin_options_as<tflite::DepthwiseConv2DOptions>() const {
  10915. return builtin_options_as_DepthwiseConv2DOptions();
  10916. }
  10917. template<> inline const tflite::ConcatEmbeddingsOptions *Operator::builtin_options_as<tflite::ConcatEmbeddingsOptions>() const {
  10918. return builtin_options_as_ConcatEmbeddingsOptions();
  10919. }
  10920. template<> inline const tflite::LSHProjectionOptions *Operator::builtin_options_as<tflite::LSHProjectionOptions>() const {
  10921. return builtin_options_as_LSHProjectionOptions();
  10922. }
  10923. template<> inline const tflite::Pool2DOptions *Operator::builtin_options_as<tflite::Pool2DOptions>() const {
  10924. return builtin_options_as_Pool2DOptions();
  10925. }
  10926. template<> inline const tflite::SVDFOptions *Operator::builtin_options_as<tflite::SVDFOptions>() const {
  10927. return builtin_options_as_SVDFOptions();
  10928. }
  10929. template<> inline const tflite::RNNOptions *Operator::builtin_options_as<tflite::RNNOptions>() const {
  10930. return builtin_options_as_RNNOptions();
  10931. }
  10932. template<> inline const tflite::FullyConnectedOptions *Operator::builtin_options_as<tflite::FullyConnectedOptions>() const {
  10933. return builtin_options_as_FullyConnectedOptions();
  10934. }
  10935. template<> inline const tflite::SoftmaxOptions *Operator::builtin_options_as<tflite::SoftmaxOptions>() const {
  10936. return builtin_options_as_SoftmaxOptions();
  10937. }
  10938. template<> inline const tflite::ConcatenationOptions *Operator::builtin_options_as<tflite::ConcatenationOptions>() const {
  10939. return builtin_options_as_ConcatenationOptions();
  10940. }
  10941. template<> inline const tflite::AddOptions *Operator::builtin_options_as<tflite::AddOptions>() const {
  10942. return builtin_options_as_AddOptions();
  10943. }
  10944. template<> inline const tflite::L2NormOptions *Operator::builtin_options_as<tflite::L2NormOptions>() const {
  10945. return builtin_options_as_L2NormOptions();
  10946. }
  10947. template<> inline const tflite::LocalResponseNormalizationOptions *Operator::builtin_options_as<tflite::LocalResponseNormalizationOptions>() const {
  10948. return builtin_options_as_LocalResponseNormalizationOptions();
  10949. }
  10950. template<> inline const tflite::LSTMOptions *Operator::builtin_options_as<tflite::LSTMOptions>() const {
  10951. return builtin_options_as_LSTMOptions();
  10952. }
  10953. template<> inline const tflite::ResizeBilinearOptions *Operator::builtin_options_as<tflite::ResizeBilinearOptions>() const {
  10954. return builtin_options_as_ResizeBilinearOptions();
  10955. }
  10956. template<> inline const tflite::CallOptions *Operator::builtin_options_as<tflite::CallOptions>() const {
  10957. return builtin_options_as_CallOptions();
  10958. }
  10959. template<> inline const tflite::ReshapeOptions *Operator::builtin_options_as<tflite::ReshapeOptions>() const {
  10960. return builtin_options_as_ReshapeOptions();
  10961. }
  10962. template<> inline const tflite::SkipGramOptions *Operator::builtin_options_as<tflite::SkipGramOptions>() const {
  10963. return builtin_options_as_SkipGramOptions();
  10964. }
  10965. template<> inline const tflite::SpaceToDepthOptions *Operator::builtin_options_as<tflite::SpaceToDepthOptions>() const {
  10966. return builtin_options_as_SpaceToDepthOptions();
  10967. }
  10968. template<> inline const tflite::EmbeddingLookupSparseOptions *Operator::builtin_options_as<tflite::EmbeddingLookupSparseOptions>() const {
  10969. return builtin_options_as_EmbeddingLookupSparseOptions();
  10970. }
  10971. template<> inline const tflite::MulOptions *Operator::builtin_options_as<tflite::MulOptions>() const {
  10972. return builtin_options_as_MulOptions();
  10973. }
  10974. template<> inline const tflite::PadOptions *Operator::builtin_options_as<tflite::PadOptions>() const {
  10975. return builtin_options_as_PadOptions();
  10976. }
  10977. template<> inline const tflite::GatherOptions *Operator::builtin_options_as<tflite::GatherOptions>() const {
  10978. return builtin_options_as_GatherOptions();
  10979. }
  10980. template<> inline const tflite::BatchToSpaceNDOptions *Operator::builtin_options_as<tflite::BatchToSpaceNDOptions>() const {
  10981. return builtin_options_as_BatchToSpaceNDOptions();
  10982. }
  10983. template<> inline const tflite::SpaceToBatchNDOptions *Operator::builtin_options_as<tflite::SpaceToBatchNDOptions>() const {
  10984. return builtin_options_as_SpaceToBatchNDOptions();
  10985. }
  10986. template<> inline const tflite::TransposeOptions *Operator::builtin_options_as<tflite::TransposeOptions>() const {
  10987. return builtin_options_as_TransposeOptions();
  10988. }
  10989. template<> inline const tflite::ReducerOptions *Operator::builtin_options_as<tflite::ReducerOptions>() const {
  10990. return builtin_options_as_ReducerOptions();
  10991. }
  10992. template<> inline const tflite::SubOptions *Operator::builtin_options_as<tflite::SubOptions>() const {
  10993. return builtin_options_as_SubOptions();
  10994. }
  10995. template<> inline const tflite::DivOptions *Operator::builtin_options_as<tflite::DivOptions>() const {
  10996. return builtin_options_as_DivOptions();
  10997. }
  10998. template<> inline const tflite::SqueezeOptions *Operator::builtin_options_as<tflite::SqueezeOptions>() const {
  10999. return builtin_options_as_SqueezeOptions();
  11000. }
  11001. template<> inline const tflite::SequenceRNNOptions *Operator::builtin_options_as<tflite::SequenceRNNOptions>() const {
  11002. return builtin_options_as_SequenceRNNOptions();
  11003. }
  11004. template<> inline const tflite::StridedSliceOptions *Operator::builtin_options_as<tflite::StridedSliceOptions>() const {
  11005. return builtin_options_as_StridedSliceOptions();
  11006. }
  11007. template<> inline const tflite::ExpOptions *Operator::builtin_options_as<tflite::ExpOptions>() const {
  11008. return builtin_options_as_ExpOptions();
  11009. }
  11010. template<> inline const tflite::TopKV2Options *Operator::builtin_options_as<tflite::TopKV2Options>() const {
  11011. return builtin_options_as_TopKV2Options();
  11012. }
  11013. template<> inline const tflite::SplitOptions *Operator::builtin_options_as<tflite::SplitOptions>() const {
  11014. return builtin_options_as_SplitOptions();
  11015. }
  11016. template<> inline const tflite::LogSoftmaxOptions *Operator::builtin_options_as<tflite::LogSoftmaxOptions>() const {
  11017. return builtin_options_as_LogSoftmaxOptions();
  11018. }
  11019. template<> inline const tflite::CastOptions *Operator::builtin_options_as<tflite::CastOptions>() const {
  11020. return builtin_options_as_CastOptions();
  11021. }
  11022. template<> inline const tflite::DequantizeOptions *Operator::builtin_options_as<tflite::DequantizeOptions>() const {
  11023. return builtin_options_as_DequantizeOptions();
  11024. }
  11025. template<> inline const tflite::MaximumMinimumOptions *Operator::builtin_options_as<tflite::MaximumMinimumOptions>() const {
  11026. return builtin_options_as_MaximumMinimumOptions();
  11027. }
  11028. template<> inline const tflite::ArgMaxOptions *Operator::builtin_options_as<tflite::ArgMaxOptions>() const {
  11029. return builtin_options_as_ArgMaxOptions();
  11030. }
  11031. template<> inline const tflite::LessOptions *Operator::builtin_options_as<tflite::LessOptions>() const {
  11032. return builtin_options_as_LessOptions();
  11033. }
  11034. template<> inline const tflite::NegOptions *Operator::builtin_options_as<tflite::NegOptions>() const {
  11035. return builtin_options_as_NegOptions();
  11036. }
  11037. template<> inline const tflite::PadV2Options *Operator::builtin_options_as<tflite::PadV2Options>() const {
  11038. return builtin_options_as_PadV2Options();
  11039. }
  11040. template<> inline const tflite::GreaterOptions *Operator::builtin_options_as<tflite::GreaterOptions>() const {
  11041. return builtin_options_as_GreaterOptions();
  11042. }
  11043. template<> inline const tflite::GreaterEqualOptions *Operator::builtin_options_as<tflite::GreaterEqualOptions>() const {
  11044. return builtin_options_as_GreaterEqualOptions();
  11045. }
  11046. template<> inline const tflite::LessEqualOptions *Operator::builtin_options_as<tflite::LessEqualOptions>() const {
  11047. return builtin_options_as_LessEqualOptions();
  11048. }
  11049. template<> inline const tflite::SelectOptions *Operator::builtin_options_as<tflite::SelectOptions>() const {
  11050. return builtin_options_as_SelectOptions();
  11051. }
  11052. template<> inline const tflite::SliceOptions *Operator::builtin_options_as<tflite::SliceOptions>() const {
  11053. return builtin_options_as_SliceOptions();
  11054. }
  11055. template<> inline const tflite::TransposeConvOptions *Operator::builtin_options_as<tflite::TransposeConvOptions>() const {
  11056. return builtin_options_as_TransposeConvOptions();
  11057. }
  11058. template<> inline const tflite::SparseToDenseOptions *Operator::builtin_options_as<tflite::SparseToDenseOptions>() const {
  11059. return builtin_options_as_SparseToDenseOptions();
  11060. }
  11061. template<> inline const tflite::TileOptions *Operator::builtin_options_as<tflite::TileOptions>() const {
  11062. return builtin_options_as_TileOptions();
  11063. }
  11064. template<> inline const tflite::ExpandDimsOptions *Operator::builtin_options_as<tflite::ExpandDimsOptions>() const {
  11065. return builtin_options_as_ExpandDimsOptions();
  11066. }
  11067. template<> inline const tflite::EqualOptions *Operator::builtin_options_as<tflite::EqualOptions>() const {
  11068. return builtin_options_as_EqualOptions();
  11069. }
  11070. template<> inline const tflite::NotEqualOptions *Operator::builtin_options_as<tflite::NotEqualOptions>() const {
  11071. return builtin_options_as_NotEqualOptions();
  11072. }
  11073. template<> inline const tflite::ShapeOptions *Operator::builtin_options_as<tflite::ShapeOptions>() const {
  11074. return builtin_options_as_ShapeOptions();
  11075. }
  11076. template<> inline const tflite::PowOptions *Operator::builtin_options_as<tflite::PowOptions>() const {
  11077. return builtin_options_as_PowOptions();
  11078. }
  11079. template<> inline const tflite::ArgMinOptions *Operator::builtin_options_as<tflite::ArgMinOptions>() const {
  11080. return builtin_options_as_ArgMinOptions();
  11081. }
  11082. template<> inline const tflite::FakeQuantOptions *Operator::builtin_options_as<tflite::FakeQuantOptions>() const {
  11083. return builtin_options_as_FakeQuantOptions();
  11084. }
  11085. template<> inline const tflite::PackOptions *Operator::builtin_options_as<tflite::PackOptions>() const {
  11086. return builtin_options_as_PackOptions();
  11087. }
  11088. template<> inline const tflite::LogicalOrOptions *Operator::builtin_options_as<tflite::LogicalOrOptions>() const {
  11089. return builtin_options_as_LogicalOrOptions();
  11090. }
  11091. template<> inline const tflite::OneHotOptions *Operator::builtin_options_as<tflite::OneHotOptions>() const {
  11092. return builtin_options_as_OneHotOptions();
  11093. }
  11094. template<> inline const tflite::LogicalAndOptions *Operator::builtin_options_as<tflite::LogicalAndOptions>() const {
  11095. return builtin_options_as_LogicalAndOptions();
  11096. }
  11097. template<> inline const tflite::LogicalNotOptions *Operator::builtin_options_as<tflite::LogicalNotOptions>() const {
  11098. return builtin_options_as_LogicalNotOptions();
  11099. }
  11100. template<> inline const tflite::UnpackOptions *Operator::builtin_options_as<tflite::UnpackOptions>() const {
  11101. return builtin_options_as_UnpackOptions();
  11102. }
  11103. template<> inline const tflite::FloorDivOptions *Operator::builtin_options_as<tflite::FloorDivOptions>() const {
  11104. return builtin_options_as_FloorDivOptions();
  11105. }
  11106. template<> inline const tflite::SquareOptions *Operator::builtin_options_as<tflite::SquareOptions>() const {
  11107. return builtin_options_as_SquareOptions();
  11108. }
  11109. template<> inline const tflite::ZerosLikeOptions *Operator::builtin_options_as<tflite::ZerosLikeOptions>() const {
  11110. return builtin_options_as_ZerosLikeOptions();
  11111. }
  11112. template<> inline const tflite::FillOptions *Operator::builtin_options_as<tflite::FillOptions>() const {
  11113. return builtin_options_as_FillOptions();
  11114. }
  11115. template<> inline const tflite::BidirectionalSequenceLSTMOptions *Operator::builtin_options_as<tflite::BidirectionalSequenceLSTMOptions>() const {
  11116. return builtin_options_as_BidirectionalSequenceLSTMOptions();
  11117. }
  11118. template<> inline const tflite::BidirectionalSequenceRNNOptions *Operator::builtin_options_as<tflite::BidirectionalSequenceRNNOptions>() const {
  11119. return builtin_options_as_BidirectionalSequenceRNNOptions();
  11120. }
  11121. template<> inline const tflite::UnidirectionalSequenceLSTMOptions *Operator::builtin_options_as<tflite::UnidirectionalSequenceLSTMOptions>() const {
  11122. return builtin_options_as_UnidirectionalSequenceLSTMOptions();
  11123. }
  11124. template<> inline const tflite::FloorModOptions *Operator::builtin_options_as<tflite::FloorModOptions>() const {
  11125. return builtin_options_as_FloorModOptions();
  11126. }
  11127. template<> inline const tflite::RangeOptions *Operator::builtin_options_as<tflite::RangeOptions>() const {
  11128. return builtin_options_as_RangeOptions();
  11129. }
  11130. template<> inline const tflite::ResizeNearestNeighborOptions *Operator::builtin_options_as<tflite::ResizeNearestNeighborOptions>() const {
  11131. return builtin_options_as_ResizeNearestNeighborOptions();
  11132. }
  11133. template<> inline const tflite::LeakyReluOptions *Operator::builtin_options_as<tflite::LeakyReluOptions>() const {
  11134. return builtin_options_as_LeakyReluOptions();
  11135. }
  11136. template<> inline const tflite::SquaredDifferenceOptions *Operator::builtin_options_as<tflite::SquaredDifferenceOptions>() const {
  11137. return builtin_options_as_SquaredDifferenceOptions();
  11138. }
  11139. template<> inline const tflite::MirrorPadOptions *Operator::builtin_options_as<tflite::MirrorPadOptions>() const {
  11140. return builtin_options_as_MirrorPadOptions();
  11141. }
  11142. template<> inline const tflite::AbsOptions *Operator::builtin_options_as<tflite::AbsOptions>() const {
  11143. return builtin_options_as_AbsOptions();
  11144. }
  11145. template<> inline const tflite::SplitVOptions *Operator::builtin_options_as<tflite::SplitVOptions>() const {
  11146. return builtin_options_as_SplitVOptions();
  11147. }
  11148. template<> inline const tflite::UniqueOptions *Operator::builtin_options_as<tflite::UniqueOptions>() const {
  11149. return builtin_options_as_UniqueOptions();
  11150. }
  11151. template<> inline const tflite::ReverseV2Options *Operator::builtin_options_as<tflite::ReverseV2Options>() const {
  11152. return builtin_options_as_ReverseV2Options();
  11153. }
  11154. template<> inline const tflite::AddNOptions *Operator::builtin_options_as<tflite::AddNOptions>() const {
  11155. return builtin_options_as_AddNOptions();
  11156. }
  11157. template<> inline const tflite::GatherNdOptions *Operator::builtin_options_as<tflite::GatherNdOptions>() const {
  11158. return builtin_options_as_GatherNdOptions();
  11159. }
  11160. template<> inline const tflite::CosOptions *Operator::builtin_options_as<tflite::CosOptions>() const {
  11161. return builtin_options_as_CosOptions();
  11162. }
  11163. template<> inline const tflite::WhereOptions *Operator::builtin_options_as<tflite::WhereOptions>() const {
  11164. return builtin_options_as_WhereOptions();
  11165. }
  11166. template<> inline const tflite::RankOptions *Operator::builtin_options_as<tflite::RankOptions>() const {
  11167. return builtin_options_as_RankOptions();
  11168. }
  11169. template<> inline const tflite::ReverseSequenceOptions *Operator::builtin_options_as<tflite::ReverseSequenceOptions>() const {
  11170. return builtin_options_as_ReverseSequenceOptions();
  11171. }
  11172. template<> inline const tflite::MatrixDiagOptions *Operator::builtin_options_as<tflite::MatrixDiagOptions>() const {
  11173. return builtin_options_as_MatrixDiagOptions();
  11174. }
  11175. template<> inline const tflite::QuantizeOptions *Operator::builtin_options_as<tflite::QuantizeOptions>() const {
  11176. return builtin_options_as_QuantizeOptions();
  11177. }
  11178. template<> inline const tflite::MatrixSetDiagOptions *Operator::builtin_options_as<tflite::MatrixSetDiagOptions>() const {
  11179. return builtin_options_as_MatrixSetDiagOptions();
  11180. }
  11181. template<> inline const tflite::HardSwishOptions *Operator::builtin_options_as<tflite::HardSwishOptions>() const {
  11182. return builtin_options_as_HardSwishOptions();
  11183. }
  11184. template<> inline const tflite::IfOptions *Operator::builtin_options_as<tflite::IfOptions>() const {
  11185. return builtin_options_as_IfOptions();
  11186. }
  11187. template<> inline const tflite::WhileOptions *Operator::builtin_options_as<tflite::WhileOptions>() const {
  11188. return builtin_options_as_WhileOptions();
  11189. }
  11190. template<> inline const tflite::DepthToSpaceOptions *Operator::builtin_options_as<tflite::DepthToSpaceOptions>() const {
  11191. return builtin_options_as_DepthToSpaceOptions();
  11192. }
  11193. template<> inline const tflite::NonMaxSuppressionV4Options *Operator::builtin_options_as<tflite::NonMaxSuppressionV4Options>() const {
  11194. return builtin_options_as_NonMaxSuppressionV4Options();
  11195. }
  11196. template<> inline const tflite::NonMaxSuppressionV5Options *Operator::builtin_options_as<tflite::NonMaxSuppressionV5Options>() const {
  11197. return builtin_options_as_NonMaxSuppressionV5Options();
  11198. }
  11199. template<> inline const tflite::ScatterNdOptions *Operator::builtin_options_as<tflite::ScatterNdOptions>() const {
  11200. return builtin_options_as_ScatterNdOptions();
  11201. }
  11202. template<> inline const tflite::SelectV2Options *Operator::builtin_options_as<tflite::SelectV2Options>() const {
  11203. return builtin_options_as_SelectV2Options();
  11204. }
  11205. template<> inline const tflite::DensifyOptions *Operator::builtin_options_as<tflite::DensifyOptions>() const {
  11206. return builtin_options_as_DensifyOptions();
  11207. }
  11208. template<> inline const tflite::SegmentSumOptions *Operator::builtin_options_as<tflite::SegmentSumOptions>() const {
  11209. return builtin_options_as_SegmentSumOptions();
  11210. }
  11211. template<> inline const tflite::BatchMatMulOptions *Operator::builtin_options_as<tflite::BatchMatMulOptions>() const {
  11212. return builtin_options_as_BatchMatMulOptions();
  11213. }
  11214. template<> inline const tflite::CumsumOptions *Operator::builtin_options_as<tflite::CumsumOptions>() const {
  11215. return builtin_options_as_CumsumOptions();
  11216. }
  11217. template<> inline const tflite::CallOnceOptions *Operator::builtin_options_as<tflite::CallOnceOptions>() const {
  11218. return builtin_options_as_CallOnceOptions();
  11219. }
  11220. template<> inline const tflite::BroadcastToOptions *Operator::builtin_options_as<tflite::BroadcastToOptions>() const {
  11221. return builtin_options_as_BroadcastToOptions();
  11222. }
  11223. template<> inline const tflite::Rfft2dOptions *Operator::builtin_options_as<tflite::Rfft2dOptions>() const {
  11224. return builtin_options_as_Rfft2dOptions();
  11225. }
  11226. template<> inline const tflite::Conv3DOptions *Operator::builtin_options_as<tflite::Conv3DOptions>() const {
  11227. return builtin_options_as_Conv3DOptions();
  11228. }
  11229. template<> inline const tflite::HashtableOptions *Operator::builtin_options_as<tflite::HashtableOptions>() const {
  11230. return builtin_options_as_HashtableOptions();
  11231. }
  11232. template<> inline const tflite::HashtableFindOptions *Operator::builtin_options_as<tflite::HashtableFindOptions>() const {
  11233. return builtin_options_as_HashtableFindOptions();
  11234. }
  11235. template<> inline const tflite::HashtableImportOptions *Operator::builtin_options_as<tflite::HashtableImportOptions>() const {
  11236. return builtin_options_as_HashtableImportOptions();
  11237. }
  11238. template<> inline const tflite::HashtableSizeOptions *Operator::builtin_options_as<tflite::HashtableSizeOptions>() const {
  11239. return builtin_options_as_HashtableSizeOptions();
  11240. }
  11241. template<> inline const tflite::VarHandleOptions *Operator::builtin_options_as<tflite::VarHandleOptions>() const {
  11242. return builtin_options_as_VarHandleOptions();
  11243. }
  11244. template<> inline const tflite::ReadVariableOptions *Operator::builtin_options_as<tflite::ReadVariableOptions>() const {
  11245. return builtin_options_as_ReadVariableOptions();
  11246. }
  11247. template<> inline const tflite::AssignVariableOptions *Operator::builtin_options_as<tflite::AssignVariableOptions>() const {
  11248. return builtin_options_as_AssignVariableOptions();
  11249. }
  11250. template<> inline const tflite::RandomOptions *Operator::builtin_options_as<tflite::RandomOptions>() const {
  11251. return builtin_options_as_RandomOptions();
  11252. }
  11253. template<> inline const tflite::BucketizeOptions *Operator::builtin_options_as<tflite::BucketizeOptions>() const {
  11254. return builtin_options_as_BucketizeOptions();
  11255. }
  11256. template<> inline const tflite::GeluOptions *Operator::builtin_options_as<tflite::GeluOptions>() const {
  11257. return builtin_options_as_GeluOptions();
  11258. }
  11259. template<> inline const tflite::DynamicUpdateSliceOptions *Operator::builtin_options_as<tflite::DynamicUpdateSliceOptions>() const {
  11260. return builtin_options_as_DynamicUpdateSliceOptions();
  11261. }
  11262. template<> inline const tflite::UnsortedSegmentProdOptions *Operator::builtin_options_as<tflite::UnsortedSegmentProdOptions>() const {
  11263. return builtin_options_as_UnsortedSegmentProdOptions();
  11264. }
  11265. template<> inline const tflite::UnsortedSegmentMaxOptions *Operator::builtin_options_as<tflite::UnsortedSegmentMaxOptions>() const {
  11266. return builtin_options_as_UnsortedSegmentMaxOptions();
  11267. }
  11268. template<> inline const tflite::UnsortedSegmentMinOptions *Operator::builtin_options_as<tflite::UnsortedSegmentMinOptions>() const {
  11269. return builtin_options_as_UnsortedSegmentMinOptions();
  11270. }
  11271. template<> inline const tflite::UnsortedSegmentSumOptions *Operator::builtin_options_as<tflite::UnsortedSegmentSumOptions>() const {
  11272. return builtin_options_as_UnsortedSegmentSumOptions();
  11273. }
  11274. template<> inline const tflite::ATan2Options *Operator::builtin_options_as<tflite::ATan2Options>() const {
  11275. return builtin_options_as_ATan2Options();
  11276. }
  11277. template<> inline const tflite::SignOptions *Operator::builtin_options_as<tflite::SignOptions>() const {
  11278. return builtin_options_as_SignOptions();
  11279. }
  11280. struct OperatorBuilder {
  11281. typedef Operator Table;
  11282. flatbuffers::FlatBufferBuilder &fbb_;
  11283. flatbuffers::uoffset_t start_;
  11284. void add_opcode_index(uint32_t opcode_index) {
  11285. fbb_.AddElement<uint32_t>(Operator::VT_OPCODE_INDEX, opcode_index, 0);
  11286. }
  11287. void add_inputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs) {
  11288. fbb_.AddOffset(Operator::VT_INPUTS, inputs);
  11289. }
  11290. void add_outputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs) {
  11291. fbb_.AddOffset(Operator::VT_OUTPUTS, outputs);
  11292. }
  11293. void add_builtin_options_type(tflite::BuiltinOptions builtin_options_type) {
  11294. fbb_.AddElement<uint8_t>(Operator::VT_BUILTIN_OPTIONS_TYPE, static_cast<uint8_t>(builtin_options_type), 0);
  11295. }
  11296. void add_builtin_options(flatbuffers::Offset<void> builtin_options) {
  11297. fbb_.AddOffset(Operator::VT_BUILTIN_OPTIONS, builtin_options);
  11298. }
  11299. void add_custom_options(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom_options) {
  11300. fbb_.AddOffset(Operator::VT_CUSTOM_OPTIONS, custom_options);
  11301. }
  11302. void add_custom_options_format(tflite::CustomOptionsFormat custom_options_format) {
  11303. fbb_.AddElement<int8_t>(Operator::VT_CUSTOM_OPTIONS_FORMAT, static_cast<int8_t>(custom_options_format), 0);
  11304. }
  11305. void add_mutating_variable_inputs(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> mutating_variable_inputs) {
  11306. fbb_.AddOffset(Operator::VT_MUTATING_VARIABLE_INPUTS, mutating_variable_inputs);
  11307. }
  11308. void add_intermediates(flatbuffers::Offset<flatbuffers::Vector<int32_t>> intermediates) {
  11309. fbb_.AddOffset(Operator::VT_INTERMEDIATES, intermediates);
  11310. }
  11311. explicit OperatorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11312. : fbb_(_fbb) {
  11313. start_ = fbb_.StartTable();
  11314. }
  11315. flatbuffers::Offset<Operator> Finish() {
  11316. const auto end = fbb_.EndTable(start_);
  11317. auto o = flatbuffers::Offset<Operator>(end);
  11318. return o;
  11319. }
  11320. };
  11321. inline flatbuffers::Offset<Operator> CreateOperator(
  11322. flatbuffers::FlatBufferBuilder &_fbb,
  11323. uint32_t opcode_index = 0,
  11324. flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs = 0,
  11325. flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs = 0,
  11326. tflite::BuiltinOptions builtin_options_type = tflite::BuiltinOptions_NONE,
  11327. flatbuffers::Offset<void> builtin_options = 0,
  11328. flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom_options = 0,
  11329. tflite::CustomOptionsFormat custom_options_format = tflite::CustomOptionsFormat_FLEXBUFFERS,
  11330. flatbuffers::Offset<flatbuffers::Vector<uint8_t>> mutating_variable_inputs = 0,
  11331. flatbuffers::Offset<flatbuffers::Vector<int32_t>> intermediates = 0) {
  11332. OperatorBuilder builder_(_fbb);
  11333. builder_.add_intermediates(intermediates);
  11334. builder_.add_mutating_variable_inputs(mutating_variable_inputs);
  11335. builder_.add_custom_options(custom_options);
  11336. builder_.add_builtin_options(builtin_options);
  11337. builder_.add_outputs(outputs);
  11338. builder_.add_inputs(inputs);
  11339. builder_.add_opcode_index(opcode_index);
  11340. builder_.add_custom_options_format(custom_options_format);
  11341. builder_.add_builtin_options_type(builtin_options_type);
  11342. return builder_.Finish();
  11343. }
  11344. inline flatbuffers::Offset<Operator> CreateOperatorDirect(
  11345. flatbuffers::FlatBufferBuilder &_fbb,
  11346. uint32_t opcode_index = 0,
  11347. const std::vector<int32_t> *inputs = nullptr,
  11348. const std::vector<int32_t> *outputs = nullptr,
  11349. tflite::BuiltinOptions builtin_options_type = tflite::BuiltinOptions_NONE,
  11350. flatbuffers::Offset<void> builtin_options = 0,
  11351. const std::vector<uint8_t> *custom_options = nullptr,
  11352. tflite::CustomOptionsFormat custom_options_format = tflite::CustomOptionsFormat_FLEXBUFFERS,
  11353. const std::vector<uint8_t> *mutating_variable_inputs = nullptr,
  11354. const std::vector<int32_t> *intermediates = nullptr) {
  11355. auto inputs__ = inputs ? _fbb.CreateVector<int32_t>(*inputs) : 0;
  11356. auto outputs__ = outputs ? _fbb.CreateVector<int32_t>(*outputs) : 0;
  11357. auto custom_options__ = custom_options ? _fbb.CreateVector<uint8_t>(*custom_options) : 0;
  11358. auto mutating_variable_inputs__ = mutating_variable_inputs ? _fbb.CreateVector<uint8_t>(*mutating_variable_inputs) : 0;
  11359. auto intermediates__ = intermediates ? _fbb.CreateVector<int32_t>(*intermediates) : 0;
  11360. return tflite::CreateOperator(
  11361. _fbb,
  11362. opcode_index,
  11363. inputs__,
  11364. outputs__,
  11365. builtin_options_type,
  11366. builtin_options,
  11367. custom_options__,
  11368. custom_options_format,
  11369. mutating_variable_inputs__,
  11370. intermediates__);
  11371. }
  11372. flatbuffers::Offset<Operator> CreateOperator(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11373. struct SubGraphT : public flatbuffers::NativeTable {
  11374. typedef SubGraph TableType;
  11375. std::vector<std::unique_ptr<tflite::TensorT>> tensors{};
  11376. std::vector<int32_t> inputs{};
  11377. std::vector<int32_t> outputs{};
  11378. std::vector<std::unique_ptr<tflite::OperatorT>> operators{};
  11379. std::string name{};
  11380. SubGraphT() = default;
  11381. SubGraphT(const SubGraphT &o);
  11382. SubGraphT(SubGraphT&&) FLATBUFFERS_NOEXCEPT = default;
  11383. SubGraphT &operator=(SubGraphT o) FLATBUFFERS_NOEXCEPT;
  11384. };
  11385. struct SubGraph FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11386. typedef SubGraphT NativeTableType;
  11387. typedef SubGraphBuilder Builder;
  11388. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11389. VT_TENSORS = 4,
  11390. VT_INPUTS = 6,
  11391. VT_OUTPUTS = 8,
  11392. VT_OPERATORS = 10,
  11393. VT_NAME = 12
  11394. };
  11395. const flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>> *tensors() const {
  11396. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>> *>(VT_TENSORS);
  11397. }
  11398. const flatbuffers::Vector<int32_t> *inputs() const {
  11399. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_INPUTS);
  11400. }
  11401. const flatbuffers::Vector<int32_t> *outputs() const {
  11402. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_OUTPUTS);
  11403. }
  11404. const flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>> *operators() const {
  11405. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>> *>(VT_OPERATORS);
  11406. }
  11407. const flatbuffers::String *name() const {
  11408. return GetPointer<const flatbuffers::String *>(VT_NAME);
  11409. }
  11410. bool Verify(flatbuffers::Verifier &verifier) const {
  11411. return VerifyTableStart(verifier) &&
  11412. VerifyOffset(verifier, VT_TENSORS) &&
  11413. verifier.VerifyVector(tensors()) &&
  11414. verifier.VerifyVectorOfTables(tensors()) &&
  11415. VerifyOffset(verifier, VT_INPUTS) &&
  11416. verifier.VerifyVector(inputs()) &&
  11417. VerifyOffset(verifier, VT_OUTPUTS) &&
  11418. verifier.VerifyVector(outputs()) &&
  11419. VerifyOffset(verifier, VT_OPERATORS) &&
  11420. verifier.VerifyVector(operators()) &&
  11421. verifier.VerifyVectorOfTables(operators()) &&
  11422. VerifyOffset(verifier, VT_NAME) &&
  11423. verifier.VerifyString(name()) &&
  11424. verifier.EndTable();
  11425. }
  11426. SubGraphT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11427. void UnPackTo(SubGraphT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11428. static flatbuffers::Offset<SubGraph> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11429. };
  11430. struct SubGraphBuilder {
  11431. typedef SubGraph Table;
  11432. flatbuffers::FlatBufferBuilder &fbb_;
  11433. flatbuffers::uoffset_t start_;
  11434. void add_tensors(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>>> tensors) {
  11435. fbb_.AddOffset(SubGraph::VT_TENSORS, tensors);
  11436. }
  11437. void add_inputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs) {
  11438. fbb_.AddOffset(SubGraph::VT_INPUTS, inputs);
  11439. }
  11440. void add_outputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs) {
  11441. fbb_.AddOffset(SubGraph::VT_OUTPUTS, outputs);
  11442. }
  11443. void add_operators(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>>> operators) {
  11444. fbb_.AddOffset(SubGraph::VT_OPERATORS, operators);
  11445. }
  11446. void add_name(flatbuffers::Offset<flatbuffers::String> name) {
  11447. fbb_.AddOffset(SubGraph::VT_NAME, name);
  11448. }
  11449. explicit SubGraphBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11450. : fbb_(_fbb) {
  11451. start_ = fbb_.StartTable();
  11452. }
  11453. flatbuffers::Offset<SubGraph> Finish() {
  11454. const auto end = fbb_.EndTable(start_);
  11455. auto o = flatbuffers::Offset<SubGraph>(end);
  11456. return o;
  11457. }
  11458. };
  11459. inline flatbuffers::Offset<SubGraph> CreateSubGraph(
  11460. flatbuffers::FlatBufferBuilder &_fbb,
  11461. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>>> tensors = 0,
  11462. flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs = 0,
  11463. flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs = 0,
  11464. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>>> operators = 0,
  11465. flatbuffers::Offset<flatbuffers::String> name = 0) {
  11466. SubGraphBuilder builder_(_fbb);
  11467. builder_.add_name(name);
  11468. builder_.add_operators(operators);
  11469. builder_.add_outputs(outputs);
  11470. builder_.add_inputs(inputs);
  11471. builder_.add_tensors(tensors);
  11472. return builder_.Finish();
  11473. }
  11474. inline flatbuffers::Offset<SubGraph> CreateSubGraphDirect(
  11475. flatbuffers::FlatBufferBuilder &_fbb,
  11476. const std::vector<flatbuffers::Offset<tflite::Tensor>> *tensors = nullptr,
  11477. const std::vector<int32_t> *inputs = nullptr,
  11478. const std::vector<int32_t> *outputs = nullptr,
  11479. const std::vector<flatbuffers::Offset<tflite::Operator>> *operators = nullptr,
  11480. const char *name = nullptr) {
  11481. auto tensors__ = tensors ? _fbb.CreateVector<flatbuffers::Offset<tflite::Tensor>>(*tensors) : 0;
  11482. auto inputs__ = inputs ? _fbb.CreateVector<int32_t>(*inputs) : 0;
  11483. auto outputs__ = outputs ? _fbb.CreateVector<int32_t>(*outputs) : 0;
  11484. auto operators__ = operators ? _fbb.CreateVector<flatbuffers::Offset<tflite::Operator>>(*operators) : 0;
  11485. auto name__ = name ? _fbb.CreateString(name) : 0;
  11486. return tflite::CreateSubGraph(
  11487. _fbb,
  11488. tensors__,
  11489. inputs__,
  11490. outputs__,
  11491. operators__,
  11492. name__);
  11493. }
  11494. flatbuffers::Offset<SubGraph> CreateSubGraph(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11495. struct BufferT : public flatbuffers::NativeTable {
  11496. typedef Buffer TableType;
  11497. std::vector<uint8_t> data{};
  11498. };
  11499. struct Buffer FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11500. typedef BufferT NativeTableType;
  11501. typedef BufferBuilder Builder;
  11502. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11503. VT_DATA = 4
  11504. };
  11505. const flatbuffers::Vector<uint8_t> *data() const {
  11506. return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_DATA);
  11507. }
  11508. bool Verify(flatbuffers::Verifier &verifier) const {
  11509. return VerifyTableStart(verifier) &&
  11510. VerifyOffset(verifier, VT_DATA) &&
  11511. verifier.VerifyVector(data()) &&
  11512. verifier.EndTable();
  11513. }
  11514. BufferT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11515. void UnPackTo(BufferT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11516. static flatbuffers::Offset<Buffer> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BufferT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11517. };
  11518. struct BufferBuilder {
  11519. typedef Buffer Table;
  11520. flatbuffers::FlatBufferBuilder &fbb_;
  11521. flatbuffers::uoffset_t start_;
  11522. void add_data(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> data) {
  11523. fbb_.AddOffset(Buffer::VT_DATA, data);
  11524. }
  11525. explicit BufferBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11526. : fbb_(_fbb) {
  11527. start_ = fbb_.StartTable();
  11528. }
  11529. flatbuffers::Offset<Buffer> Finish() {
  11530. const auto end = fbb_.EndTable(start_);
  11531. auto o = flatbuffers::Offset<Buffer>(end);
  11532. return o;
  11533. }
  11534. };
  11535. inline flatbuffers::Offset<Buffer> CreateBuffer(
  11536. flatbuffers::FlatBufferBuilder &_fbb,
  11537. flatbuffers::Offset<flatbuffers::Vector<uint8_t>> data = 0) {
  11538. BufferBuilder builder_(_fbb);
  11539. builder_.add_data(data);
  11540. return builder_.Finish();
  11541. }
  11542. inline flatbuffers::Offset<Buffer> CreateBufferDirect(
  11543. flatbuffers::FlatBufferBuilder &_fbb,
  11544. const std::vector<uint8_t> *data = nullptr) {
  11545. if (data) { _fbb.ForceVectorAlignment(data->size(), sizeof(uint8_t), 16); }
  11546. auto data__ = data ? _fbb.CreateVector<uint8_t>(*data) : 0;
  11547. return tflite::CreateBuffer(
  11548. _fbb,
  11549. data__);
  11550. }
  11551. flatbuffers::Offset<Buffer> CreateBuffer(flatbuffers::FlatBufferBuilder &_fbb, const BufferT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11552. struct MetadataT : public flatbuffers::NativeTable {
  11553. typedef Metadata TableType;
  11554. std::string name{};
  11555. uint32_t buffer = 0;
  11556. };
  11557. struct Metadata FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11558. typedef MetadataT NativeTableType;
  11559. typedef MetadataBuilder Builder;
  11560. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11561. VT_NAME = 4,
  11562. VT_BUFFER = 6
  11563. };
  11564. const flatbuffers::String *name() const {
  11565. return GetPointer<const flatbuffers::String *>(VT_NAME);
  11566. }
  11567. uint32_t buffer() const {
  11568. return GetField<uint32_t>(VT_BUFFER, 0);
  11569. }
  11570. bool Verify(flatbuffers::Verifier &verifier) const {
  11571. return VerifyTableStart(verifier) &&
  11572. VerifyOffset(verifier, VT_NAME) &&
  11573. verifier.VerifyString(name()) &&
  11574. VerifyField<uint32_t>(verifier, VT_BUFFER, 4) &&
  11575. verifier.EndTable();
  11576. }
  11577. MetadataT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11578. void UnPackTo(MetadataT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11579. static flatbuffers::Offset<Metadata> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11580. };
  11581. struct MetadataBuilder {
  11582. typedef Metadata Table;
  11583. flatbuffers::FlatBufferBuilder &fbb_;
  11584. flatbuffers::uoffset_t start_;
  11585. void add_name(flatbuffers::Offset<flatbuffers::String> name) {
  11586. fbb_.AddOffset(Metadata::VT_NAME, name);
  11587. }
  11588. void add_buffer(uint32_t buffer) {
  11589. fbb_.AddElement<uint32_t>(Metadata::VT_BUFFER, buffer, 0);
  11590. }
  11591. explicit MetadataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11592. : fbb_(_fbb) {
  11593. start_ = fbb_.StartTable();
  11594. }
  11595. flatbuffers::Offset<Metadata> Finish() {
  11596. const auto end = fbb_.EndTable(start_);
  11597. auto o = flatbuffers::Offset<Metadata>(end);
  11598. return o;
  11599. }
  11600. };
  11601. inline flatbuffers::Offset<Metadata> CreateMetadata(
  11602. flatbuffers::FlatBufferBuilder &_fbb,
  11603. flatbuffers::Offset<flatbuffers::String> name = 0,
  11604. uint32_t buffer = 0) {
  11605. MetadataBuilder builder_(_fbb);
  11606. builder_.add_buffer(buffer);
  11607. builder_.add_name(name);
  11608. return builder_.Finish();
  11609. }
  11610. inline flatbuffers::Offset<Metadata> CreateMetadataDirect(
  11611. flatbuffers::FlatBufferBuilder &_fbb,
  11612. const char *name = nullptr,
  11613. uint32_t buffer = 0) {
  11614. auto name__ = name ? _fbb.CreateString(name) : 0;
  11615. return tflite::CreateMetadata(
  11616. _fbb,
  11617. name__,
  11618. buffer);
  11619. }
  11620. flatbuffers::Offset<Metadata> CreateMetadata(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11621. struct TensorMapT : public flatbuffers::NativeTable {
  11622. typedef TensorMap TableType;
  11623. std::string name{};
  11624. uint32_t tensor_index = 0;
  11625. };
  11626. struct TensorMap FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11627. typedef TensorMapT NativeTableType;
  11628. typedef TensorMapBuilder Builder;
  11629. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11630. VT_NAME = 4,
  11631. VT_TENSOR_INDEX = 6
  11632. };
  11633. const flatbuffers::String *name() const {
  11634. return GetPointer<const flatbuffers::String *>(VT_NAME);
  11635. }
  11636. uint32_t tensor_index() const {
  11637. return GetField<uint32_t>(VT_TENSOR_INDEX, 0);
  11638. }
  11639. bool Verify(flatbuffers::Verifier &verifier) const {
  11640. return VerifyTableStart(verifier) &&
  11641. VerifyOffset(verifier, VT_NAME) &&
  11642. verifier.VerifyString(name()) &&
  11643. VerifyField<uint32_t>(verifier, VT_TENSOR_INDEX, 4) &&
  11644. verifier.EndTable();
  11645. }
  11646. TensorMapT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11647. void UnPackTo(TensorMapT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11648. static flatbuffers::Offset<TensorMap> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11649. };
  11650. struct TensorMapBuilder {
  11651. typedef TensorMap Table;
  11652. flatbuffers::FlatBufferBuilder &fbb_;
  11653. flatbuffers::uoffset_t start_;
  11654. void add_name(flatbuffers::Offset<flatbuffers::String> name) {
  11655. fbb_.AddOffset(TensorMap::VT_NAME, name);
  11656. }
  11657. void add_tensor_index(uint32_t tensor_index) {
  11658. fbb_.AddElement<uint32_t>(TensorMap::VT_TENSOR_INDEX, tensor_index, 0);
  11659. }
  11660. explicit TensorMapBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11661. : fbb_(_fbb) {
  11662. start_ = fbb_.StartTable();
  11663. }
  11664. flatbuffers::Offset<TensorMap> Finish() {
  11665. const auto end = fbb_.EndTable(start_);
  11666. auto o = flatbuffers::Offset<TensorMap>(end);
  11667. return o;
  11668. }
  11669. };
  11670. inline flatbuffers::Offset<TensorMap> CreateTensorMap(
  11671. flatbuffers::FlatBufferBuilder &_fbb,
  11672. flatbuffers::Offset<flatbuffers::String> name = 0,
  11673. uint32_t tensor_index = 0) {
  11674. TensorMapBuilder builder_(_fbb);
  11675. builder_.add_tensor_index(tensor_index);
  11676. builder_.add_name(name);
  11677. return builder_.Finish();
  11678. }
  11679. inline flatbuffers::Offset<TensorMap> CreateTensorMapDirect(
  11680. flatbuffers::FlatBufferBuilder &_fbb,
  11681. const char *name = nullptr,
  11682. uint32_t tensor_index = 0) {
  11683. auto name__ = name ? _fbb.CreateString(name) : 0;
  11684. return tflite::CreateTensorMap(
  11685. _fbb,
  11686. name__,
  11687. tensor_index);
  11688. }
  11689. flatbuffers::Offset<TensorMap> CreateTensorMap(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11690. struct SignatureDefT : public flatbuffers::NativeTable {
  11691. typedef SignatureDef TableType;
  11692. std::vector<std::unique_ptr<tflite::TensorMapT>> inputs{};
  11693. std::vector<std::unique_ptr<tflite::TensorMapT>> outputs{};
  11694. std::string signature_key{};
  11695. uint32_t subgraph_index = 0;
  11696. SignatureDefT() = default;
  11697. SignatureDefT(const SignatureDefT &o);
  11698. SignatureDefT(SignatureDefT&&) FLATBUFFERS_NOEXCEPT = default;
  11699. SignatureDefT &operator=(SignatureDefT o) FLATBUFFERS_NOEXCEPT;
  11700. };
  11701. struct SignatureDef FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11702. typedef SignatureDefT NativeTableType;
  11703. typedef SignatureDefBuilder Builder;
  11704. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11705. VT_INPUTS = 4,
  11706. VT_OUTPUTS = 6,
  11707. VT_SIGNATURE_KEY = 8,
  11708. VT_SUBGRAPH_INDEX = 12
  11709. };
  11710. const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *inputs() const {
  11711. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *>(VT_INPUTS);
  11712. }
  11713. const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *outputs() const {
  11714. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *>(VT_OUTPUTS);
  11715. }
  11716. const flatbuffers::String *signature_key() const {
  11717. return GetPointer<const flatbuffers::String *>(VT_SIGNATURE_KEY);
  11718. }
  11719. uint32_t subgraph_index() const {
  11720. return GetField<uint32_t>(VT_SUBGRAPH_INDEX, 0);
  11721. }
  11722. bool Verify(flatbuffers::Verifier &verifier) const {
  11723. return VerifyTableStart(verifier) &&
  11724. VerifyOffset(verifier, VT_INPUTS) &&
  11725. verifier.VerifyVector(inputs()) &&
  11726. verifier.VerifyVectorOfTables(inputs()) &&
  11727. VerifyOffset(verifier, VT_OUTPUTS) &&
  11728. verifier.VerifyVector(outputs()) &&
  11729. verifier.VerifyVectorOfTables(outputs()) &&
  11730. VerifyOffset(verifier, VT_SIGNATURE_KEY) &&
  11731. verifier.VerifyString(signature_key()) &&
  11732. VerifyField<uint32_t>(verifier, VT_SUBGRAPH_INDEX, 4) &&
  11733. verifier.EndTable();
  11734. }
  11735. SignatureDefT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11736. void UnPackTo(SignatureDefT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11737. static flatbuffers::Offset<SignatureDef> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11738. };
  11739. struct SignatureDefBuilder {
  11740. typedef SignatureDef Table;
  11741. flatbuffers::FlatBufferBuilder &fbb_;
  11742. flatbuffers::uoffset_t start_;
  11743. void add_inputs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> inputs) {
  11744. fbb_.AddOffset(SignatureDef::VT_INPUTS, inputs);
  11745. }
  11746. void add_outputs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> outputs) {
  11747. fbb_.AddOffset(SignatureDef::VT_OUTPUTS, outputs);
  11748. }
  11749. void add_signature_key(flatbuffers::Offset<flatbuffers::String> signature_key) {
  11750. fbb_.AddOffset(SignatureDef::VT_SIGNATURE_KEY, signature_key);
  11751. }
  11752. void add_subgraph_index(uint32_t subgraph_index) {
  11753. fbb_.AddElement<uint32_t>(SignatureDef::VT_SUBGRAPH_INDEX, subgraph_index, 0);
  11754. }
  11755. explicit SignatureDefBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11756. : fbb_(_fbb) {
  11757. start_ = fbb_.StartTable();
  11758. }
  11759. flatbuffers::Offset<SignatureDef> Finish() {
  11760. const auto end = fbb_.EndTable(start_);
  11761. auto o = flatbuffers::Offset<SignatureDef>(end);
  11762. return o;
  11763. }
  11764. };
  11765. inline flatbuffers::Offset<SignatureDef> CreateSignatureDef(
  11766. flatbuffers::FlatBufferBuilder &_fbb,
  11767. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> inputs = 0,
  11768. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> outputs = 0,
  11769. flatbuffers::Offset<flatbuffers::String> signature_key = 0,
  11770. uint32_t subgraph_index = 0) {
  11771. SignatureDefBuilder builder_(_fbb);
  11772. builder_.add_subgraph_index(subgraph_index);
  11773. builder_.add_signature_key(signature_key);
  11774. builder_.add_outputs(outputs);
  11775. builder_.add_inputs(inputs);
  11776. return builder_.Finish();
  11777. }
  11778. inline flatbuffers::Offset<SignatureDef> CreateSignatureDefDirect(
  11779. flatbuffers::FlatBufferBuilder &_fbb,
  11780. const std::vector<flatbuffers::Offset<tflite::TensorMap>> *inputs = nullptr,
  11781. const std::vector<flatbuffers::Offset<tflite::TensorMap>> *outputs = nullptr,
  11782. const char *signature_key = nullptr,
  11783. uint32_t subgraph_index = 0) {
  11784. auto inputs__ = inputs ? _fbb.CreateVector<flatbuffers::Offset<tflite::TensorMap>>(*inputs) : 0;
  11785. auto outputs__ = outputs ? _fbb.CreateVector<flatbuffers::Offset<tflite::TensorMap>>(*outputs) : 0;
  11786. auto signature_key__ = signature_key ? _fbb.CreateString(signature_key) : 0;
  11787. return tflite::CreateSignatureDef(
  11788. _fbb,
  11789. inputs__,
  11790. outputs__,
  11791. signature_key__,
  11792. subgraph_index);
  11793. }
  11794. flatbuffers::Offset<SignatureDef> CreateSignatureDef(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11795. struct ModelT : public flatbuffers::NativeTable {
  11796. typedef Model TableType;
  11797. uint32_t version = 0;
  11798. std::vector<std::unique_ptr<tflite::OperatorCodeT>> operator_codes{};
  11799. std::vector<std::unique_ptr<tflite::SubGraphT>> subgraphs{};
  11800. std::string description{};
  11801. std::vector<std::unique_ptr<tflite::BufferT>> buffers{};
  11802. std::vector<int32_t> metadata_buffer{};
  11803. std::vector<std::unique_ptr<tflite::MetadataT>> metadata{};
  11804. std::vector<std::unique_ptr<tflite::SignatureDefT>> signature_defs{};
  11805. ModelT() = default;
  11806. ModelT(const ModelT &o);
  11807. ModelT(ModelT&&) FLATBUFFERS_NOEXCEPT = default;
  11808. ModelT &operator=(ModelT o) FLATBUFFERS_NOEXCEPT;
  11809. };
  11810. struct Model FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11811. typedef ModelT NativeTableType;
  11812. typedef ModelBuilder Builder;
  11813. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11814. VT_VERSION = 4,
  11815. VT_OPERATOR_CODES = 6,
  11816. VT_SUBGRAPHS = 8,
  11817. VT_DESCRIPTION = 10,
  11818. VT_BUFFERS = 12,
  11819. VT_METADATA_BUFFER = 14,
  11820. VT_METADATA = 16,
  11821. VT_SIGNATURE_DEFS = 18
  11822. };
  11823. uint32_t version() const {
  11824. return GetField<uint32_t>(VT_VERSION, 0);
  11825. }
  11826. const flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>> *operator_codes() const {
  11827. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>> *>(VT_OPERATOR_CODES);
  11828. }
  11829. const flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>> *subgraphs() const {
  11830. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>> *>(VT_SUBGRAPHS);
  11831. }
  11832. const flatbuffers::String *description() const {
  11833. return GetPointer<const flatbuffers::String *>(VT_DESCRIPTION);
  11834. }
  11835. const flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>> *buffers() const {
  11836. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>> *>(VT_BUFFERS);
  11837. }
  11838. const flatbuffers::Vector<int32_t> *metadata_buffer() const {
  11839. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_METADATA_BUFFER);
  11840. }
  11841. const flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>> *metadata() const {
  11842. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>> *>(VT_METADATA);
  11843. }
  11844. const flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>> *signature_defs() const {
  11845. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>> *>(VT_SIGNATURE_DEFS);
  11846. }
  11847. bool Verify(flatbuffers::Verifier &verifier) const {
  11848. return VerifyTableStart(verifier) &&
  11849. VerifyField<uint32_t>(verifier, VT_VERSION, 4) &&
  11850. VerifyOffset(verifier, VT_OPERATOR_CODES) &&
  11851. verifier.VerifyVector(operator_codes()) &&
  11852. verifier.VerifyVectorOfTables(operator_codes()) &&
  11853. VerifyOffset(verifier, VT_SUBGRAPHS) &&
  11854. verifier.VerifyVector(subgraphs()) &&
  11855. verifier.VerifyVectorOfTables(subgraphs()) &&
  11856. VerifyOffset(verifier, VT_DESCRIPTION) &&
  11857. verifier.VerifyString(description()) &&
  11858. VerifyOffset(verifier, VT_BUFFERS) &&
  11859. verifier.VerifyVector(buffers()) &&
  11860. verifier.VerifyVectorOfTables(buffers()) &&
  11861. VerifyOffset(verifier, VT_METADATA_BUFFER) &&
  11862. verifier.VerifyVector(metadata_buffer()) &&
  11863. VerifyOffset(verifier, VT_METADATA) &&
  11864. verifier.VerifyVector(metadata()) &&
  11865. verifier.VerifyVectorOfTables(metadata()) &&
  11866. VerifyOffset(verifier, VT_SIGNATURE_DEFS) &&
  11867. verifier.VerifyVector(signature_defs()) &&
  11868. verifier.VerifyVectorOfTables(signature_defs()) &&
  11869. verifier.EndTable();
  11870. }
  11871. ModelT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11872. void UnPackTo(ModelT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11873. static flatbuffers::Offset<Model> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ModelT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11874. };
  11875. struct ModelBuilder {
  11876. typedef Model Table;
  11877. flatbuffers::FlatBufferBuilder &fbb_;
  11878. flatbuffers::uoffset_t start_;
  11879. void add_version(uint32_t version) {
  11880. fbb_.AddElement<uint32_t>(Model::VT_VERSION, version, 0);
  11881. }
  11882. void add_operator_codes(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>>> operator_codes) {
  11883. fbb_.AddOffset(Model::VT_OPERATOR_CODES, operator_codes);
  11884. }
  11885. void add_subgraphs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>>> subgraphs) {
  11886. fbb_.AddOffset(Model::VT_SUBGRAPHS, subgraphs);
  11887. }
  11888. void add_description(flatbuffers::Offset<flatbuffers::String> description) {
  11889. fbb_.AddOffset(Model::VT_DESCRIPTION, description);
  11890. }
  11891. void add_buffers(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>>> buffers) {
  11892. fbb_.AddOffset(Model::VT_BUFFERS, buffers);
  11893. }
  11894. void add_metadata_buffer(flatbuffers::Offset<flatbuffers::Vector<int32_t>> metadata_buffer) {
  11895. fbb_.AddOffset(Model::VT_METADATA_BUFFER, metadata_buffer);
  11896. }
  11897. void add_metadata(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>>> metadata) {
  11898. fbb_.AddOffset(Model::VT_METADATA, metadata);
  11899. }
  11900. void add_signature_defs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>>> signature_defs) {
  11901. fbb_.AddOffset(Model::VT_SIGNATURE_DEFS, signature_defs);
  11902. }
  11903. explicit ModelBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11904. : fbb_(_fbb) {
  11905. start_ = fbb_.StartTable();
  11906. }
  11907. flatbuffers::Offset<Model> Finish() {
  11908. const auto end = fbb_.EndTable(start_);
  11909. auto o = flatbuffers::Offset<Model>(end);
  11910. return o;
  11911. }
  11912. };
  11913. inline flatbuffers::Offset<Model> CreateModel(
  11914. flatbuffers::FlatBufferBuilder &_fbb,
  11915. uint32_t version = 0,
  11916. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>>> operator_codes = 0,
  11917. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>>> subgraphs = 0,
  11918. flatbuffers::Offset<flatbuffers::String> description = 0,
  11919. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>>> buffers = 0,
  11920. flatbuffers::Offset<flatbuffers::Vector<int32_t>> metadata_buffer = 0,
  11921. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>>> metadata = 0,
  11922. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>>> signature_defs = 0) {
  11923. ModelBuilder builder_(_fbb);
  11924. builder_.add_signature_defs(signature_defs);
  11925. builder_.add_metadata(metadata);
  11926. builder_.add_metadata_buffer(metadata_buffer);
  11927. builder_.add_buffers(buffers);
  11928. builder_.add_description(description);
  11929. builder_.add_subgraphs(subgraphs);
  11930. builder_.add_operator_codes(operator_codes);
  11931. builder_.add_version(version);
  11932. return builder_.Finish();
  11933. }
  11934. inline flatbuffers::Offset<Model> CreateModelDirect(
  11935. flatbuffers::FlatBufferBuilder &_fbb,
  11936. uint32_t version = 0,
  11937. const std::vector<flatbuffers::Offset<tflite::OperatorCode>> *operator_codes = nullptr,
  11938. const std::vector<flatbuffers::Offset<tflite::SubGraph>> *subgraphs = nullptr,
  11939. const char *description = nullptr,
  11940. const std::vector<flatbuffers::Offset<tflite::Buffer>> *buffers = nullptr,
  11941. const std::vector<int32_t> *metadata_buffer = nullptr,
  11942. const std::vector<flatbuffers::Offset<tflite::Metadata>> *metadata = nullptr,
  11943. const std::vector<flatbuffers::Offset<tflite::SignatureDef>> *signature_defs = nullptr) {
  11944. auto operator_codes__ = operator_codes ? _fbb.CreateVector<flatbuffers::Offset<tflite::OperatorCode>>(*operator_codes) : 0;
  11945. auto subgraphs__ = subgraphs ? _fbb.CreateVector<flatbuffers::Offset<tflite::SubGraph>>(*subgraphs) : 0;
  11946. auto description__ = description ? _fbb.CreateString(description) : 0;
  11947. auto buffers__ = buffers ? _fbb.CreateVector<flatbuffers::Offset<tflite::Buffer>>(*buffers) : 0;
  11948. auto metadata_buffer__ = metadata_buffer ? _fbb.CreateVector<int32_t>(*metadata_buffer) : 0;
  11949. auto metadata__ = metadata ? _fbb.CreateVector<flatbuffers::Offset<tflite::Metadata>>(*metadata) : 0;
  11950. auto signature_defs__ = signature_defs ? _fbb.CreateVector<flatbuffers::Offset<tflite::SignatureDef>>(*signature_defs) : 0;
  11951. return tflite::CreateModel(
  11952. _fbb,
  11953. version,
  11954. operator_codes__,
  11955. subgraphs__,
  11956. description__,
  11957. buffers__,
  11958. metadata_buffer__,
  11959. metadata__,
  11960. signature_defs__);
  11961. }
  11962. flatbuffers::Offset<Model> CreateModel(flatbuffers::FlatBufferBuilder &_fbb, const ModelT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11963. inline CustomQuantizationT *CustomQuantization::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  11964. auto _o = std::unique_ptr<CustomQuantizationT>(new CustomQuantizationT());
  11965. UnPackTo(_o.get(), _resolver);
  11966. return _o.release();
  11967. }
  11968. inline void CustomQuantization::UnPackTo(CustomQuantizationT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  11969. (void)_o;
  11970. (void)_resolver;
  11971. { auto _e = custom(); if (_e) { _o->custom.resize(_e->size()); std::copy(_e->begin(), _e->end(), _o->custom.begin()); } }
  11972. }
  11973. inline flatbuffers::Offset<CustomQuantization> CustomQuantization::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  11974. return CreateCustomQuantization(_fbb, _o, _rehasher);
  11975. }
  11976. inline flatbuffers::Offset<CustomQuantization> CreateCustomQuantization(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  11977. (void)_rehasher;
  11978. (void)_o;
  11979. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CustomQuantizationT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  11980. _fbb.ForceVectorAlignment(_o->custom.size(), sizeof(uint8_t), 16);
  11981. auto _custom = _o->custom.size() ? _fbb.CreateVector(_o->custom) : 0;
  11982. return tflite::CreateCustomQuantization(
  11983. _fbb,
  11984. _custom);
  11985. }
  11986. inline QuantizationParametersT *QuantizationParameters::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  11987. auto _o = std::unique_ptr<QuantizationParametersT>(new QuantizationParametersT());
  11988. UnPackTo(_o.get(), _resolver);
  11989. return _o.release();
  11990. }
  11991. inline void QuantizationParameters::UnPackTo(QuantizationParametersT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  11992. (void)_o;
  11993. (void)_resolver;
  11994. { auto _e = min(); if (_e) { _o->min.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->min[_i] = _e->Get(_i); } } }
  11995. { auto _e = max(); if (_e) { _o->max.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->max[_i] = _e->Get(_i); } } }
  11996. { auto _e = scale(); if (_e) { _o->scale.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->scale[_i] = _e->Get(_i); } } }
  11997. { auto _e = zero_point(); if (_e) { _o->zero_point.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->zero_point[_i] = _e->Get(_i); } } }
  11998. { auto _e = details_type(); _o->details.type = _e; }
  11999. { auto _e = details(); if (_e) _o->details.value = tflite::QuantizationDetailsUnion::UnPack(_e, details_type(), _resolver); }
  12000. { auto _e = quantized_dimension(); _o->quantized_dimension = _e; }
  12001. }
  12002. inline flatbuffers::Offset<QuantizationParameters> QuantizationParameters::Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12003. return CreateQuantizationParameters(_fbb, _o, _rehasher);
  12004. }
  12005. inline flatbuffers::Offset<QuantizationParameters> CreateQuantizationParameters(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12006. (void)_rehasher;
  12007. (void)_o;
  12008. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const QuantizationParametersT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12009. auto _min = _o->min.size() ? _fbb.CreateVector(_o->min) : 0;
  12010. auto _max = _o->max.size() ? _fbb.CreateVector(_o->max) : 0;
  12011. auto _scale = _o->scale.size() ? _fbb.CreateVector(_o->scale) : 0;
  12012. auto _zero_point = _o->zero_point.size() ? _fbb.CreateVector(_o->zero_point) : 0;
  12013. auto _details_type = _o->details.type;
  12014. auto _details = _o->details.Pack(_fbb);
  12015. auto _quantized_dimension = _o->quantized_dimension;
  12016. return tflite::CreateQuantizationParameters(
  12017. _fbb,
  12018. _min,
  12019. _max,
  12020. _scale,
  12021. _zero_point,
  12022. _details_type,
  12023. _details,
  12024. _quantized_dimension);
  12025. }
  12026. inline Int32VectorT *Int32Vector::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12027. auto _o = std::unique_ptr<Int32VectorT>(new Int32VectorT());
  12028. UnPackTo(_o.get(), _resolver);
  12029. return _o.release();
  12030. }
  12031. inline void Int32Vector::UnPackTo(Int32VectorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12032. (void)_o;
  12033. (void)_resolver;
  12034. { auto _e = values(); if (_e) { _o->values.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->values[_i] = _e->Get(_i); } } }
  12035. }
  12036. inline flatbuffers::Offset<Int32Vector> Int32Vector::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12037. return CreateInt32Vector(_fbb, _o, _rehasher);
  12038. }
  12039. inline flatbuffers::Offset<Int32Vector> CreateInt32Vector(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12040. (void)_rehasher;
  12041. (void)_o;
  12042. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Int32VectorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12043. auto _values = _o->values.size() ? _fbb.CreateVector(_o->values) : 0;
  12044. return tflite::CreateInt32Vector(
  12045. _fbb,
  12046. _values);
  12047. }
  12048. inline Uint16VectorT *Uint16Vector::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12049. auto _o = std::unique_ptr<Uint16VectorT>(new Uint16VectorT());
  12050. UnPackTo(_o.get(), _resolver);
  12051. return _o.release();
  12052. }
  12053. inline void Uint16Vector::UnPackTo(Uint16VectorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12054. (void)_o;
  12055. (void)_resolver;
  12056. { auto _e = values(); if (_e) { _o->values.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->values[_i] = _e->Get(_i); } } }
  12057. }
  12058. inline flatbuffers::Offset<Uint16Vector> Uint16Vector::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12059. return CreateUint16Vector(_fbb, _o, _rehasher);
  12060. }
  12061. inline flatbuffers::Offset<Uint16Vector> CreateUint16Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12062. (void)_rehasher;
  12063. (void)_o;
  12064. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Uint16VectorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12065. _fbb.ForceVectorAlignment(_o->values.size(), sizeof(uint16_t), 4);
  12066. auto _values = _o->values.size() ? _fbb.CreateVector(_o->values) : 0;
  12067. return tflite::CreateUint16Vector(
  12068. _fbb,
  12069. _values);
  12070. }
  12071. inline Uint8VectorT *Uint8Vector::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12072. auto _o = std::unique_ptr<Uint8VectorT>(new Uint8VectorT());
  12073. UnPackTo(_o.get(), _resolver);
  12074. return _o.release();
  12075. }
  12076. inline void Uint8Vector::UnPackTo(Uint8VectorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12077. (void)_o;
  12078. (void)_resolver;
  12079. { auto _e = values(); if (_e) { _o->values.resize(_e->size()); std::copy(_e->begin(), _e->end(), _o->values.begin()); } }
  12080. }
  12081. inline flatbuffers::Offset<Uint8Vector> Uint8Vector::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12082. return CreateUint8Vector(_fbb, _o, _rehasher);
  12083. }
  12084. inline flatbuffers::Offset<Uint8Vector> CreateUint8Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12085. (void)_rehasher;
  12086. (void)_o;
  12087. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Uint8VectorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12088. _fbb.ForceVectorAlignment(_o->values.size(), sizeof(uint8_t), 4);
  12089. auto _values = _o->values.size() ? _fbb.CreateVector(_o->values) : 0;
  12090. return tflite::CreateUint8Vector(
  12091. _fbb,
  12092. _values);
  12093. }
  12094. inline DimensionMetadataT *DimensionMetadata::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12095. auto _o = std::unique_ptr<DimensionMetadataT>(new DimensionMetadataT());
  12096. UnPackTo(_o.get(), _resolver);
  12097. return _o.release();
  12098. }
  12099. inline void DimensionMetadata::UnPackTo(DimensionMetadataT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12100. (void)_o;
  12101. (void)_resolver;
  12102. { auto _e = format(); _o->format = _e; }
  12103. { auto _e = dense_size(); _o->dense_size = _e; }
  12104. { auto _e = array_segments_type(); _o->array_segments.type = _e; }
  12105. { auto _e = array_segments(); if (_e) _o->array_segments.value = tflite::SparseIndexVectorUnion::UnPack(_e, array_segments_type(), _resolver); }
  12106. { auto _e = array_indices_type(); _o->array_indices.type = _e; }
  12107. { auto _e = array_indices(); if (_e) _o->array_indices.value = tflite::SparseIndexVectorUnion::UnPack(_e, array_indices_type(), _resolver); }
  12108. }
  12109. inline flatbuffers::Offset<DimensionMetadata> DimensionMetadata::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12110. return CreateDimensionMetadata(_fbb, _o, _rehasher);
  12111. }
  12112. inline flatbuffers::Offset<DimensionMetadata> CreateDimensionMetadata(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12113. (void)_rehasher;
  12114. (void)_o;
  12115. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DimensionMetadataT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12116. auto _format = _o->format;
  12117. auto _dense_size = _o->dense_size;
  12118. auto _array_segments_type = _o->array_segments.type;
  12119. auto _array_segments = _o->array_segments.Pack(_fbb);
  12120. auto _array_indices_type = _o->array_indices.type;
  12121. auto _array_indices = _o->array_indices.Pack(_fbb);
  12122. return tflite::CreateDimensionMetadata(
  12123. _fbb,
  12124. _format,
  12125. _dense_size,
  12126. _array_segments_type,
  12127. _array_segments,
  12128. _array_indices_type,
  12129. _array_indices);
  12130. }
  12131. inline SparsityParametersT::SparsityParametersT(const SparsityParametersT &o)
  12132. : traversal_order(o.traversal_order),
  12133. block_map(o.block_map) {
  12134. dim_metadata.reserve(o.dim_metadata.size());
  12135. for (const auto &dim_metadata_ : o.dim_metadata) { dim_metadata.emplace_back((dim_metadata_) ? new tflite::DimensionMetadataT(*dim_metadata_) : nullptr); }
  12136. }
  12137. inline SparsityParametersT &SparsityParametersT::operator=(SparsityParametersT o) FLATBUFFERS_NOEXCEPT {
  12138. std::swap(traversal_order, o.traversal_order);
  12139. std::swap(block_map, o.block_map);
  12140. std::swap(dim_metadata, o.dim_metadata);
  12141. return *this;
  12142. }
  12143. inline SparsityParametersT *SparsityParameters::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12144. auto _o = std::unique_ptr<SparsityParametersT>(new SparsityParametersT());
  12145. UnPackTo(_o.get(), _resolver);
  12146. return _o.release();
  12147. }
  12148. inline void SparsityParameters::UnPackTo(SparsityParametersT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12149. (void)_o;
  12150. (void)_resolver;
  12151. { auto _e = traversal_order(); if (_e) { _o->traversal_order.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->traversal_order[_i] = _e->Get(_i); } } }
  12152. { auto _e = block_map(); if (_e) { _o->block_map.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->block_map[_i] = _e->Get(_i); } } }
  12153. { auto _e = dim_metadata(); if (_e) { _o->dim_metadata.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->dim_metadata[_i]) { _e->Get(_i)->UnPackTo(_o->dim_metadata[_i].get(), _resolver); } else { _o->dim_metadata[_i] = std::unique_ptr<tflite::DimensionMetadataT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  12154. }
  12155. inline flatbuffers::Offset<SparsityParameters> SparsityParameters::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12156. return CreateSparsityParameters(_fbb, _o, _rehasher);
  12157. }
  12158. inline flatbuffers::Offset<SparsityParameters> CreateSparsityParameters(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12159. (void)_rehasher;
  12160. (void)_o;
  12161. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SparsityParametersT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12162. auto _traversal_order = _o->traversal_order.size() ? _fbb.CreateVector(_o->traversal_order) : 0;
  12163. auto _block_map = _o->block_map.size() ? _fbb.CreateVector(_o->block_map) : 0;
  12164. auto _dim_metadata = _o->dim_metadata.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::DimensionMetadata>> (_o->dim_metadata.size(), [](size_t i, _VectorArgs *__va) { return CreateDimensionMetadata(*__va->__fbb, __va->__o->dim_metadata[i].get(), __va->__rehasher); }, &_va ) : 0;
  12165. return tflite::CreateSparsityParameters(
  12166. _fbb,
  12167. _traversal_order,
  12168. _block_map,
  12169. _dim_metadata);
  12170. }
  12171. inline VariantSubTypeT *VariantSubType::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12172. auto _o = std::unique_ptr<VariantSubTypeT>(new VariantSubTypeT());
  12173. UnPackTo(_o.get(), _resolver);
  12174. return _o.release();
  12175. }
  12176. inline void VariantSubType::UnPackTo(VariantSubTypeT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12177. (void)_o;
  12178. (void)_resolver;
  12179. { auto _e = shape(); if (_e) { _o->shape.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->shape[_i] = _e->Get(_i); } } }
  12180. { auto _e = type(); _o->type = _e; }
  12181. { auto _e = has_rank(); _o->has_rank = _e; }
  12182. }
  12183. inline flatbuffers::Offset<VariantSubType> VariantSubType::Pack(flatbuffers::FlatBufferBuilder &_fbb, const VariantSubTypeT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12184. return CreateVariantSubType(_fbb, _o, _rehasher);
  12185. }
  12186. inline flatbuffers::Offset<VariantSubType> CreateVariantSubType(flatbuffers::FlatBufferBuilder &_fbb, const VariantSubTypeT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12187. (void)_rehasher;
  12188. (void)_o;
  12189. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const VariantSubTypeT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12190. auto _shape = _o->shape.size() ? _fbb.CreateVector(_o->shape) : 0;
  12191. auto _type = _o->type;
  12192. auto _has_rank = _o->has_rank;
  12193. return tflite::CreateVariantSubType(
  12194. _fbb,
  12195. _shape,
  12196. _type,
  12197. _has_rank);
  12198. }
  12199. inline TensorT::TensorT(const TensorT &o)
  12200. : shape(o.shape),
  12201. type(o.type),
  12202. buffer(o.buffer),
  12203. name(o.name),
  12204. quantization((o.quantization) ? new tflite::QuantizationParametersT(*o.quantization) : nullptr),
  12205. is_variable(o.is_variable),
  12206. sparsity((o.sparsity) ? new tflite::SparsityParametersT(*o.sparsity) : nullptr),
  12207. shape_signature(o.shape_signature),
  12208. has_rank(o.has_rank) {
  12209. variant_tensors.reserve(o.variant_tensors.size());
  12210. for (const auto &variant_tensors_ : o.variant_tensors) { variant_tensors.emplace_back((variant_tensors_) ? new tflite::VariantSubTypeT(*variant_tensors_) : nullptr); }
  12211. }
  12212. inline TensorT &TensorT::operator=(TensorT o) FLATBUFFERS_NOEXCEPT {
  12213. std::swap(shape, o.shape);
  12214. std::swap(type, o.type);
  12215. std::swap(buffer, o.buffer);
  12216. std::swap(name, o.name);
  12217. std::swap(quantization, o.quantization);
  12218. std::swap(is_variable, o.is_variable);
  12219. std::swap(sparsity, o.sparsity);
  12220. std::swap(shape_signature, o.shape_signature);
  12221. std::swap(has_rank, o.has_rank);
  12222. std::swap(variant_tensors, o.variant_tensors);
  12223. return *this;
  12224. }
  12225. inline TensorT *Tensor::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12226. auto _o = std::unique_ptr<TensorT>(new TensorT());
  12227. UnPackTo(_o.get(), _resolver);
  12228. return _o.release();
  12229. }
  12230. inline void Tensor::UnPackTo(TensorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12231. (void)_o;
  12232. (void)_resolver;
  12233. { auto _e = shape(); if (_e) { _o->shape.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->shape[_i] = _e->Get(_i); } } }
  12234. { auto _e = type(); _o->type = _e; }
  12235. { auto _e = buffer(); _o->buffer = _e; }
  12236. { auto _e = name(); if (_e) _o->name = _e->str(); }
  12237. { auto _e = quantization(); if (_e) { if(_o->quantization) { _e->UnPackTo(_o->quantization.get(), _resolver); } else { _o->quantization = std::unique_ptr<tflite::QuantizationParametersT>(_e->UnPack(_resolver)); } } }
  12238. { auto _e = is_variable(); _o->is_variable = _e; }
  12239. { auto _e = sparsity(); if (_e) { if(_o->sparsity) { _e->UnPackTo(_o->sparsity.get(), _resolver); } else { _o->sparsity = std::unique_ptr<tflite::SparsityParametersT>(_e->UnPack(_resolver)); } } }
  12240. { auto _e = shape_signature(); if (_e) { _o->shape_signature.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->shape_signature[_i] = _e->Get(_i); } } }
  12241. { auto _e = has_rank(); _o->has_rank = _e; }
  12242. { auto _e = variant_tensors(); if (_e) { _o->variant_tensors.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->variant_tensors[_i]) { _e->Get(_i)->UnPackTo(_o->variant_tensors[_i].get(), _resolver); } else { _o->variant_tensors[_i] = std::unique_ptr<tflite::VariantSubTypeT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  12243. }
  12244. inline flatbuffers::Offset<Tensor> Tensor::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12245. return CreateTensor(_fbb, _o, _rehasher);
  12246. }
  12247. inline flatbuffers::Offset<Tensor> CreateTensor(flatbuffers::FlatBufferBuilder &_fbb, const TensorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12248. (void)_rehasher;
  12249. (void)_o;
  12250. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TensorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12251. auto _shape = _o->shape.size() ? _fbb.CreateVector(_o->shape) : 0;
  12252. auto _type = _o->type;
  12253. auto _buffer = _o->buffer;
  12254. auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
  12255. auto _quantization = _o->quantization ? CreateQuantizationParameters(_fbb, _o->quantization.get(), _rehasher) : 0;
  12256. auto _is_variable = _o->is_variable;
  12257. auto _sparsity = _o->sparsity ? CreateSparsityParameters(_fbb, _o->sparsity.get(), _rehasher) : 0;
  12258. auto _shape_signature = _o->shape_signature.size() ? _fbb.CreateVector(_o->shape_signature) : 0;
  12259. auto _has_rank = _o->has_rank;
  12260. auto _variant_tensors = _o->variant_tensors.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::VariantSubType>> (_o->variant_tensors.size(), [](size_t i, _VectorArgs *__va) { return CreateVariantSubType(*__va->__fbb, __va->__o->variant_tensors[i].get(), __va->__rehasher); }, &_va ) : 0;
  12261. return tflite::CreateTensor(
  12262. _fbb,
  12263. _shape,
  12264. _type,
  12265. _buffer,
  12266. _name,
  12267. _quantization,
  12268. _is_variable,
  12269. _sparsity,
  12270. _shape_signature,
  12271. _has_rank,
  12272. _variant_tensors);
  12273. }
  12274. inline Conv2DOptionsT *Conv2DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12275. auto _o = std::unique_ptr<Conv2DOptionsT>(new Conv2DOptionsT());
  12276. UnPackTo(_o.get(), _resolver);
  12277. return _o.release();
  12278. }
  12279. inline void Conv2DOptions::UnPackTo(Conv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12280. (void)_o;
  12281. (void)_resolver;
  12282. { auto _e = padding(); _o->padding = _e; }
  12283. { auto _e = stride_w(); _o->stride_w = _e; }
  12284. { auto _e = stride_h(); _o->stride_h = _e; }
  12285. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12286. { auto _e = dilation_w_factor(); _o->dilation_w_factor = _e; }
  12287. { auto _e = dilation_h_factor(); _o->dilation_h_factor = _e; }
  12288. }
  12289. inline flatbuffers::Offset<Conv2DOptions> Conv2DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12290. return CreateConv2DOptions(_fbb, _o, _rehasher);
  12291. }
  12292. inline flatbuffers::Offset<Conv2DOptions> CreateConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12293. (void)_rehasher;
  12294. (void)_o;
  12295. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Conv2DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12296. auto _padding = _o->padding;
  12297. auto _stride_w = _o->stride_w;
  12298. auto _stride_h = _o->stride_h;
  12299. auto _fused_activation_function = _o->fused_activation_function;
  12300. auto _dilation_w_factor = _o->dilation_w_factor;
  12301. auto _dilation_h_factor = _o->dilation_h_factor;
  12302. return tflite::CreateConv2DOptions(
  12303. _fbb,
  12304. _padding,
  12305. _stride_w,
  12306. _stride_h,
  12307. _fused_activation_function,
  12308. _dilation_w_factor,
  12309. _dilation_h_factor);
  12310. }
  12311. inline Conv3DOptionsT *Conv3DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12312. auto _o = std::unique_ptr<Conv3DOptionsT>(new Conv3DOptionsT());
  12313. UnPackTo(_o.get(), _resolver);
  12314. return _o.release();
  12315. }
  12316. inline void Conv3DOptions::UnPackTo(Conv3DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12317. (void)_o;
  12318. (void)_resolver;
  12319. { auto _e = padding(); _o->padding = _e; }
  12320. { auto _e = stride_d(); _o->stride_d = _e; }
  12321. { auto _e = stride_w(); _o->stride_w = _e; }
  12322. { auto _e = stride_h(); _o->stride_h = _e; }
  12323. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12324. { auto _e = dilation_d_factor(); _o->dilation_d_factor = _e; }
  12325. { auto _e = dilation_w_factor(); _o->dilation_w_factor = _e; }
  12326. { auto _e = dilation_h_factor(); _o->dilation_h_factor = _e; }
  12327. }
  12328. inline flatbuffers::Offset<Conv3DOptions> Conv3DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12329. return CreateConv3DOptions(_fbb, _o, _rehasher);
  12330. }
  12331. inline flatbuffers::Offset<Conv3DOptions> CreateConv3DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12332. (void)_rehasher;
  12333. (void)_o;
  12334. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Conv3DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12335. auto _padding = _o->padding;
  12336. auto _stride_d = _o->stride_d;
  12337. auto _stride_w = _o->stride_w;
  12338. auto _stride_h = _o->stride_h;
  12339. auto _fused_activation_function = _o->fused_activation_function;
  12340. auto _dilation_d_factor = _o->dilation_d_factor;
  12341. auto _dilation_w_factor = _o->dilation_w_factor;
  12342. auto _dilation_h_factor = _o->dilation_h_factor;
  12343. return tflite::CreateConv3DOptions(
  12344. _fbb,
  12345. _padding,
  12346. _stride_d,
  12347. _stride_w,
  12348. _stride_h,
  12349. _fused_activation_function,
  12350. _dilation_d_factor,
  12351. _dilation_w_factor,
  12352. _dilation_h_factor);
  12353. }
  12354. inline Pool2DOptionsT *Pool2DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12355. auto _o = std::unique_ptr<Pool2DOptionsT>(new Pool2DOptionsT());
  12356. UnPackTo(_o.get(), _resolver);
  12357. return _o.release();
  12358. }
  12359. inline void Pool2DOptions::UnPackTo(Pool2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12360. (void)_o;
  12361. (void)_resolver;
  12362. { auto _e = padding(); _o->padding = _e; }
  12363. { auto _e = stride_w(); _o->stride_w = _e; }
  12364. { auto _e = stride_h(); _o->stride_h = _e; }
  12365. { auto _e = filter_width(); _o->filter_width = _e; }
  12366. { auto _e = filter_height(); _o->filter_height = _e; }
  12367. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12368. }
  12369. inline flatbuffers::Offset<Pool2DOptions> Pool2DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12370. return CreatePool2DOptions(_fbb, _o, _rehasher);
  12371. }
  12372. inline flatbuffers::Offset<Pool2DOptions> CreatePool2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12373. (void)_rehasher;
  12374. (void)_o;
  12375. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Pool2DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12376. auto _padding = _o->padding;
  12377. auto _stride_w = _o->stride_w;
  12378. auto _stride_h = _o->stride_h;
  12379. auto _filter_width = _o->filter_width;
  12380. auto _filter_height = _o->filter_height;
  12381. auto _fused_activation_function = _o->fused_activation_function;
  12382. return tflite::CreatePool2DOptions(
  12383. _fbb,
  12384. _padding,
  12385. _stride_w,
  12386. _stride_h,
  12387. _filter_width,
  12388. _filter_height,
  12389. _fused_activation_function);
  12390. }
  12391. inline DepthwiseConv2DOptionsT *DepthwiseConv2DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12392. auto _o = std::unique_ptr<DepthwiseConv2DOptionsT>(new DepthwiseConv2DOptionsT());
  12393. UnPackTo(_o.get(), _resolver);
  12394. return _o.release();
  12395. }
  12396. inline void DepthwiseConv2DOptions::UnPackTo(DepthwiseConv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12397. (void)_o;
  12398. (void)_resolver;
  12399. { auto _e = padding(); _o->padding = _e; }
  12400. { auto _e = stride_w(); _o->stride_w = _e; }
  12401. { auto _e = stride_h(); _o->stride_h = _e; }
  12402. { auto _e = depth_multiplier(); _o->depth_multiplier = _e; }
  12403. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12404. { auto _e = dilation_w_factor(); _o->dilation_w_factor = _e; }
  12405. { auto _e = dilation_h_factor(); _o->dilation_h_factor = _e; }
  12406. }
  12407. inline flatbuffers::Offset<DepthwiseConv2DOptions> DepthwiseConv2DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12408. return CreateDepthwiseConv2DOptions(_fbb, _o, _rehasher);
  12409. }
  12410. inline flatbuffers::Offset<DepthwiseConv2DOptions> CreateDepthwiseConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12411. (void)_rehasher;
  12412. (void)_o;
  12413. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DepthwiseConv2DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12414. auto _padding = _o->padding;
  12415. auto _stride_w = _o->stride_w;
  12416. auto _stride_h = _o->stride_h;
  12417. auto _depth_multiplier = _o->depth_multiplier;
  12418. auto _fused_activation_function = _o->fused_activation_function;
  12419. auto _dilation_w_factor = _o->dilation_w_factor;
  12420. auto _dilation_h_factor = _o->dilation_h_factor;
  12421. return tflite::CreateDepthwiseConv2DOptions(
  12422. _fbb,
  12423. _padding,
  12424. _stride_w,
  12425. _stride_h,
  12426. _depth_multiplier,
  12427. _fused_activation_function,
  12428. _dilation_w_factor,
  12429. _dilation_h_factor);
  12430. }
  12431. inline ConcatEmbeddingsOptionsT *ConcatEmbeddingsOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12432. auto _o = std::unique_ptr<ConcatEmbeddingsOptionsT>(new ConcatEmbeddingsOptionsT());
  12433. UnPackTo(_o.get(), _resolver);
  12434. return _o.release();
  12435. }
  12436. inline void ConcatEmbeddingsOptions::UnPackTo(ConcatEmbeddingsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12437. (void)_o;
  12438. (void)_resolver;
  12439. { auto _e = num_channels(); _o->num_channels = _e; }
  12440. { auto _e = num_columns_per_channel(); if (_e) { _o->num_columns_per_channel.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->num_columns_per_channel[_i] = _e->Get(_i); } } }
  12441. { auto _e = embedding_dim_per_channel(); if (_e) { _o->embedding_dim_per_channel.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->embedding_dim_per_channel[_i] = _e->Get(_i); } } }
  12442. }
  12443. inline flatbuffers::Offset<ConcatEmbeddingsOptions> ConcatEmbeddingsOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12444. return CreateConcatEmbeddingsOptions(_fbb, _o, _rehasher);
  12445. }
  12446. inline flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12447. (void)_rehasher;
  12448. (void)_o;
  12449. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ConcatEmbeddingsOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12450. auto _num_channels = _o->num_channels;
  12451. auto _num_columns_per_channel = _o->num_columns_per_channel.size() ? _fbb.CreateVector(_o->num_columns_per_channel) : 0;
  12452. auto _embedding_dim_per_channel = _o->embedding_dim_per_channel.size() ? _fbb.CreateVector(_o->embedding_dim_per_channel) : 0;
  12453. return tflite::CreateConcatEmbeddingsOptions(
  12454. _fbb,
  12455. _num_channels,
  12456. _num_columns_per_channel,
  12457. _embedding_dim_per_channel);
  12458. }
  12459. inline LSHProjectionOptionsT *LSHProjectionOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12460. auto _o = std::unique_ptr<LSHProjectionOptionsT>(new LSHProjectionOptionsT());
  12461. UnPackTo(_o.get(), _resolver);
  12462. return _o.release();
  12463. }
  12464. inline void LSHProjectionOptions::UnPackTo(LSHProjectionOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12465. (void)_o;
  12466. (void)_resolver;
  12467. { auto _e = type(); _o->type = _e; }
  12468. }
  12469. inline flatbuffers::Offset<LSHProjectionOptions> LSHProjectionOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12470. return CreateLSHProjectionOptions(_fbb, _o, _rehasher);
  12471. }
  12472. inline flatbuffers::Offset<LSHProjectionOptions> CreateLSHProjectionOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12473. (void)_rehasher;
  12474. (void)_o;
  12475. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LSHProjectionOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12476. auto _type = _o->type;
  12477. return tflite::CreateLSHProjectionOptions(
  12478. _fbb,
  12479. _type);
  12480. }
  12481. inline SVDFOptionsT *SVDFOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12482. auto _o = std::unique_ptr<SVDFOptionsT>(new SVDFOptionsT());
  12483. UnPackTo(_o.get(), _resolver);
  12484. return _o.release();
  12485. }
  12486. inline void SVDFOptions::UnPackTo(SVDFOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12487. (void)_o;
  12488. (void)_resolver;
  12489. { auto _e = rank(); _o->rank = _e; }
  12490. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12491. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12492. }
  12493. inline flatbuffers::Offset<SVDFOptions> SVDFOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12494. return CreateSVDFOptions(_fbb, _o, _rehasher);
  12495. }
  12496. inline flatbuffers::Offset<SVDFOptions> CreateSVDFOptions(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12497. (void)_rehasher;
  12498. (void)_o;
  12499. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SVDFOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12500. auto _rank = _o->rank;
  12501. auto _fused_activation_function = _o->fused_activation_function;
  12502. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12503. return tflite::CreateSVDFOptions(
  12504. _fbb,
  12505. _rank,
  12506. _fused_activation_function,
  12507. _asymmetric_quantize_inputs);
  12508. }
  12509. inline RNNOptionsT *RNNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12510. auto _o = std::unique_ptr<RNNOptionsT>(new RNNOptionsT());
  12511. UnPackTo(_o.get(), _resolver);
  12512. return _o.release();
  12513. }
  12514. inline void RNNOptions::UnPackTo(RNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12515. (void)_o;
  12516. (void)_resolver;
  12517. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12518. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12519. }
  12520. inline flatbuffers::Offset<RNNOptions> RNNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12521. return CreateRNNOptions(_fbb, _o, _rehasher);
  12522. }
  12523. inline flatbuffers::Offset<RNNOptions> CreateRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12524. (void)_rehasher;
  12525. (void)_o;
  12526. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RNNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12527. auto _fused_activation_function = _o->fused_activation_function;
  12528. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12529. return tflite::CreateRNNOptions(
  12530. _fbb,
  12531. _fused_activation_function,
  12532. _asymmetric_quantize_inputs);
  12533. }
  12534. inline SequenceRNNOptionsT *SequenceRNNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12535. auto _o = std::unique_ptr<SequenceRNNOptionsT>(new SequenceRNNOptionsT());
  12536. UnPackTo(_o.get(), _resolver);
  12537. return _o.release();
  12538. }
  12539. inline void SequenceRNNOptions::UnPackTo(SequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12540. (void)_o;
  12541. (void)_resolver;
  12542. { auto _e = time_major(); _o->time_major = _e; }
  12543. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12544. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12545. }
  12546. inline flatbuffers::Offset<SequenceRNNOptions> SequenceRNNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12547. return CreateSequenceRNNOptions(_fbb, _o, _rehasher);
  12548. }
  12549. inline flatbuffers::Offset<SequenceRNNOptions> CreateSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12550. (void)_rehasher;
  12551. (void)_o;
  12552. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SequenceRNNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12553. auto _time_major = _o->time_major;
  12554. auto _fused_activation_function = _o->fused_activation_function;
  12555. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12556. return tflite::CreateSequenceRNNOptions(
  12557. _fbb,
  12558. _time_major,
  12559. _fused_activation_function,
  12560. _asymmetric_quantize_inputs);
  12561. }
  12562. inline BidirectionalSequenceRNNOptionsT *BidirectionalSequenceRNNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12563. auto _o = std::unique_ptr<BidirectionalSequenceRNNOptionsT>(new BidirectionalSequenceRNNOptionsT());
  12564. UnPackTo(_o.get(), _resolver);
  12565. return _o.release();
  12566. }
  12567. inline void BidirectionalSequenceRNNOptions::UnPackTo(BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12568. (void)_o;
  12569. (void)_resolver;
  12570. { auto _e = time_major(); _o->time_major = _e; }
  12571. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12572. { auto _e = merge_outputs(); _o->merge_outputs = _e; }
  12573. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12574. }
  12575. inline flatbuffers::Offset<BidirectionalSequenceRNNOptions> BidirectionalSequenceRNNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12576. return CreateBidirectionalSequenceRNNOptions(_fbb, _o, _rehasher);
  12577. }
  12578. inline flatbuffers::Offset<BidirectionalSequenceRNNOptions> CreateBidirectionalSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12579. (void)_rehasher;
  12580. (void)_o;
  12581. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BidirectionalSequenceRNNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12582. auto _time_major = _o->time_major;
  12583. auto _fused_activation_function = _o->fused_activation_function;
  12584. auto _merge_outputs = _o->merge_outputs;
  12585. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12586. return tflite::CreateBidirectionalSequenceRNNOptions(
  12587. _fbb,
  12588. _time_major,
  12589. _fused_activation_function,
  12590. _merge_outputs,
  12591. _asymmetric_quantize_inputs);
  12592. }
  12593. inline FullyConnectedOptionsT *FullyConnectedOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12594. auto _o = std::unique_ptr<FullyConnectedOptionsT>(new FullyConnectedOptionsT());
  12595. UnPackTo(_o.get(), _resolver);
  12596. return _o.release();
  12597. }
  12598. inline void FullyConnectedOptions::UnPackTo(FullyConnectedOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12599. (void)_o;
  12600. (void)_resolver;
  12601. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12602. { auto _e = weights_format(); _o->weights_format = _e; }
  12603. { auto _e = keep_num_dims(); _o->keep_num_dims = _e; }
  12604. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12605. }
  12606. inline flatbuffers::Offset<FullyConnectedOptions> FullyConnectedOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12607. return CreateFullyConnectedOptions(_fbb, _o, _rehasher);
  12608. }
  12609. inline flatbuffers::Offset<FullyConnectedOptions> CreateFullyConnectedOptions(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12610. (void)_rehasher;
  12611. (void)_o;
  12612. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FullyConnectedOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12613. auto _fused_activation_function = _o->fused_activation_function;
  12614. auto _weights_format = _o->weights_format;
  12615. auto _keep_num_dims = _o->keep_num_dims;
  12616. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12617. return tflite::CreateFullyConnectedOptions(
  12618. _fbb,
  12619. _fused_activation_function,
  12620. _weights_format,
  12621. _keep_num_dims,
  12622. _asymmetric_quantize_inputs);
  12623. }
  12624. inline SoftmaxOptionsT *SoftmaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12625. auto _o = std::unique_ptr<SoftmaxOptionsT>(new SoftmaxOptionsT());
  12626. UnPackTo(_o.get(), _resolver);
  12627. return _o.release();
  12628. }
  12629. inline void SoftmaxOptions::UnPackTo(SoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12630. (void)_o;
  12631. (void)_resolver;
  12632. { auto _e = beta(); _o->beta = _e; }
  12633. }
  12634. inline flatbuffers::Offset<SoftmaxOptions> SoftmaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12635. return CreateSoftmaxOptions(_fbb, _o, _rehasher);
  12636. }
  12637. inline flatbuffers::Offset<SoftmaxOptions> CreateSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12638. (void)_rehasher;
  12639. (void)_o;
  12640. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SoftmaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12641. auto _beta = _o->beta;
  12642. return tflite::CreateSoftmaxOptions(
  12643. _fbb,
  12644. _beta);
  12645. }
  12646. inline ConcatenationOptionsT *ConcatenationOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12647. auto _o = std::unique_ptr<ConcatenationOptionsT>(new ConcatenationOptionsT());
  12648. UnPackTo(_o.get(), _resolver);
  12649. return _o.release();
  12650. }
  12651. inline void ConcatenationOptions::UnPackTo(ConcatenationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12652. (void)_o;
  12653. (void)_resolver;
  12654. { auto _e = axis(); _o->axis = _e; }
  12655. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12656. }
  12657. inline flatbuffers::Offset<ConcatenationOptions> ConcatenationOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12658. return CreateConcatenationOptions(_fbb, _o, _rehasher);
  12659. }
  12660. inline flatbuffers::Offset<ConcatenationOptions> CreateConcatenationOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12661. (void)_rehasher;
  12662. (void)_o;
  12663. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ConcatenationOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12664. auto _axis = _o->axis;
  12665. auto _fused_activation_function = _o->fused_activation_function;
  12666. return tflite::CreateConcatenationOptions(
  12667. _fbb,
  12668. _axis,
  12669. _fused_activation_function);
  12670. }
  12671. inline AddOptionsT *AddOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12672. auto _o = std::unique_ptr<AddOptionsT>(new AddOptionsT());
  12673. UnPackTo(_o.get(), _resolver);
  12674. return _o.release();
  12675. }
  12676. inline void AddOptions::UnPackTo(AddOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12677. (void)_o;
  12678. (void)_resolver;
  12679. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12680. { auto _e = pot_scale_int16(); _o->pot_scale_int16 = _e; }
  12681. }
  12682. inline flatbuffers::Offset<AddOptions> AddOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12683. return CreateAddOptions(_fbb, _o, _rehasher);
  12684. }
  12685. inline flatbuffers::Offset<AddOptions> CreateAddOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12686. (void)_rehasher;
  12687. (void)_o;
  12688. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AddOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12689. auto _fused_activation_function = _o->fused_activation_function;
  12690. auto _pot_scale_int16 = _o->pot_scale_int16;
  12691. return tflite::CreateAddOptions(
  12692. _fbb,
  12693. _fused_activation_function,
  12694. _pot_scale_int16);
  12695. }
  12696. inline MulOptionsT *MulOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12697. auto _o = std::unique_ptr<MulOptionsT>(new MulOptionsT());
  12698. UnPackTo(_o.get(), _resolver);
  12699. return _o.release();
  12700. }
  12701. inline void MulOptions::UnPackTo(MulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12702. (void)_o;
  12703. (void)_resolver;
  12704. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12705. }
  12706. inline flatbuffers::Offset<MulOptions> MulOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12707. return CreateMulOptions(_fbb, _o, _rehasher);
  12708. }
  12709. inline flatbuffers::Offset<MulOptions> CreateMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12710. (void)_rehasher;
  12711. (void)_o;
  12712. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MulOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12713. auto _fused_activation_function = _o->fused_activation_function;
  12714. return tflite::CreateMulOptions(
  12715. _fbb,
  12716. _fused_activation_function);
  12717. }
  12718. inline L2NormOptionsT *L2NormOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12719. auto _o = std::unique_ptr<L2NormOptionsT>(new L2NormOptionsT());
  12720. UnPackTo(_o.get(), _resolver);
  12721. return _o.release();
  12722. }
  12723. inline void L2NormOptions::UnPackTo(L2NormOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12724. (void)_o;
  12725. (void)_resolver;
  12726. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12727. }
  12728. inline flatbuffers::Offset<L2NormOptions> L2NormOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12729. return CreateL2NormOptions(_fbb, _o, _rehasher);
  12730. }
  12731. inline flatbuffers::Offset<L2NormOptions> CreateL2NormOptions(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12732. (void)_rehasher;
  12733. (void)_o;
  12734. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const L2NormOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12735. auto _fused_activation_function = _o->fused_activation_function;
  12736. return tflite::CreateL2NormOptions(
  12737. _fbb,
  12738. _fused_activation_function);
  12739. }
  12740. inline LocalResponseNormalizationOptionsT *LocalResponseNormalizationOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12741. auto _o = std::unique_ptr<LocalResponseNormalizationOptionsT>(new LocalResponseNormalizationOptionsT());
  12742. UnPackTo(_o.get(), _resolver);
  12743. return _o.release();
  12744. }
  12745. inline void LocalResponseNormalizationOptions::UnPackTo(LocalResponseNormalizationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12746. (void)_o;
  12747. (void)_resolver;
  12748. { auto _e = radius(); _o->radius = _e; }
  12749. { auto _e = bias(); _o->bias = _e; }
  12750. { auto _e = alpha(); _o->alpha = _e; }
  12751. { auto _e = beta(); _o->beta = _e; }
  12752. }
  12753. inline flatbuffers::Offset<LocalResponseNormalizationOptions> LocalResponseNormalizationOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12754. return CreateLocalResponseNormalizationOptions(_fbb, _o, _rehasher);
  12755. }
  12756. inline flatbuffers::Offset<LocalResponseNormalizationOptions> CreateLocalResponseNormalizationOptions(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12757. (void)_rehasher;
  12758. (void)_o;
  12759. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LocalResponseNormalizationOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12760. auto _radius = _o->radius;
  12761. auto _bias = _o->bias;
  12762. auto _alpha = _o->alpha;
  12763. auto _beta = _o->beta;
  12764. return tflite::CreateLocalResponseNormalizationOptions(
  12765. _fbb,
  12766. _radius,
  12767. _bias,
  12768. _alpha,
  12769. _beta);
  12770. }
  12771. inline LSTMOptionsT *LSTMOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12772. auto _o = std::unique_ptr<LSTMOptionsT>(new LSTMOptionsT());
  12773. UnPackTo(_o.get(), _resolver);
  12774. return _o.release();
  12775. }
  12776. inline void LSTMOptions::UnPackTo(LSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12777. (void)_o;
  12778. (void)_resolver;
  12779. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12780. { auto _e = cell_clip(); _o->cell_clip = _e; }
  12781. { auto _e = proj_clip(); _o->proj_clip = _e; }
  12782. { auto _e = kernel_type(); _o->kernel_type = _e; }
  12783. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12784. }
  12785. inline flatbuffers::Offset<LSTMOptions> LSTMOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12786. return CreateLSTMOptions(_fbb, _o, _rehasher);
  12787. }
  12788. inline flatbuffers::Offset<LSTMOptions> CreateLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12789. (void)_rehasher;
  12790. (void)_o;
  12791. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LSTMOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12792. auto _fused_activation_function = _o->fused_activation_function;
  12793. auto _cell_clip = _o->cell_clip;
  12794. auto _proj_clip = _o->proj_clip;
  12795. auto _kernel_type = _o->kernel_type;
  12796. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12797. return tflite::CreateLSTMOptions(
  12798. _fbb,
  12799. _fused_activation_function,
  12800. _cell_clip,
  12801. _proj_clip,
  12802. _kernel_type,
  12803. _asymmetric_quantize_inputs);
  12804. }
  12805. inline UnidirectionalSequenceLSTMOptionsT *UnidirectionalSequenceLSTMOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12806. auto _o = std::unique_ptr<UnidirectionalSequenceLSTMOptionsT>(new UnidirectionalSequenceLSTMOptionsT());
  12807. UnPackTo(_o.get(), _resolver);
  12808. return _o.release();
  12809. }
  12810. inline void UnidirectionalSequenceLSTMOptions::UnPackTo(UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12811. (void)_o;
  12812. (void)_resolver;
  12813. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12814. { auto _e = cell_clip(); _o->cell_clip = _e; }
  12815. { auto _e = proj_clip(); _o->proj_clip = _e; }
  12816. { auto _e = time_major(); _o->time_major = _e; }
  12817. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12818. }
  12819. inline flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> UnidirectionalSequenceLSTMOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12820. return CreateUnidirectionalSequenceLSTMOptions(_fbb, _o, _rehasher);
  12821. }
  12822. inline flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> CreateUnidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12823. (void)_rehasher;
  12824. (void)_o;
  12825. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnidirectionalSequenceLSTMOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12826. auto _fused_activation_function = _o->fused_activation_function;
  12827. auto _cell_clip = _o->cell_clip;
  12828. auto _proj_clip = _o->proj_clip;
  12829. auto _time_major = _o->time_major;
  12830. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12831. return tflite::CreateUnidirectionalSequenceLSTMOptions(
  12832. _fbb,
  12833. _fused_activation_function,
  12834. _cell_clip,
  12835. _proj_clip,
  12836. _time_major,
  12837. _asymmetric_quantize_inputs);
  12838. }
  12839. inline BidirectionalSequenceLSTMOptionsT *BidirectionalSequenceLSTMOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12840. auto _o = std::unique_ptr<BidirectionalSequenceLSTMOptionsT>(new BidirectionalSequenceLSTMOptionsT());
  12841. UnPackTo(_o.get(), _resolver);
  12842. return _o.release();
  12843. }
  12844. inline void BidirectionalSequenceLSTMOptions::UnPackTo(BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12845. (void)_o;
  12846. (void)_resolver;
  12847. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12848. { auto _e = cell_clip(); _o->cell_clip = _e; }
  12849. { auto _e = proj_clip(); _o->proj_clip = _e; }
  12850. { auto _e = merge_outputs(); _o->merge_outputs = _e; }
  12851. { auto _e = time_major(); _o->time_major = _e; }
  12852. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12853. }
  12854. inline flatbuffers::Offset<BidirectionalSequenceLSTMOptions> BidirectionalSequenceLSTMOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12855. return CreateBidirectionalSequenceLSTMOptions(_fbb, _o, _rehasher);
  12856. }
  12857. inline flatbuffers::Offset<BidirectionalSequenceLSTMOptions> CreateBidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12858. (void)_rehasher;
  12859. (void)_o;
  12860. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BidirectionalSequenceLSTMOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12861. auto _fused_activation_function = _o->fused_activation_function;
  12862. auto _cell_clip = _o->cell_clip;
  12863. auto _proj_clip = _o->proj_clip;
  12864. auto _merge_outputs = _o->merge_outputs;
  12865. auto _time_major = _o->time_major;
  12866. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12867. return tflite::CreateBidirectionalSequenceLSTMOptions(
  12868. _fbb,
  12869. _fused_activation_function,
  12870. _cell_clip,
  12871. _proj_clip,
  12872. _merge_outputs,
  12873. _time_major,
  12874. _asymmetric_quantize_inputs);
  12875. }
  12876. inline ResizeBilinearOptionsT *ResizeBilinearOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12877. auto _o = std::unique_ptr<ResizeBilinearOptionsT>(new ResizeBilinearOptionsT());
  12878. UnPackTo(_o.get(), _resolver);
  12879. return _o.release();
  12880. }
  12881. inline void ResizeBilinearOptions::UnPackTo(ResizeBilinearOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12882. (void)_o;
  12883. (void)_resolver;
  12884. { auto _e = align_corners(); _o->align_corners = _e; }
  12885. { auto _e = half_pixel_centers(); _o->half_pixel_centers = _e; }
  12886. }
  12887. inline flatbuffers::Offset<ResizeBilinearOptions> ResizeBilinearOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12888. return CreateResizeBilinearOptions(_fbb, _o, _rehasher);
  12889. }
  12890. inline flatbuffers::Offset<ResizeBilinearOptions> CreateResizeBilinearOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12891. (void)_rehasher;
  12892. (void)_o;
  12893. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ResizeBilinearOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12894. auto _align_corners = _o->align_corners;
  12895. auto _half_pixel_centers = _o->half_pixel_centers;
  12896. return tflite::CreateResizeBilinearOptions(
  12897. _fbb,
  12898. _align_corners,
  12899. _half_pixel_centers);
  12900. }
  12901. inline ResizeNearestNeighborOptionsT *ResizeNearestNeighborOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12902. auto _o = std::unique_ptr<ResizeNearestNeighborOptionsT>(new ResizeNearestNeighborOptionsT());
  12903. UnPackTo(_o.get(), _resolver);
  12904. return _o.release();
  12905. }
  12906. inline void ResizeNearestNeighborOptions::UnPackTo(ResizeNearestNeighborOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12907. (void)_o;
  12908. (void)_resolver;
  12909. { auto _e = align_corners(); _o->align_corners = _e; }
  12910. { auto _e = half_pixel_centers(); _o->half_pixel_centers = _e; }
  12911. }
  12912. inline flatbuffers::Offset<ResizeNearestNeighborOptions> ResizeNearestNeighborOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12913. return CreateResizeNearestNeighborOptions(_fbb, _o, _rehasher);
  12914. }
  12915. inline flatbuffers::Offset<ResizeNearestNeighborOptions> CreateResizeNearestNeighborOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12916. (void)_rehasher;
  12917. (void)_o;
  12918. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ResizeNearestNeighborOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12919. auto _align_corners = _o->align_corners;
  12920. auto _half_pixel_centers = _o->half_pixel_centers;
  12921. return tflite::CreateResizeNearestNeighborOptions(
  12922. _fbb,
  12923. _align_corners,
  12924. _half_pixel_centers);
  12925. }
  12926. inline CallOptionsT *CallOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12927. auto _o = std::unique_ptr<CallOptionsT>(new CallOptionsT());
  12928. UnPackTo(_o.get(), _resolver);
  12929. return _o.release();
  12930. }
  12931. inline void CallOptions::UnPackTo(CallOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12932. (void)_o;
  12933. (void)_resolver;
  12934. { auto _e = subgraph(); _o->subgraph = _e; }
  12935. }
  12936. inline flatbuffers::Offset<CallOptions> CallOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12937. return CreateCallOptions(_fbb, _o, _rehasher);
  12938. }
  12939. inline flatbuffers::Offset<CallOptions> CreateCallOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12940. (void)_rehasher;
  12941. (void)_o;
  12942. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CallOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12943. auto _subgraph = _o->subgraph;
  12944. return tflite::CreateCallOptions(
  12945. _fbb,
  12946. _subgraph);
  12947. }
  12948. inline PadOptionsT *PadOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12949. auto _o = std::unique_ptr<PadOptionsT>(new PadOptionsT());
  12950. UnPackTo(_o.get(), _resolver);
  12951. return _o.release();
  12952. }
  12953. inline void PadOptions::UnPackTo(PadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12954. (void)_o;
  12955. (void)_resolver;
  12956. }
  12957. inline flatbuffers::Offset<PadOptions> PadOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12958. return CreatePadOptions(_fbb, _o, _rehasher);
  12959. }
  12960. inline flatbuffers::Offset<PadOptions> CreatePadOptions(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12961. (void)_rehasher;
  12962. (void)_o;
  12963. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PadOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12964. return tflite::CreatePadOptions(
  12965. _fbb);
  12966. }
  12967. inline PadV2OptionsT *PadV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12968. auto _o = std::unique_ptr<PadV2OptionsT>(new PadV2OptionsT());
  12969. UnPackTo(_o.get(), _resolver);
  12970. return _o.release();
  12971. }
  12972. inline void PadV2Options::UnPackTo(PadV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12973. (void)_o;
  12974. (void)_resolver;
  12975. }
  12976. inline flatbuffers::Offset<PadV2Options> PadV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12977. return CreatePadV2Options(_fbb, _o, _rehasher);
  12978. }
  12979. inline flatbuffers::Offset<PadV2Options> CreatePadV2Options(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12980. (void)_rehasher;
  12981. (void)_o;
  12982. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PadV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12983. return tflite::CreatePadV2Options(
  12984. _fbb);
  12985. }
  12986. inline ReshapeOptionsT *ReshapeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12987. auto _o = std::unique_ptr<ReshapeOptionsT>(new ReshapeOptionsT());
  12988. UnPackTo(_o.get(), _resolver);
  12989. return _o.release();
  12990. }
  12991. inline void ReshapeOptions::UnPackTo(ReshapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12992. (void)_o;
  12993. (void)_resolver;
  12994. { auto _e = new_shape(); if (_e) { _o->new_shape.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->new_shape[_i] = _e->Get(_i); } } }
  12995. }
  12996. inline flatbuffers::Offset<ReshapeOptions> ReshapeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12997. return CreateReshapeOptions(_fbb, _o, _rehasher);
  12998. }
  12999. inline flatbuffers::Offset<ReshapeOptions> CreateReshapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13000. (void)_rehasher;
  13001. (void)_o;
  13002. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReshapeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13003. auto _new_shape = _o->new_shape.size() ? _fbb.CreateVector(_o->new_shape) : 0;
  13004. return tflite::CreateReshapeOptions(
  13005. _fbb,
  13006. _new_shape);
  13007. }
  13008. inline SpaceToBatchNDOptionsT *SpaceToBatchNDOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13009. auto _o = std::unique_ptr<SpaceToBatchNDOptionsT>(new SpaceToBatchNDOptionsT());
  13010. UnPackTo(_o.get(), _resolver);
  13011. return _o.release();
  13012. }
  13013. inline void SpaceToBatchNDOptions::UnPackTo(SpaceToBatchNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13014. (void)_o;
  13015. (void)_resolver;
  13016. }
  13017. inline flatbuffers::Offset<SpaceToBatchNDOptions> SpaceToBatchNDOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13018. return CreateSpaceToBatchNDOptions(_fbb, _o, _rehasher);
  13019. }
  13020. inline flatbuffers::Offset<SpaceToBatchNDOptions> CreateSpaceToBatchNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13021. (void)_rehasher;
  13022. (void)_o;
  13023. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SpaceToBatchNDOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13024. return tflite::CreateSpaceToBatchNDOptions(
  13025. _fbb);
  13026. }
  13027. inline BatchToSpaceNDOptionsT *BatchToSpaceNDOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13028. auto _o = std::unique_ptr<BatchToSpaceNDOptionsT>(new BatchToSpaceNDOptionsT());
  13029. UnPackTo(_o.get(), _resolver);
  13030. return _o.release();
  13031. }
  13032. inline void BatchToSpaceNDOptions::UnPackTo(BatchToSpaceNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13033. (void)_o;
  13034. (void)_resolver;
  13035. }
  13036. inline flatbuffers::Offset<BatchToSpaceNDOptions> BatchToSpaceNDOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13037. return CreateBatchToSpaceNDOptions(_fbb, _o, _rehasher);
  13038. }
  13039. inline flatbuffers::Offset<BatchToSpaceNDOptions> CreateBatchToSpaceNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13040. (void)_rehasher;
  13041. (void)_o;
  13042. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BatchToSpaceNDOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13043. return tflite::CreateBatchToSpaceNDOptions(
  13044. _fbb);
  13045. }
  13046. inline SkipGramOptionsT *SkipGramOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13047. auto _o = std::unique_ptr<SkipGramOptionsT>(new SkipGramOptionsT());
  13048. UnPackTo(_o.get(), _resolver);
  13049. return _o.release();
  13050. }
  13051. inline void SkipGramOptions::UnPackTo(SkipGramOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13052. (void)_o;
  13053. (void)_resolver;
  13054. { auto _e = ngram_size(); _o->ngram_size = _e; }
  13055. { auto _e = max_skip_size(); _o->max_skip_size = _e; }
  13056. { auto _e = include_all_ngrams(); _o->include_all_ngrams = _e; }
  13057. }
  13058. inline flatbuffers::Offset<SkipGramOptions> SkipGramOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13059. return CreateSkipGramOptions(_fbb, _o, _rehasher);
  13060. }
  13061. inline flatbuffers::Offset<SkipGramOptions> CreateSkipGramOptions(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13062. (void)_rehasher;
  13063. (void)_o;
  13064. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SkipGramOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13065. auto _ngram_size = _o->ngram_size;
  13066. auto _max_skip_size = _o->max_skip_size;
  13067. auto _include_all_ngrams = _o->include_all_ngrams;
  13068. return tflite::CreateSkipGramOptions(
  13069. _fbb,
  13070. _ngram_size,
  13071. _max_skip_size,
  13072. _include_all_ngrams);
  13073. }
  13074. inline SpaceToDepthOptionsT *SpaceToDepthOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13075. auto _o = std::unique_ptr<SpaceToDepthOptionsT>(new SpaceToDepthOptionsT());
  13076. UnPackTo(_o.get(), _resolver);
  13077. return _o.release();
  13078. }
  13079. inline void SpaceToDepthOptions::UnPackTo(SpaceToDepthOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13080. (void)_o;
  13081. (void)_resolver;
  13082. { auto _e = block_size(); _o->block_size = _e; }
  13083. }
  13084. inline flatbuffers::Offset<SpaceToDepthOptions> SpaceToDepthOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13085. return CreateSpaceToDepthOptions(_fbb, _o, _rehasher);
  13086. }
  13087. inline flatbuffers::Offset<SpaceToDepthOptions> CreateSpaceToDepthOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13088. (void)_rehasher;
  13089. (void)_o;
  13090. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SpaceToDepthOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13091. auto _block_size = _o->block_size;
  13092. return tflite::CreateSpaceToDepthOptions(
  13093. _fbb,
  13094. _block_size);
  13095. }
  13096. inline DepthToSpaceOptionsT *DepthToSpaceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13097. auto _o = std::unique_ptr<DepthToSpaceOptionsT>(new DepthToSpaceOptionsT());
  13098. UnPackTo(_o.get(), _resolver);
  13099. return _o.release();
  13100. }
  13101. inline void DepthToSpaceOptions::UnPackTo(DepthToSpaceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13102. (void)_o;
  13103. (void)_resolver;
  13104. { auto _e = block_size(); _o->block_size = _e; }
  13105. }
  13106. inline flatbuffers::Offset<DepthToSpaceOptions> DepthToSpaceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13107. return CreateDepthToSpaceOptions(_fbb, _o, _rehasher);
  13108. }
  13109. inline flatbuffers::Offset<DepthToSpaceOptions> CreateDepthToSpaceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13110. (void)_rehasher;
  13111. (void)_o;
  13112. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DepthToSpaceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13113. auto _block_size = _o->block_size;
  13114. return tflite::CreateDepthToSpaceOptions(
  13115. _fbb,
  13116. _block_size);
  13117. }
  13118. inline SubOptionsT *SubOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13119. auto _o = std::unique_ptr<SubOptionsT>(new SubOptionsT());
  13120. UnPackTo(_o.get(), _resolver);
  13121. return _o.release();
  13122. }
  13123. inline void SubOptions::UnPackTo(SubOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13124. (void)_o;
  13125. (void)_resolver;
  13126. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  13127. { auto _e = pot_scale_int16(); _o->pot_scale_int16 = _e; }
  13128. }
  13129. inline flatbuffers::Offset<SubOptions> SubOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13130. return CreateSubOptions(_fbb, _o, _rehasher);
  13131. }
  13132. inline flatbuffers::Offset<SubOptions> CreateSubOptions(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13133. (void)_rehasher;
  13134. (void)_o;
  13135. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SubOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13136. auto _fused_activation_function = _o->fused_activation_function;
  13137. auto _pot_scale_int16 = _o->pot_scale_int16;
  13138. return tflite::CreateSubOptions(
  13139. _fbb,
  13140. _fused_activation_function,
  13141. _pot_scale_int16);
  13142. }
  13143. inline DivOptionsT *DivOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13144. auto _o = std::unique_ptr<DivOptionsT>(new DivOptionsT());
  13145. UnPackTo(_o.get(), _resolver);
  13146. return _o.release();
  13147. }
  13148. inline void DivOptions::UnPackTo(DivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13149. (void)_o;
  13150. (void)_resolver;
  13151. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  13152. }
  13153. inline flatbuffers::Offset<DivOptions> DivOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13154. return CreateDivOptions(_fbb, _o, _rehasher);
  13155. }
  13156. inline flatbuffers::Offset<DivOptions> CreateDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13157. (void)_rehasher;
  13158. (void)_o;
  13159. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DivOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13160. auto _fused_activation_function = _o->fused_activation_function;
  13161. return tflite::CreateDivOptions(
  13162. _fbb,
  13163. _fused_activation_function);
  13164. }
  13165. inline TopKV2OptionsT *TopKV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13166. auto _o = std::unique_ptr<TopKV2OptionsT>(new TopKV2OptionsT());
  13167. UnPackTo(_o.get(), _resolver);
  13168. return _o.release();
  13169. }
  13170. inline void TopKV2Options::UnPackTo(TopKV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13171. (void)_o;
  13172. (void)_resolver;
  13173. }
  13174. inline flatbuffers::Offset<TopKV2Options> TopKV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13175. return CreateTopKV2Options(_fbb, _o, _rehasher);
  13176. }
  13177. inline flatbuffers::Offset<TopKV2Options> CreateTopKV2Options(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13178. (void)_rehasher;
  13179. (void)_o;
  13180. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TopKV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13181. return tflite::CreateTopKV2Options(
  13182. _fbb);
  13183. }
  13184. inline EmbeddingLookupSparseOptionsT *EmbeddingLookupSparseOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13185. auto _o = std::unique_ptr<EmbeddingLookupSparseOptionsT>(new EmbeddingLookupSparseOptionsT());
  13186. UnPackTo(_o.get(), _resolver);
  13187. return _o.release();
  13188. }
  13189. inline void EmbeddingLookupSparseOptions::UnPackTo(EmbeddingLookupSparseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13190. (void)_o;
  13191. (void)_resolver;
  13192. { auto _e = combiner(); _o->combiner = _e; }
  13193. }
  13194. inline flatbuffers::Offset<EmbeddingLookupSparseOptions> EmbeddingLookupSparseOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13195. return CreateEmbeddingLookupSparseOptions(_fbb, _o, _rehasher);
  13196. }
  13197. inline flatbuffers::Offset<EmbeddingLookupSparseOptions> CreateEmbeddingLookupSparseOptions(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13198. (void)_rehasher;
  13199. (void)_o;
  13200. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const EmbeddingLookupSparseOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13201. auto _combiner = _o->combiner;
  13202. return tflite::CreateEmbeddingLookupSparseOptions(
  13203. _fbb,
  13204. _combiner);
  13205. }
  13206. inline GatherOptionsT *GatherOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13207. auto _o = std::unique_ptr<GatherOptionsT>(new GatherOptionsT());
  13208. UnPackTo(_o.get(), _resolver);
  13209. return _o.release();
  13210. }
  13211. inline void GatherOptions::UnPackTo(GatherOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13212. (void)_o;
  13213. (void)_resolver;
  13214. { auto _e = axis(); _o->axis = _e; }
  13215. { auto _e = batch_dims(); _o->batch_dims = _e; }
  13216. }
  13217. inline flatbuffers::Offset<GatherOptions> GatherOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13218. return CreateGatherOptions(_fbb, _o, _rehasher);
  13219. }
  13220. inline flatbuffers::Offset<GatherOptions> CreateGatherOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13221. (void)_rehasher;
  13222. (void)_o;
  13223. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GatherOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13224. auto _axis = _o->axis;
  13225. auto _batch_dims = _o->batch_dims;
  13226. return tflite::CreateGatherOptions(
  13227. _fbb,
  13228. _axis,
  13229. _batch_dims);
  13230. }
  13231. inline TransposeOptionsT *TransposeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13232. auto _o = std::unique_ptr<TransposeOptionsT>(new TransposeOptionsT());
  13233. UnPackTo(_o.get(), _resolver);
  13234. return _o.release();
  13235. }
  13236. inline void TransposeOptions::UnPackTo(TransposeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13237. (void)_o;
  13238. (void)_resolver;
  13239. }
  13240. inline flatbuffers::Offset<TransposeOptions> TransposeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13241. return CreateTransposeOptions(_fbb, _o, _rehasher);
  13242. }
  13243. inline flatbuffers::Offset<TransposeOptions> CreateTransposeOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13244. (void)_rehasher;
  13245. (void)_o;
  13246. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TransposeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13247. return tflite::CreateTransposeOptions(
  13248. _fbb);
  13249. }
  13250. inline ExpOptionsT *ExpOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13251. auto _o = std::unique_ptr<ExpOptionsT>(new ExpOptionsT());
  13252. UnPackTo(_o.get(), _resolver);
  13253. return _o.release();
  13254. }
  13255. inline void ExpOptions::UnPackTo(ExpOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13256. (void)_o;
  13257. (void)_resolver;
  13258. }
  13259. inline flatbuffers::Offset<ExpOptions> ExpOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13260. return CreateExpOptions(_fbb, _o, _rehasher);
  13261. }
  13262. inline flatbuffers::Offset<ExpOptions> CreateExpOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13263. (void)_rehasher;
  13264. (void)_o;
  13265. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ExpOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13266. return tflite::CreateExpOptions(
  13267. _fbb);
  13268. }
  13269. inline CosOptionsT *CosOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13270. auto _o = std::unique_ptr<CosOptionsT>(new CosOptionsT());
  13271. UnPackTo(_o.get(), _resolver);
  13272. return _o.release();
  13273. }
  13274. inline void CosOptions::UnPackTo(CosOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13275. (void)_o;
  13276. (void)_resolver;
  13277. }
  13278. inline flatbuffers::Offset<CosOptions> CosOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13279. return CreateCosOptions(_fbb, _o, _rehasher);
  13280. }
  13281. inline flatbuffers::Offset<CosOptions> CreateCosOptions(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13282. (void)_rehasher;
  13283. (void)_o;
  13284. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CosOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13285. return tflite::CreateCosOptions(
  13286. _fbb);
  13287. }
  13288. inline ReducerOptionsT *ReducerOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13289. auto _o = std::unique_ptr<ReducerOptionsT>(new ReducerOptionsT());
  13290. UnPackTo(_o.get(), _resolver);
  13291. return _o.release();
  13292. }
  13293. inline void ReducerOptions::UnPackTo(ReducerOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13294. (void)_o;
  13295. (void)_resolver;
  13296. { auto _e = keep_dims(); _o->keep_dims = _e; }
  13297. }
  13298. inline flatbuffers::Offset<ReducerOptions> ReducerOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13299. return CreateReducerOptions(_fbb, _o, _rehasher);
  13300. }
  13301. inline flatbuffers::Offset<ReducerOptions> CreateReducerOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13302. (void)_rehasher;
  13303. (void)_o;
  13304. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReducerOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13305. auto _keep_dims = _o->keep_dims;
  13306. return tflite::CreateReducerOptions(
  13307. _fbb,
  13308. _keep_dims);
  13309. }
  13310. inline SqueezeOptionsT *SqueezeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13311. auto _o = std::unique_ptr<SqueezeOptionsT>(new SqueezeOptionsT());
  13312. UnPackTo(_o.get(), _resolver);
  13313. return _o.release();
  13314. }
  13315. inline void SqueezeOptions::UnPackTo(SqueezeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13316. (void)_o;
  13317. (void)_resolver;
  13318. { auto _e = squeeze_dims(); if (_e) { _o->squeeze_dims.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->squeeze_dims[_i] = _e->Get(_i); } } }
  13319. }
  13320. inline flatbuffers::Offset<SqueezeOptions> SqueezeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13321. return CreateSqueezeOptions(_fbb, _o, _rehasher);
  13322. }
  13323. inline flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptions(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13324. (void)_rehasher;
  13325. (void)_o;
  13326. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SqueezeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13327. auto _squeeze_dims = _o->squeeze_dims.size() ? _fbb.CreateVector(_o->squeeze_dims) : 0;
  13328. return tflite::CreateSqueezeOptions(
  13329. _fbb,
  13330. _squeeze_dims);
  13331. }
  13332. inline SplitOptionsT *SplitOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13333. auto _o = std::unique_ptr<SplitOptionsT>(new SplitOptionsT());
  13334. UnPackTo(_o.get(), _resolver);
  13335. return _o.release();
  13336. }
  13337. inline void SplitOptions::UnPackTo(SplitOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13338. (void)_o;
  13339. (void)_resolver;
  13340. { auto _e = num_splits(); _o->num_splits = _e; }
  13341. }
  13342. inline flatbuffers::Offset<SplitOptions> SplitOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13343. return CreateSplitOptions(_fbb, _o, _rehasher);
  13344. }
  13345. inline flatbuffers::Offset<SplitOptions> CreateSplitOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13346. (void)_rehasher;
  13347. (void)_o;
  13348. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SplitOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13349. auto _num_splits = _o->num_splits;
  13350. return tflite::CreateSplitOptions(
  13351. _fbb,
  13352. _num_splits);
  13353. }
  13354. inline SplitVOptionsT *SplitVOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13355. auto _o = std::unique_ptr<SplitVOptionsT>(new SplitVOptionsT());
  13356. UnPackTo(_o.get(), _resolver);
  13357. return _o.release();
  13358. }
  13359. inline void SplitVOptions::UnPackTo(SplitVOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13360. (void)_o;
  13361. (void)_resolver;
  13362. { auto _e = num_splits(); _o->num_splits = _e; }
  13363. }
  13364. inline flatbuffers::Offset<SplitVOptions> SplitVOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13365. return CreateSplitVOptions(_fbb, _o, _rehasher);
  13366. }
  13367. inline flatbuffers::Offset<SplitVOptions> CreateSplitVOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13368. (void)_rehasher;
  13369. (void)_o;
  13370. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SplitVOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13371. auto _num_splits = _o->num_splits;
  13372. return tflite::CreateSplitVOptions(
  13373. _fbb,
  13374. _num_splits);
  13375. }
  13376. inline StridedSliceOptionsT *StridedSliceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13377. auto _o = std::unique_ptr<StridedSliceOptionsT>(new StridedSliceOptionsT());
  13378. UnPackTo(_o.get(), _resolver);
  13379. return _o.release();
  13380. }
  13381. inline void StridedSliceOptions::UnPackTo(StridedSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13382. (void)_o;
  13383. (void)_resolver;
  13384. { auto _e = begin_mask(); _o->begin_mask = _e; }
  13385. { auto _e = end_mask(); _o->end_mask = _e; }
  13386. { auto _e = ellipsis_mask(); _o->ellipsis_mask = _e; }
  13387. { auto _e = new_axis_mask(); _o->new_axis_mask = _e; }
  13388. { auto _e = shrink_axis_mask(); _o->shrink_axis_mask = _e; }
  13389. }
  13390. inline flatbuffers::Offset<StridedSliceOptions> StridedSliceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13391. return CreateStridedSliceOptions(_fbb, _o, _rehasher);
  13392. }
  13393. inline flatbuffers::Offset<StridedSliceOptions> CreateStridedSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13394. (void)_rehasher;
  13395. (void)_o;
  13396. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const StridedSliceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13397. auto _begin_mask = _o->begin_mask;
  13398. auto _end_mask = _o->end_mask;
  13399. auto _ellipsis_mask = _o->ellipsis_mask;
  13400. auto _new_axis_mask = _o->new_axis_mask;
  13401. auto _shrink_axis_mask = _o->shrink_axis_mask;
  13402. return tflite::CreateStridedSliceOptions(
  13403. _fbb,
  13404. _begin_mask,
  13405. _end_mask,
  13406. _ellipsis_mask,
  13407. _new_axis_mask,
  13408. _shrink_axis_mask);
  13409. }
  13410. inline LogSoftmaxOptionsT *LogSoftmaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13411. auto _o = std::unique_ptr<LogSoftmaxOptionsT>(new LogSoftmaxOptionsT());
  13412. UnPackTo(_o.get(), _resolver);
  13413. return _o.release();
  13414. }
  13415. inline void LogSoftmaxOptions::UnPackTo(LogSoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13416. (void)_o;
  13417. (void)_resolver;
  13418. }
  13419. inline flatbuffers::Offset<LogSoftmaxOptions> LogSoftmaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13420. return CreateLogSoftmaxOptions(_fbb, _o, _rehasher);
  13421. }
  13422. inline flatbuffers::Offset<LogSoftmaxOptions> CreateLogSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13423. (void)_rehasher;
  13424. (void)_o;
  13425. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogSoftmaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13426. return tflite::CreateLogSoftmaxOptions(
  13427. _fbb);
  13428. }
  13429. inline CastOptionsT *CastOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13430. auto _o = std::unique_ptr<CastOptionsT>(new CastOptionsT());
  13431. UnPackTo(_o.get(), _resolver);
  13432. return _o.release();
  13433. }
  13434. inline void CastOptions::UnPackTo(CastOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13435. (void)_o;
  13436. (void)_resolver;
  13437. { auto _e = in_data_type(); _o->in_data_type = _e; }
  13438. { auto _e = out_data_type(); _o->out_data_type = _e; }
  13439. }
  13440. inline flatbuffers::Offset<CastOptions> CastOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13441. return CreateCastOptions(_fbb, _o, _rehasher);
  13442. }
  13443. inline flatbuffers::Offset<CastOptions> CreateCastOptions(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13444. (void)_rehasher;
  13445. (void)_o;
  13446. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CastOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13447. auto _in_data_type = _o->in_data_type;
  13448. auto _out_data_type = _o->out_data_type;
  13449. return tflite::CreateCastOptions(
  13450. _fbb,
  13451. _in_data_type,
  13452. _out_data_type);
  13453. }
  13454. inline DequantizeOptionsT *DequantizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13455. auto _o = std::unique_ptr<DequantizeOptionsT>(new DequantizeOptionsT());
  13456. UnPackTo(_o.get(), _resolver);
  13457. return _o.release();
  13458. }
  13459. inline void DequantizeOptions::UnPackTo(DequantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13460. (void)_o;
  13461. (void)_resolver;
  13462. }
  13463. inline flatbuffers::Offset<DequantizeOptions> DequantizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13464. return CreateDequantizeOptions(_fbb, _o, _rehasher);
  13465. }
  13466. inline flatbuffers::Offset<DequantizeOptions> CreateDequantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13467. (void)_rehasher;
  13468. (void)_o;
  13469. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DequantizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13470. return tflite::CreateDequantizeOptions(
  13471. _fbb);
  13472. }
  13473. inline MaximumMinimumOptionsT *MaximumMinimumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13474. auto _o = std::unique_ptr<MaximumMinimumOptionsT>(new MaximumMinimumOptionsT());
  13475. UnPackTo(_o.get(), _resolver);
  13476. return _o.release();
  13477. }
  13478. inline void MaximumMinimumOptions::UnPackTo(MaximumMinimumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13479. (void)_o;
  13480. (void)_resolver;
  13481. }
  13482. inline flatbuffers::Offset<MaximumMinimumOptions> MaximumMinimumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13483. return CreateMaximumMinimumOptions(_fbb, _o, _rehasher);
  13484. }
  13485. inline flatbuffers::Offset<MaximumMinimumOptions> CreateMaximumMinimumOptions(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13486. (void)_rehasher;
  13487. (void)_o;
  13488. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MaximumMinimumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13489. return tflite::CreateMaximumMinimumOptions(
  13490. _fbb);
  13491. }
  13492. inline TileOptionsT *TileOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13493. auto _o = std::unique_ptr<TileOptionsT>(new TileOptionsT());
  13494. UnPackTo(_o.get(), _resolver);
  13495. return _o.release();
  13496. }
  13497. inline void TileOptions::UnPackTo(TileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13498. (void)_o;
  13499. (void)_resolver;
  13500. }
  13501. inline flatbuffers::Offset<TileOptions> TileOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13502. return CreateTileOptions(_fbb, _o, _rehasher);
  13503. }
  13504. inline flatbuffers::Offset<TileOptions> CreateTileOptions(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13505. (void)_rehasher;
  13506. (void)_o;
  13507. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TileOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13508. return tflite::CreateTileOptions(
  13509. _fbb);
  13510. }
  13511. inline ArgMaxOptionsT *ArgMaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13512. auto _o = std::unique_ptr<ArgMaxOptionsT>(new ArgMaxOptionsT());
  13513. UnPackTo(_o.get(), _resolver);
  13514. return _o.release();
  13515. }
  13516. inline void ArgMaxOptions::UnPackTo(ArgMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13517. (void)_o;
  13518. (void)_resolver;
  13519. { auto _e = output_type(); _o->output_type = _e; }
  13520. }
  13521. inline flatbuffers::Offset<ArgMaxOptions> ArgMaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13522. return CreateArgMaxOptions(_fbb, _o, _rehasher);
  13523. }
  13524. inline flatbuffers::Offset<ArgMaxOptions> CreateArgMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13525. (void)_rehasher;
  13526. (void)_o;
  13527. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ArgMaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13528. auto _output_type = _o->output_type;
  13529. return tflite::CreateArgMaxOptions(
  13530. _fbb,
  13531. _output_type);
  13532. }
  13533. inline ArgMinOptionsT *ArgMinOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13534. auto _o = std::unique_ptr<ArgMinOptionsT>(new ArgMinOptionsT());
  13535. UnPackTo(_o.get(), _resolver);
  13536. return _o.release();
  13537. }
  13538. inline void ArgMinOptions::UnPackTo(ArgMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13539. (void)_o;
  13540. (void)_resolver;
  13541. { auto _e = output_type(); _o->output_type = _e; }
  13542. }
  13543. inline flatbuffers::Offset<ArgMinOptions> ArgMinOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13544. return CreateArgMinOptions(_fbb, _o, _rehasher);
  13545. }
  13546. inline flatbuffers::Offset<ArgMinOptions> CreateArgMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13547. (void)_rehasher;
  13548. (void)_o;
  13549. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ArgMinOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13550. auto _output_type = _o->output_type;
  13551. return tflite::CreateArgMinOptions(
  13552. _fbb,
  13553. _output_type);
  13554. }
  13555. inline GreaterOptionsT *GreaterOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13556. auto _o = std::unique_ptr<GreaterOptionsT>(new GreaterOptionsT());
  13557. UnPackTo(_o.get(), _resolver);
  13558. return _o.release();
  13559. }
  13560. inline void GreaterOptions::UnPackTo(GreaterOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13561. (void)_o;
  13562. (void)_resolver;
  13563. }
  13564. inline flatbuffers::Offset<GreaterOptions> GreaterOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13565. return CreateGreaterOptions(_fbb, _o, _rehasher);
  13566. }
  13567. inline flatbuffers::Offset<GreaterOptions> CreateGreaterOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13568. (void)_rehasher;
  13569. (void)_o;
  13570. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GreaterOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13571. return tflite::CreateGreaterOptions(
  13572. _fbb);
  13573. }
  13574. inline GreaterEqualOptionsT *GreaterEqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13575. auto _o = std::unique_ptr<GreaterEqualOptionsT>(new GreaterEqualOptionsT());
  13576. UnPackTo(_o.get(), _resolver);
  13577. return _o.release();
  13578. }
  13579. inline void GreaterEqualOptions::UnPackTo(GreaterEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13580. (void)_o;
  13581. (void)_resolver;
  13582. }
  13583. inline flatbuffers::Offset<GreaterEqualOptions> GreaterEqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13584. return CreateGreaterEqualOptions(_fbb, _o, _rehasher);
  13585. }
  13586. inline flatbuffers::Offset<GreaterEqualOptions> CreateGreaterEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13587. (void)_rehasher;
  13588. (void)_o;
  13589. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GreaterEqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13590. return tflite::CreateGreaterEqualOptions(
  13591. _fbb);
  13592. }
  13593. inline LessOptionsT *LessOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13594. auto _o = std::unique_ptr<LessOptionsT>(new LessOptionsT());
  13595. UnPackTo(_o.get(), _resolver);
  13596. return _o.release();
  13597. }
  13598. inline void LessOptions::UnPackTo(LessOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13599. (void)_o;
  13600. (void)_resolver;
  13601. }
  13602. inline flatbuffers::Offset<LessOptions> LessOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13603. return CreateLessOptions(_fbb, _o, _rehasher);
  13604. }
  13605. inline flatbuffers::Offset<LessOptions> CreateLessOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13606. (void)_rehasher;
  13607. (void)_o;
  13608. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LessOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13609. return tflite::CreateLessOptions(
  13610. _fbb);
  13611. }
  13612. inline LessEqualOptionsT *LessEqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13613. auto _o = std::unique_ptr<LessEqualOptionsT>(new LessEqualOptionsT());
  13614. UnPackTo(_o.get(), _resolver);
  13615. return _o.release();
  13616. }
  13617. inline void LessEqualOptions::UnPackTo(LessEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13618. (void)_o;
  13619. (void)_resolver;
  13620. }
  13621. inline flatbuffers::Offset<LessEqualOptions> LessEqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13622. return CreateLessEqualOptions(_fbb, _o, _rehasher);
  13623. }
  13624. inline flatbuffers::Offset<LessEqualOptions> CreateLessEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13625. (void)_rehasher;
  13626. (void)_o;
  13627. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LessEqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13628. return tflite::CreateLessEqualOptions(
  13629. _fbb);
  13630. }
  13631. inline NegOptionsT *NegOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13632. auto _o = std::unique_ptr<NegOptionsT>(new NegOptionsT());
  13633. UnPackTo(_o.get(), _resolver);
  13634. return _o.release();
  13635. }
  13636. inline void NegOptions::UnPackTo(NegOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13637. (void)_o;
  13638. (void)_resolver;
  13639. }
  13640. inline flatbuffers::Offset<NegOptions> NegOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13641. return CreateNegOptions(_fbb, _o, _rehasher);
  13642. }
  13643. inline flatbuffers::Offset<NegOptions> CreateNegOptions(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13644. (void)_rehasher;
  13645. (void)_o;
  13646. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NegOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13647. return tflite::CreateNegOptions(
  13648. _fbb);
  13649. }
  13650. inline SelectOptionsT *SelectOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13651. auto _o = std::unique_ptr<SelectOptionsT>(new SelectOptionsT());
  13652. UnPackTo(_o.get(), _resolver);
  13653. return _o.release();
  13654. }
  13655. inline void SelectOptions::UnPackTo(SelectOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13656. (void)_o;
  13657. (void)_resolver;
  13658. }
  13659. inline flatbuffers::Offset<SelectOptions> SelectOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13660. return CreateSelectOptions(_fbb, _o, _rehasher);
  13661. }
  13662. inline flatbuffers::Offset<SelectOptions> CreateSelectOptions(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13663. (void)_rehasher;
  13664. (void)_o;
  13665. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SelectOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13666. return tflite::CreateSelectOptions(
  13667. _fbb);
  13668. }
  13669. inline SliceOptionsT *SliceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13670. auto _o = std::unique_ptr<SliceOptionsT>(new SliceOptionsT());
  13671. UnPackTo(_o.get(), _resolver);
  13672. return _o.release();
  13673. }
  13674. inline void SliceOptions::UnPackTo(SliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13675. (void)_o;
  13676. (void)_resolver;
  13677. }
  13678. inline flatbuffers::Offset<SliceOptions> SliceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13679. return CreateSliceOptions(_fbb, _o, _rehasher);
  13680. }
  13681. inline flatbuffers::Offset<SliceOptions> CreateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13682. (void)_rehasher;
  13683. (void)_o;
  13684. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SliceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13685. return tflite::CreateSliceOptions(
  13686. _fbb);
  13687. }
  13688. inline TransposeConvOptionsT *TransposeConvOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13689. auto _o = std::unique_ptr<TransposeConvOptionsT>(new TransposeConvOptionsT());
  13690. UnPackTo(_o.get(), _resolver);
  13691. return _o.release();
  13692. }
  13693. inline void TransposeConvOptions::UnPackTo(TransposeConvOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13694. (void)_o;
  13695. (void)_resolver;
  13696. { auto _e = padding(); _o->padding = _e; }
  13697. { auto _e = stride_w(); _o->stride_w = _e; }
  13698. { auto _e = stride_h(); _o->stride_h = _e; }
  13699. }
  13700. inline flatbuffers::Offset<TransposeConvOptions> TransposeConvOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13701. return CreateTransposeConvOptions(_fbb, _o, _rehasher);
  13702. }
  13703. inline flatbuffers::Offset<TransposeConvOptions> CreateTransposeConvOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13704. (void)_rehasher;
  13705. (void)_o;
  13706. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TransposeConvOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13707. auto _padding = _o->padding;
  13708. auto _stride_w = _o->stride_w;
  13709. auto _stride_h = _o->stride_h;
  13710. return tflite::CreateTransposeConvOptions(
  13711. _fbb,
  13712. _padding,
  13713. _stride_w,
  13714. _stride_h);
  13715. }
  13716. inline ExpandDimsOptionsT *ExpandDimsOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13717. auto _o = std::unique_ptr<ExpandDimsOptionsT>(new ExpandDimsOptionsT());
  13718. UnPackTo(_o.get(), _resolver);
  13719. return _o.release();
  13720. }
  13721. inline void ExpandDimsOptions::UnPackTo(ExpandDimsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13722. (void)_o;
  13723. (void)_resolver;
  13724. }
  13725. inline flatbuffers::Offset<ExpandDimsOptions> ExpandDimsOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13726. return CreateExpandDimsOptions(_fbb, _o, _rehasher);
  13727. }
  13728. inline flatbuffers::Offset<ExpandDimsOptions> CreateExpandDimsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13729. (void)_rehasher;
  13730. (void)_o;
  13731. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ExpandDimsOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13732. return tflite::CreateExpandDimsOptions(
  13733. _fbb);
  13734. }
  13735. inline SparseToDenseOptionsT *SparseToDenseOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13736. auto _o = std::unique_ptr<SparseToDenseOptionsT>(new SparseToDenseOptionsT());
  13737. UnPackTo(_o.get(), _resolver);
  13738. return _o.release();
  13739. }
  13740. inline void SparseToDenseOptions::UnPackTo(SparseToDenseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13741. (void)_o;
  13742. (void)_resolver;
  13743. { auto _e = validate_indices(); _o->validate_indices = _e; }
  13744. }
  13745. inline flatbuffers::Offset<SparseToDenseOptions> SparseToDenseOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13746. return CreateSparseToDenseOptions(_fbb, _o, _rehasher);
  13747. }
  13748. inline flatbuffers::Offset<SparseToDenseOptions> CreateSparseToDenseOptions(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13749. (void)_rehasher;
  13750. (void)_o;
  13751. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SparseToDenseOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13752. auto _validate_indices = _o->validate_indices;
  13753. return tflite::CreateSparseToDenseOptions(
  13754. _fbb,
  13755. _validate_indices);
  13756. }
  13757. inline EqualOptionsT *EqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13758. auto _o = std::unique_ptr<EqualOptionsT>(new EqualOptionsT());
  13759. UnPackTo(_o.get(), _resolver);
  13760. return _o.release();
  13761. }
  13762. inline void EqualOptions::UnPackTo(EqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13763. (void)_o;
  13764. (void)_resolver;
  13765. }
  13766. inline flatbuffers::Offset<EqualOptions> EqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13767. return CreateEqualOptions(_fbb, _o, _rehasher);
  13768. }
  13769. inline flatbuffers::Offset<EqualOptions> CreateEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13770. (void)_rehasher;
  13771. (void)_o;
  13772. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const EqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13773. return tflite::CreateEqualOptions(
  13774. _fbb);
  13775. }
  13776. inline NotEqualOptionsT *NotEqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13777. auto _o = std::unique_ptr<NotEqualOptionsT>(new NotEqualOptionsT());
  13778. UnPackTo(_o.get(), _resolver);
  13779. return _o.release();
  13780. }
  13781. inline void NotEqualOptions::UnPackTo(NotEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13782. (void)_o;
  13783. (void)_resolver;
  13784. }
  13785. inline flatbuffers::Offset<NotEqualOptions> NotEqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13786. return CreateNotEqualOptions(_fbb, _o, _rehasher);
  13787. }
  13788. inline flatbuffers::Offset<NotEqualOptions> CreateNotEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13789. (void)_rehasher;
  13790. (void)_o;
  13791. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NotEqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13792. return tflite::CreateNotEqualOptions(
  13793. _fbb);
  13794. }
  13795. inline ShapeOptionsT *ShapeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13796. auto _o = std::unique_ptr<ShapeOptionsT>(new ShapeOptionsT());
  13797. UnPackTo(_o.get(), _resolver);
  13798. return _o.release();
  13799. }
  13800. inline void ShapeOptions::UnPackTo(ShapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13801. (void)_o;
  13802. (void)_resolver;
  13803. { auto _e = out_type(); _o->out_type = _e; }
  13804. }
  13805. inline flatbuffers::Offset<ShapeOptions> ShapeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13806. return CreateShapeOptions(_fbb, _o, _rehasher);
  13807. }
  13808. inline flatbuffers::Offset<ShapeOptions> CreateShapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13809. (void)_rehasher;
  13810. (void)_o;
  13811. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ShapeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13812. auto _out_type = _o->out_type;
  13813. return tflite::CreateShapeOptions(
  13814. _fbb,
  13815. _out_type);
  13816. }
  13817. inline RankOptionsT *RankOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13818. auto _o = std::unique_ptr<RankOptionsT>(new RankOptionsT());
  13819. UnPackTo(_o.get(), _resolver);
  13820. return _o.release();
  13821. }
  13822. inline void RankOptions::UnPackTo(RankOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13823. (void)_o;
  13824. (void)_resolver;
  13825. }
  13826. inline flatbuffers::Offset<RankOptions> RankOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13827. return CreateRankOptions(_fbb, _o, _rehasher);
  13828. }
  13829. inline flatbuffers::Offset<RankOptions> CreateRankOptions(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13830. (void)_rehasher;
  13831. (void)_o;
  13832. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RankOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13833. return tflite::CreateRankOptions(
  13834. _fbb);
  13835. }
  13836. inline PowOptionsT *PowOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13837. auto _o = std::unique_ptr<PowOptionsT>(new PowOptionsT());
  13838. UnPackTo(_o.get(), _resolver);
  13839. return _o.release();
  13840. }
  13841. inline void PowOptions::UnPackTo(PowOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13842. (void)_o;
  13843. (void)_resolver;
  13844. }
  13845. inline flatbuffers::Offset<PowOptions> PowOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13846. return CreatePowOptions(_fbb, _o, _rehasher);
  13847. }
  13848. inline flatbuffers::Offset<PowOptions> CreatePowOptions(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13849. (void)_rehasher;
  13850. (void)_o;
  13851. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PowOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13852. return tflite::CreatePowOptions(
  13853. _fbb);
  13854. }
  13855. inline FakeQuantOptionsT *FakeQuantOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13856. auto _o = std::unique_ptr<FakeQuantOptionsT>(new FakeQuantOptionsT());
  13857. UnPackTo(_o.get(), _resolver);
  13858. return _o.release();
  13859. }
  13860. inline void FakeQuantOptions::UnPackTo(FakeQuantOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13861. (void)_o;
  13862. (void)_resolver;
  13863. { auto _e = min(); _o->min = _e; }
  13864. { auto _e = max(); _o->max = _e; }
  13865. { auto _e = num_bits(); _o->num_bits = _e; }
  13866. { auto _e = narrow_range(); _o->narrow_range = _e; }
  13867. }
  13868. inline flatbuffers::Offset<FakeQuantOptions> FakeQuantOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13869. return CreateFakeQuantOptions(_fbb, _o, _rehasher);
  13870. }
  13871. inline flatbuffers::Offset<FakeQuantOptions> CreateFakeQuantOptions(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13872. (void)_rehasher;
  13873. (void)_o;
  13874. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FakeQuantOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13875. auto _min = _o->min;
  13876. auto _max = _o->max;
  13877. auto _num_bits = _o->num_bits;
  13878. auto _narrow_range = _o->narrow_range;
  13879. return tflite::CreateFakeQuantOptions(
  13880. _fbb,
  13881. _min,
  13882. _max,
  13883. _num_bits,
  13884. _narrow_range);
  13885. }
  13886. inline PackOptionsT *PackOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13887. auto _o = std::unique_ptr<PackOptionsT>(new PackOptionsT());
  13888. UnPackTo(_o.get(), _resolver);
  13889. return _o.release();
  13890. }
  13891. inline void PackOptions::UnPackTo(PackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13892. (void)_o;
  13893. (void)_resolver;
  13894. { auto _e = values_count(); _o->values_count = _e; }
  13895. { auto _e = axis(); _o->axis = _e; }
  13896. }
  13897. inline flatbuffers::Offset<PackOptions> PackOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13898. return CreatePackOptions(_fbb, _o, _rehasher);
  13899. }
  13900. inline flatbuffers::Offset<PackOptions> CreatePackOptions(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13901. (void)_rehasher;
  13902. (void)_o;
  13903. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PackOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13904. auto _values_count = _o->values_count;
  13905. auto _axis = _o->axis;
  13906. return tflite::CreatePackOptions(
  13907. _fbb,
  13908. _values_count,
  13909. _axis);
  13910. }
  13911. inline LogicalOrOptionsT *LogicalOrOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13912. auto _o = std::unique_ptr<LogicalOrOptionsT>(new LogicalOrOptionsT());
  13913. UnPackTo(_o.get(), _resolver);
  13914. return _o.release();
  13915. }
  13916. inline void LogicalOrOptions::UnPackTo(LogicalOrOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13917. (void)_o;
  13918. (void)_resolver;
  13919. }
  13920. inline flatbuffers::Offset<LogicalOrOptions> LogicalOrOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13921. return CreateLogicalOrOptions(_fbb, _o, _rehasher);
  13922. }
  13923. inline flatbuffers::Offset<LogicalOrOptions> CreateLogicalOrOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13924. (void)_rehasher;
  13925. (void)_o;
  13926. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogicalOrOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13927. return tflite::CreateLogicalOrOptions(
  13928. _fbb);
  13929. }
  13930. inline OneHotOptionsT *OneHotOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13931. auto _o = std::unique_ptr<OneHotOptionsT>(new OneHotOptionsT());
  13932. UnPackTo(_o.get(), _resolver);
  13933. return _o.release();
  13934. }
  13935. inline void OneHotOptions::UnPackTo(OneHotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13936. (void)_o;
  13937. (void)_resolver;
  13938. { auto _e = axis(); _o->axis = _e; }
  13939. }
  13940. inline flatbuffers::Offset<OneHotOptions> OneHotOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13941. return CreateOneHotOptions(_fbb, _o, _rehasher);
  13942. }
  13943. inline flatbuffers::Offset<OneHotOptions> CreateOneHotOptions(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13944. (void)_rehasher;
  13945. (void)_o;
  13946. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const OneHotOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13947. auto _axis = _o->axis;
  13948. return tflite::CreateOneHotOptions(
  13949. _fbb,
  13950. _axis);
  13951. }
  13952. inline AbsOptionsT *AbsOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13953. auto _o = std::unique_ptr<AbsOptionsT>(new AbsOptionsT());
  13954. UnPackTo(_o.get(), _resolver);
  13955. return _o.release();
  13956. }
  13957. inline void AbsOptions::UnPackTo(AbsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13958. (void)_o;
  13959. (void)_resolver;
  13960. }
  13961. inline flatbuffers::Offset<AbsOptions> AbsOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13962. return CreateAbsOptions(_fbb, _o, _rehasher);
  13963. }
  13964. inline flatbuffers::Offset<AbsOptions> CreateAbsOptions(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13965. (void)_rehasher;
  13966. (void)_o;
  13967. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AbsOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13968. return tflite::CreateAbsOptions(
  13969. _fbb);
  13970. }
  13971. inline HardSwishOptionsT *HardSwishOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13972. auto _o = std::unique_ptr<HardSwishOptionsT>(new HardSwishOptionsT());
  13973. UnPackTo(_o.get(), _resolver);
  13974. return _o.release();
  13975. }
  13976. inline void HardSwishOptions::UnPackTo(HardSwishOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13977. (void)_o;
  13978. (void)_resolver;
  13979. }
  13980. inline flatbuffers::Offset<HardSwishOptions> HardSwishOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13981. return CreateHardSwishOptions(_fbb, _o, _rehasher);
  13982. }
  13983. inline flatbuffers::Offset<HardSwishOptions> CreateHardSwishOptions(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13984. (void)_rehasher;
  13985. (void)_o;
  13986. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HardSwishOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13987. return tflite::CreateHardSwishOptions(
  13988. _fbb);
  13989. }
  13990. inline LogicalAndOptionsT *LogicalAndOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13991. auto _o = std::unique_ptr<LogicalAndOptionsT>(new LogicalAndOptionsT());
  13992. UnPackTo(_o.get(), _resolver);
  13993. return _o.release();
  13994. }
  13995. inline void LogicalAndOptions::UnPackTo(LogicalAndOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13996. (void)_o;
  13997. (void)_resolver;
  13998. }
  13999. inline flatbuffers::Offset<LogicalAndOptions> LogicalAndOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14000. return CreateLogicalAndOptions(_fbb, _o, _rehasher);
  14001. }
  14002. inline flatbuffers::Offset<LogicalAndOptions> CreateLogicalAndOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14003. (void)_rehasher;
  14004. (void)_o;
  14005. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogicalAndOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14006. return tflite::CreateLogicalAndOptions(
  14007. _fbb);
  14008. }
  14009. inline LogicalNotOptionsT *LogicalNotOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14010. auto _o = std::unique_ptr<LogicalNotOptionsT>(new LogicalNotOptionsT());
  14011. UnPackTo(_o.get(), _resolver);
  14012. return _o.release();
  14013. }
  14014. inline void LogicalNotOptions::UnPackTo(LogicalNotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14015. (void)_o;
  14016. (void)_resolver;
  14017. }
  14018. inline flatbuffers::Offset<LogicalNotOptions> LogicalNotOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14019. return CreateLogicalNotOptions(_fbb, _o, _rehasher);
  14020. }
  14021. inline flatbuffers::Offset<LogicalNotOptions> CreateLogicalNotOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14022. (void)_rehasher;
  14023. (void)_o;
  14024. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogicalNotOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14025. return tflite::CreateLogicalNotOptions(
  14026. _fbb);
  14027. }
  14028. inline UnpackOptionsT *UnpackOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14029. auto _o = std::unique_ptr<UnpackOptionsT>(new UnpackOptionsT());
  14030. UnPackTo(_o.get(), _resolver);
  14031. return _o.release();
  14032. }
  14033. inline void UnpackOptions::UnPackTo(UnpackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14034. (void)_o;
  14035. (void)_resolver;
  14036. { auto _e = num(); _o->num = _e; }
  14037. { auto _e = axis(); _o->axis = _e; }
  14038. }
  14039. inline flatbuffers::Offset<UnpackOptions> UnpackOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14040. return CreateUnpackOptions(_fbb, _o, _rehasher);
  14041. }
  14042. inline flatbuffers::Offset<UnpackOptions> CreateUnpackOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14043. (void)_rehasher;
  14044. (void)_o;
  14045. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnpackOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14046. auto _num = _o->num;
  14047. auto _axis = _o->axis;
  14048. return tflite::CreateUnpackOptions(
  14049. _fbb,
  14050. _num,
  14051. _axis);
  14052. }
  14053. inline FloorDivOptionsT *FloorDivOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14054. auto _o = std::unique_ptr<FloorDivOptionsT>(new FloorDivOptionsT());
  14055. UnPackTo(_o.get(), _resolver);
  14056. return _o.release();
  14057. }
  14058. inline void FloorDivOptions::UnPackTo(FloorDivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14059. (void)_o;
  14060. (void)_resolver;
  14061. }
  14062. inline flatbuffers::Offset<FloorDivOptions> FloorDivOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14063. return CreateFloorDivOptions(_fbb, _o, _rehasher);
  14064. }
  14065. inline flatbuffers::Offset<FloorDivOptions> CreateFloorDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14066. (void)_rehasher;
  14067. (void)_o;
  14068. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FloorDivOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14069. return tflite::CreateFloorDivOptions(
  14070. _fbb);
  14071. }
  14072. inline SquareOptionsT *SquareOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14073. auto _o = std::unique_ptr<SquareOptionsT>(new SquareOptionsT());
  14074. UnPackTo(_o.get(), _resolver);
  14075. return _o.release();
  14076. }
  14077. inline void SquareOptions::UnPackTo(SquareOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14078. (void)_o;
  14079. (void)_resolver;
  14080. }
  14081. inline flatbuffers::Offset<SquareOptions> SquareOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14082. return CreateSquareOptions(_fbb, _o, _rehasher);
  14083. }
  14084. inline flatbuffers::Offset<SquareOptions> CreateSquareOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14085. (void)_rehasher;
  14086. (void)_o;
  14087. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SquareOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14088. return tflite::CreateSquareOptions(
  14089. _fbb);
  14090. }
  14091. inline ZerosLikeOptionsT *ZerosLikeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14092. auto _o = std::unique_ptr<ZerosLikeOptionsT>(new ZerosLikeOptionsT());
  14093. UnPackTo(_o.get(), _resolver);
  14094. return _o.release();
  14095. }
  14096. inline void ZerosLikeOptions::UnPackTo(ZerosLikeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14097. (void)_o;
  14098. (void)_resolver;
  14099. }
  14100. inline flatbuffers::Offset<ZerosLikeOptions> ZerosLikeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14101. return CreateZerosLikeOptions(_fbb, _o, _rehasher);
  14102. }
  14103. inline flatbuffers::Offset<ZerosLikeOptions> CreateZerosLikeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14104. (void)_rehasher;
  14105. (void)_o;
  14106. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ZerosLikeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14107. return tflite::CreateZerosLikeOptions(
  14108. _fbb);
  14109. }
  14110. inline FillOptionsT *FillOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14111. auto _o = std::unique_ptr<FillOptionsT>(new FillOptionsT());
  14112. UnPackTo(_o.get(), _resolver);
  14113. return _o.release();
  14114. }
  14115. inline void FillOptions::UnPackTo(FillOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14116. (void)_o;
  14117. (void)_resolver;
  14118. }
  14119. inline flatbuffers::Offset<FillOptions> FillOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14120. return CreateFillOptions(_fbb, _o, _rehasher);
  14121. }
  14122. inline flatbuffers::Offset<FillOptions> CreateFillOptions(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14123. (void)_rehasher;
  14124. (void)_o;
  14125. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FillOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14126. return tflite::CreateFillOptions(
  14127. _fbb);
  14128. }
  14129. inline FloorModOptionsT *FloorModOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14130. auto _o = std::unique_ptr<FloorModOptionsT>(new FloorModOptionsT());
  14131. UnPackTo(_o.get(), _resolver);
  14132. return _o.release();
  14133. }
  14134. inline void FloorModOptions::UnPackTo(FloorModOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14135. (void)_o;
  14136. (void)_resolver;
  14137. }
  14138. inline flatbuffers::Offset<FloorModOptions> FloorModOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14139. return CreateFloorModOptions(_fbb, _o, _rehasher);
  14140. }
  14141. inline flatbuffers::Offset<FloorModOptions> CreateFloorModOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14142. (void)_rehasher;
  14143. (void)_o;
  14144. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FloorModOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14145. return tflite::CreateFloorModOptions(
  14146. _fbb);
  14147. }
  14148. inline RangeOptionsT *RangeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14149. auto _o = std::unique_ptr<RangeOptionsT>(new RangeOptionsT());
  14150. UnPackTo(_o.get(), _resolver);
  14151. return _o.release();
  14152. }
  14153. inline void RangeOptions::UnPackTo(RangeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14154. (void)_o;
  14155. (void)_resolver;
  14156. }
  14157. inline flatbuffers::Offset<RangeOptions> RangeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14158. return CreateRangeOptions(_fbb, _o, _rehasher);
  14159. }
  14160. inline flatbuffers::Offset<RangeOptions> CreateRangeOptions(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14161. (void)_rehasher;
  14162. (void)_o;
  14163. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RangeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14164. return tflite::CreateRangeOptions(
  14165. _fbb);
  14166. }
  14167. inline LeakyReluOptionsT *LeakyReluOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14168. auto _o = std::unique_ptr<LeakyReluOptionsT>(new LeakyReluOptionsT());
  14169. UnPackTo(_o.get(), _resolver);
  14170. return _o.release();
  14171. }
  14172. inline void LeakyReluOptions::UnPackTo(LeakyReluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14173. (void)_o;
  14174. (void)_resolver;
  14175. { auto _e = alpha(); _o->alpha = _e; }
  14176. }
  14177. inline flatbuffers::Offset<LeakyReluOptions> LeakyReluOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14178. return CreateLeakyReluOptions(_fbb, _o, _rehasher);
  14179. }
  14180. inline flatbuffers::Offset<LeakyReluOptions> CreateLeakyReluOptions(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14181. (void)_rehasher;
  14182. (void)_o;
  14183. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LeakyReluOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14184. auto _alpha = _o->alpha;
  14185. return tflite::CreateLeakyReluOptions(
  14186. _fbb,
  14187. _alpha);
  14188. }
  14189. inline SquaredDifferenceOptionsT *SquaredDifferenceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14190. auto _o = std::unique_ptr<SquaredDifferenceOptionsT>(new SquaredDifferenceOptionsT());
  14191. UnPackTo(_o.get(), _resolver);
  14192. return _o.release();
  14193. }
  14194. inline void SquaredDifferenceOptions::UnPackTo(SquaredDifferenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14195. (void)_o;
  14196. (void)_resolver;
  14197. }
  14198. inline flatbuffers::Offset<SquaredDifferenceOptions> SquaredDifferenceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14199. return CreateSquaredDifferenceOptions(_fbb, _o, _rehasher);
  14200. }
  14201. inline flatbuffers::Offset<SquaredDifferenceOptions> CreateSquaredDifferenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14202. (void)_rehasher;
  14203. (void)_o;
  14204. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SquaredDifferenceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14205. return tflite::CreateSquaredDifferenceOptions(
  14206. _fbb);
  14207. }
  14208. inline MirrorPadOptionsT *MirrorPadOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14209. auto _o = std::unique_ptr<MirrorPadOptionsT>(new MirrorPadOptionsT());
  14210. UnPackTo(_o.get(), _resolver);
  14211. return _o.release();
  14212. }
  14213. inline void MirrorPadOptions::UnPackTo(MirrorPadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14214. (void)_o;
  14215. (void)_resolver;
  14216. { auto _e = mode(); _o->mode = _e; }
  14217. }
  14218. inline flatbuffers::Offset<MirrorPadOptions> MirrorPadOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14219. return CreateMirrorPadOptions(_fbb, _o, _rehasher);
  14220. }
  14221. inline flatbuffers::Offset<MirrorPadOptions> CreateMirrorPadOptions(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14222. (void)_rehasher;
  14223. (void)_o;
  14224. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MirrorPadOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14225. auto _mode = _o->mode;
  14226. return tflite::CreateMirrorPadOptions(
  14227. _fbb,
  14228. _mode);
  14229. }
  14230. inline UniqueOptionsT *UniqueOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14231. auto _o = std::unique_ptr<UniqueOptionsT>(new UniqueOptionsT());
  14232. UnPackTo(_o.get(), _resolver);
  14233. return _o.release();
  14234. }
  14235. inline void UniqueOptions::UnPackTo(UniqueOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14236. (void)_o;
  14237. (void)_resolver;
  14238. { auto _e = idx_out_type(); _o->idx_out_type = _e; }
  14239. }
  14240. inline flatbuffers::Offset<UniqueOptions> UniqueOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14241. return CreateUniqueOptions(_fbb, _o, _rehasher);
  14242. }
  14243. inline flatbuffers::Offset<UniqueOptions> CreateUniqueOptions(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14244. (void)_rehasher;
  14245. (void)_o;
  14246. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UniqueOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14247. auto _idx_out_type = _o->idx_out_type;
  14248. return tflite::CreateUniqueOptions(
  14249. _fbb,
  14250. _idx_out_type);
  14251. }
  14252. inline ReverseV2OptionsT *ReverseV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14253. auto _o = std::unique_ptr<ReverseV2OptionsT>(new ReverseV2OptionsT());
  14254. UnPackTo(_o.get(), _resolver);
  14255. return _o.release();
  14256. }
  14257. inline void ReverseV2Options::UnPackTo(ReverseV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14258. (void)_o;
  14259. (void)_resolver;
  14260. }
  14261. inline flatbuffers::Offset<ReverseV2Options> ReverseV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14262. return CreateReverseV2Options(_fbb, _o, _rehasher);
  14263. }
  14264. inline flatbuffers::Offset<ReverseV2Options> CreateReverseV2Options(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14265. (void)_rehasher;
  14266. (void)_o;
  14267. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReverseV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14268. return tflite::CreateReverseV2Options(
  14269. _fbb);
  14270. }
  14271. inline AddNOptionsT *AddNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14272. auto _o = std::unique_ptr<AddNOptionsT>(new AddNOptionsT());
  14273. UnPackTo(_o.get(), _resolver);
  14274. return _o.release();
  14275. }
  14276. inline void AddNOptions::UnPackTo(AddNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14277. (void)_o;
  14278. (void)_resolver;
  14279. }
  14280. inline flatbuffers::Offset<AddNOptions> AddNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14281. return CreateAddNOptions(_fbb, _o, _rehasher);
  14282. }
  14283. inline flatbuffers::Offset<AddNOptions> CreateAddNOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14284. (void)_rehasher;
  14285. (void)_o;
  14286. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AddNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14287. return tflite::CreateAddNOptions(
  14288. _fbb);
  14289. }
  14290. inline GatherNdOptionsT *GatherNdOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14291. auto _o = std::unique_ptr<GatherNdOptionsT>(new GatherNdOptionsT());
  14292. UnPackTo(_o.get(), _resolver);
  14293. return _o.release();
  14294. }
  14295. inline void GatherNdOptions::UnPackTo(GatherNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14296. (void)_o;
  14297. (void)_resolver;
  14298. }
  14299. inline flatbuffers::Offset<GatherNdOptions> GatherNdOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14300. return CreateGatherNdOptions(_fbb, _o, _rehasher);
  14301. }
  14302. inline flatbuffers::Offset<GatherNdOptions> CreateGatherNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14303. (void)_rehasher;
  14304. (void)_o;
  14305. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GatherNdOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14306. return tflite::CreateGatherNdOptions(
  14307. _fbb);
  14308. }
  14309. inline WhereOptionsT *WhereOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14310. auto _o = std::unique_ptr<WhereOptionsT>(new WhereOptionsT());
  14311. UnPackTo(_o.get(), _resolver);
  14312. return _o.release();
  14313. }
  14314. inline void WhereOptions::UnPackTo(WhereOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14315. (void)_o;
  14316. (void)_resolver;
  14317. }
  14318. inline flatbuffers::Offset<WhereOptions> WhereOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14319. return CreateWhereOptions(_fbb, _o, _rehasher);
  14320. }
  14321. inline flatbuffers::Offset<WhereOptions> CreateWhereOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14322. (void)_rehasher;
  14323. (void)_o;
  14324. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const WhereOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14325. return tflite::CreateWhereOptions(
  14326. _fbb);
  14327. }
  14328. inline ReverseSequenceOptionsT *ReverseSequenceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14329. auto _o = std::unique_ptr<ReverseSequenceOptionsT>(new ReverseSequenceOptionsT());
  14330. UnPackTo(_o.get(), _resolver);
  14331. return _o.release();
  14332. }
  14333. inline void ReverseSequenceOptions::UnPackTo(ReverseSequenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14334. (void)_o;
  14335. (void)_resolver;
  14336. { auto _e = seq_dim(); _o->seq_dim = _e; }
  14337. { auto _e = batch_dim(); _o->batch_dim = _e; }
  14338. }
  14339. inline flatbuffers::Offset<ReverseSequenceOptions> ReverseSequenceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14340. return CreateReverseSequenceOptions(_fbb, _o, _rehasher);
  14341. }
  14342. inline flatbuffers::Offset<ReverseSequenceOptions> CreateReverseSequenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14343. (void)_rehasher;
  14344. (void)_o;
  14345. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReverseSequenceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14346. auto _seq_dim = _o->seq_dim;
  14347. auto _batch_dim = _o->batch_dim;
  14348. return tflite::CreateReverseSequenceOptions(
  14349. _fbb,
  14350. _seq_dim,
  14351. _batch_dim);
  14352. }
  14353. inline MatrixDiagOptionsT *MatrixDiagOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14354. auto _o = std::unique_ptr<MatrixDiagOptionsT>(new MatrixDiagOptionsT());
  14355. UnPackTo(_o.get(), _resolver);
  14356. return _o.release();
  14357. }
  14358. inline void MatrixDiagOptions::UnPackTo(MatrixDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14359. (void)_o;
  14360. (void)_resolver;
  14361. }
  14362. inline flatbuffers::Offset<MatrixDiagOptions> MatrixDiagOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14363. return CreateMatrixDiagOptions(_fbb, _o, _rehasher);
  14364. }
  14365. inline flatbuffers::Offset<MatrixDiagOptions> CreateMatrixDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14366. (void)_rehasher;
  14367. (void)_o;
  14368. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MatrixDiagOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14369. return tflite::CreateMatrixDiagOptions(
  14370. _fbb);
  14371. }
  14372. inline QuantizeOptionsT *QuantizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14373. auto _o = std::unique_ptr<QuantizeOptionsT>(new QuantizeOptionsT());
  14374. UnPackTo(_o.get(), _resolver);
  14375. return _o.release();
  14376. }
  14377. inline void QuantizeOptions::UnPackTo(QuantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14378. (void)_o;
  14379. (void)_resolver;
  14380. }
  14381. inline flatbuffers::Offset<QuantizeOptions> QuantizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14382. return CreateQuantizeOptions(_fbb, _o, _rehasher);
  14383. }
  14384. inline flatbuffers::Offset<QuantizeOptions> CreateQuantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14385. (void)_rehasher;
  14386. (void)_o;
  14387. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const QuantizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14388. return tflite::CreateQuantizeOptions(
  14389. _fbb);
  14390. }
  14391. inline MatrixSetDiagOptionsT *MatrixSetDiagOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14392. auto _o = std::unique_ptr<MatrixSetDiagOptionsT>(new MatrixSetDiagOptionsT());
  14393. UnPackTo(_o.get(), _resolver);
  14394. return _o.release();
  14395. }
  14396. inline void MatrixSetDiagOptions::UnPackTo(MatrixSetDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14397. (void)_o;
  14398. (void)_resolver;
  14399. }
  14400. inline flatbuffers::Offset<MatrixSetDiagOptions> MatrixSetDiagOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14401. return CreateMatrixSetDiagOptions(_fbb, _o, _rehasher);
  14402. }
  14403. inline flatbuffers::Offset<MatrixSetDiagOptions> CreateMatrixSetDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14404. (void)_rehasher;
  14405. (void)_o;
  14406. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MatrixSetDiagOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14407. return tflite::CreateMatrixSetDiagOptions(
  14408. _fbb);
  14409. }
  14410. inline IfOptionsT *IfOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14411. auto _o = std::unique_ptr<IfOptionsT>(new IfOptionsT());
  14412. UnPackTo(_o.get(), _resolver);
  14413. return _o.release();
  14414. }
  14415. inline void IfOptions::UnPackTo(IfOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14416. (void)_o;
  14417. (void)_resolver;
  14418. { auto _e = then_subgraph_index(); _o->then_subgraph_index = _e; }
  14419. { auto _e = else_subgraph_index(); _o->else_subgraph_index = _e; }
  14420. }
  14421. inline flatbuffers::Offset<IfOptions> IfOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14422. return CreateIfOptions(_fbb, _o, _rehasher);
  14423. }
  14424. inline flatbuffers::Offset<IfOptions> CreateIfOptions(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14425. (void)_rehasher;
  14426. (void)_o;
  14427. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const IfOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14428. auto _then_subgraph_index = _o->then_subgraph_index;
  14429. auto _else_subgraph_index = _o->else_subgraph_index;
  14430. return tflite::CreateIfOptions(
  14431. _fbb,
  14432. _then_subgraph_index,
  14433. _else_subgraph_index);
  14434. }
  14435. inline CallOnceOptionsT *CallOnceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14436. auto _o = std::unique_ptr<CallOnceOptionsT>(new CallOnceOptionsT());
  14437. UnPackTo(_o.get(), _resolver);
  14438. return _o.release();
  14439. }
  14440. inline void CallOnceOptions::UnPackTo(CallOnceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14441. (void)_o;
  14442. (void)_resolver;
  14443. { auto _e = init_subgraph_index(); _o->init_subgraph_index = _e; }
  14444. }
  14445. inline flatbuffers::Offset<CallOnceOptions> CallOnceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14446. return CreateCallOnceOptions(_fbb, _o, _rehasher);
  14447. }
  14448. inline flatbuffers::Offset<CallOnceOptions> CreateCallOnceOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14449. (void)_rehasher;
  14450. (void)_o;
  14451. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CallOnceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14452. auto _init_subgraph_index = _o->init_subgraph_index;
  14453. return tflite::CreateCallOnceOptions(
  14454. _fbb,
  14455. _init_subgraph_index);
  14456. }
  14457. inline WhileOptionsT *WhileOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14458. auto _o = std::unique_ptr<WhileOptionsT>(new WhileOptionsT());
  14459. UnPackTo(_o.get(), _resolver);
  14460. return _o.release();
  14461. }
  14462. inline void WhileOptions::UnPackTo(WhileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14463. (void)_o;
  14464. (void)_resolver;
  14465. { auto _e = cond_subgraph_index(); _o->cond_subgraph_index = _e; }
  14466. { auto _e = body_subgraph_index(); _o->body_subgraph_index = _e; }
  14467. }
  14468. inline flatbuffers::Offset<WhileOptions> WhileOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14469. return CreateWhileOptions(_fbb, _o, _rehasher);
  14470. }
  14471. inline flatbuffers::Offset<WhileOptions> CreateWhileOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14472. (void)_rehasher;
  14473. (void)_o;
  14474. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const WhileOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14475. auto _cond_subgraph_index = _o->cond_subgraph_index;
  14476. auto _body_subgraph_index = _o->body_subgraph_index;
  14477. return tflite::CreateWhileOptions(
  14478. _fbb,
  14479. _cond_subgraph_index,
  14480. _body_subgraph_index);
  14481. }
  14482. inline NonMaxSuppressionV4OptionsT *NonMaxSuppressionV4Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14483. auto _o = std::unique_ptr<NonMaxSuppressionV4OptionsT>(new NonMaxSuppressionV4OptionsT());
  14484. UnPackTo(_o.get(), _resolver);
  14485. return _o.release();
  14486. }
  14487. inline void NonMaxSuppressionV4Options::UnPackTo(NonMaxSuppressionV4OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14488. (void)_o;
  14489. (void)_resolver;
  14490. }
  14491. inline flatbuffers::Offset<NonMaxSuppressionV4Options> NonMaxSuppressionV4Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14492. return CreateNonMaxSuppressionV4Options(_fbb, _o, _rehasher);
  14493. }
  14494. inline flatbuffers::Offset<NonMaxSuppressionV4Options> CreateNonMaxSuppressionV4Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14495. (void)_rehasher;
  14496. (void)_o;
  14497. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NonMaxSuppressionV4OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14498. return tflite::CreateNonMaxSuppressionV4Options(
  14499. _fbb);
  14500. }
  14501. inline NonMaxSuppressionV5OptionsT *NonMaxSuppressionV5Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14502. auto _o = std::unique_ptr<NonMaxSuppressionV5OptionsT>(new NonMaxSuppressionV5OptionsT());
  14503. UnPackTo(_o.get(), _resolver);
  14504. return _o.release();
  14505. }
  14506. inline void NonMaxSuppressionV5Options::UnPackTo(NonMaxSuppressionV5OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14507. (void)_o;
  14508. (void)_resolver;
  14509. }
  14510. inline flatbuffers::Offset<NonMaxSuppressionV5Options> NonMaxSuppressionV5Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14511. return CreateNonMaxSuppressionV5Options(_fbb, _o, _rehasher);
  14512. }
  14513. inline flatbuffers::Offset<NonMaxSuppressionV5Options> CreateNonMaxSuppressionV5Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14514. (void)_rehasher;
  14515. (void)_o;
  14516. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NonMaxSuppressionV5OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14517. return tflite::CreateNonMaxSuppressionV5Options(
  14518. _fbb);
  14519. }
  14520. inline ScatterNdOptionsT *ScatterNdOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14521. auto _o = std::unique_ptr<ScatterNdOptionsT>(new ScatterNdOptionsT());
  14522. UnPackTo(_o.get(), _resolver);
  14523. return _o.release();
  14524. }
  14525. inline void ScatterNdOptions::UnPackTo(ScatterNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14526. (void)_o;
  14527. (void)_resolver;
  14528. }
  14529. inline flatbuffers::Offset<ScatterNdOptions> ScatterNdOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14530. return CreateScatterNdOptions(_fbb, _o, _rehasher);
  14531. }
  14532. inline flatbuffers::Offset<ScatterNdOptions> CreateScatterNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14533. (void)_rehasher;
  14534. (void)_o;
  14535. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ScatterNdOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14536. return tflite::CreateScatterNdOptions(
  14537. _fbb);
  14538. }
  14539. inline SelectV2OptionsT *SelectV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14540. auto _o = std::unique_ptr<SelectV2OptionsT>(new SelectV2OptionsT());
  14541. UnPackTo(_o.get(), _resolver);
  14542. return _o.release();
  14543. }
  14544. inline void SelectV2Options::UnPackTo(SelectV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14545. (void)_o;
  14546. (void)_resolver;
  14547. }
  14548. inline flatbuffers::Offset<SelectV2Options> SelectV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14549. return CreateSelectV2Options(_fbb, _o, _rehasher);
  14550. }
  14551. inline flatbuffers::Offset<SelectV2Options> CreateSelectV2Options(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14552. (void)_rehasher;
  14553. (void)_o;
  14554. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SelectV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14555. return tflite::CreateSelectV2Options(
  14556. _fbb);
  14557. }
  14558. inline DensifyOptionsT *DensifyOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14559. auto _o = std::unique_ptr<DensifyOptionsT>(new DensifyOptionsT());
  14560. UnPackTo(_o.get(), _resolver);
  14561. return _o.release();
  14562. }
  14563. inline void DensifyOptions::UnPackTo(DensifyOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14564. (void)_o;
  14565. (void)_resolver;
  14566. }
  14567. inline flatbuffers::Offset<DensifyOptions> DensifyOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14568. return CreateDensifyOptions(_fbb, _o, _rehasher);
  14569. }
  14570. inline flatbuffers::Offset<DensifyOptions> CreateDensifyOptions(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14571. (void)_rehasher;
  14572. (void)_o;
  14573. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DensifyOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14574. return tflite::CreateDensifyOptions(
  14575. _fbb);
  14576. }
  14577. inline SegmentSumOptionsT *SegmentSumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14578. auto _o = std::unique_ptr<SegmentSumOptionsT>(new SegmentSumOptionsT());
  14579. UnPackTo(_o.get(), _resolver);
  14580. return _o.release();
  14581. }
  14582. inline void SegmentSumOptions::UnPackTo(SegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14583. (void)_o;
  14584. (void)_resolver;
  14585. }
  14586. inline flatbuffers::Offset<SegmentSumOptions> SegmentSumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14587. return CreateSegmentSumOptions(_fbb, _o, _rehasher);
  14588. }
  14589. inline flatbuffers::Offset<SegmentSumOptions> CreateSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14590. (void)_rehasher;
  14591. (void)_o;
  14592. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SegmentSumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14593. return tflite::CreateSegmentSumOptions(
  14594. _fbb);
  14595. }
  14596. inline BatchMatMulOptionsT *BatchMatMulOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14597. auto _o = std::unique_ptr<BatchMatMulOptionsT>(new BatchMatMulOptionsT());
  14598. UnPackTo(_o.get(), _resolver);
  14599. return _o.release();
  14600. }
  14601. inline void BatchMatMulOptions::UnPackTo(BatchMatMulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14602. (void)_o;
  14603. (void)_resolver;
  14604. { auto _e = adj_x(); _o->adj_x = _e; }
  14605. { auto _e = adj_y(); _o->adj_y = _e; }
  14606. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  14607. }
  14608. inline flatbuffers::Offset<BatchMatMulOptions> BatchMatMulOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14609. return CreateBatchMatMulOptions(_fbb, _o, _rehasher);
  14610. }
  14611. inline flatbuffers::Offset<BatchMatMulOptions> CreateBatchMatMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14612. (void)_rehasher;
  14613. (void)_o;
  14614. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BatchMatMulOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14615. auto _adj_x = _o->adj_x;
  14616. auto _adj_y = _o->adj_y;
  14617. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  14618. return tflite::CreateBatchMatMulOptions(
  14619. _fbb,
  14620. _adj_x,
  14621. _adj_y,
  14622. _asymmetric_quantize_inputs);
  14623. }
  14624. inline CumsumOptionsT *CumsumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14625. auto _o = std::unique_ptr<CumsumOptionsT>(new CumsumOptionsT());
  14626. UnPackTo(_o.get(), _resolver);
  14627. return _o.release();
  14628. }
  14629. inline void CumsumOptions::UnPackTo(CumsumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14630. (void)_o;
  14631. (void)_resolver;
  14632. { auto _e = exclusive(); _o->exclusive = _e; }
  14633. { auto _e = reverse(); _o->reverse = _e; }
  14634. }
  14635. inline flatbuffers::Offset<CumsumOptions> CumsumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14636. return CreateCumsumOptions(_fbb, _o, _rehasher);
  14637. }
  14638. inline flatbuffers::Offset<CumsumOptions> CreateCumsumOptions(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14639. (void)_rehasher;
  14640. (void)_o;
  14641. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CumsumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14642. auto _exclusive = _o->exclusive;
  14643. auto _reverse = _o->reverse;
  14644. return tflite::CreateCumsumOptions(
  14645. _fbb,
  14646. _exclusive,
  14647. _reverse);
  14648. }
  14649. inline BroadcastToOptionsT *BroadcastToOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14650. auto _o = std::unique_ptr<BroadcastToOptionsT>(new BroadcastToOptionsT());
  14651. UnPackTo(_o.get(), _resolver);
  14652. return _o.release();
  14653. }
  14654. inline void BroadcastToOptions::UnPackTo(BroadcastToOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14655. (void)_o;
  14656. (void)_resolver;
  14657. }
  14658. inline flatbuffers::Offset<BroadcastToOptions> BroadcastToOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14659. return CreateBroadcastToOptions(_fbb, _o, _rehasher);
  14660. }
  14661. inline flatbuffers::Offset<BroadcastToOptions> CreateBroadcastToOptions(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14662. (void)_rehasher;
  14663. (void)_o;
  14664. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BroadcastToOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14665. return tflite::CreateBroadcastToOptions(
  14666. _fbb);
  14667. }
  14668. inline Rfft2dOptionsT *Rfft2dOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14669. auto _o = std::unique_ptr<Rfft2dOptionsT>(new Rfft2dOptionsT());
  14670. UnPackTo(_o.get(), _resolver);
  14671. return _o.release();
  14672. }
  14673. inline void Rfft2dOptions::UnPackTo(Rfft2dOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14674. (void)_o;
  14675. (void)_resolver;
  14676. }
  14677. inline flatbuffers::Offset<Rfft2dOptions> Rfft2dOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14678. return CreateRfft2dOptions(_fbb, _o, _rehasher);
  14679. }
  14680. inline flatbuffers::Offset<Rfft2dOptions> CreateRfft2dOptions(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14681. (void)_rehasher;
  14682. (void)_o;
  14683. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Rfft2dOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14684. return tflite::CreateRfft2dOptions(
  14685. _fbb);
  14686. }
  14687. inline HashtableOptionsT *HashtableOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14688. auto _o = std::unique_ptr<HashtableOptionsT>(new HashtableOptionsT());
  14689. UnPackTo(_o.get(), _resolver);
  14690. return _o.release();
  14691. }
  14692. inline void HashtableOptions::UnPackTo(HashtableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14693. (void)_o;
  14694. (void)_resolver;
  14695. { auto _e = table_id(); _o->table_id = _e; }
  14696. { auto _e = key_dtype(); _o->key_dtype = _e; }
  14697. { auto _e = value_dtype(); _o->value_dtype = _e; }
  14698. }
  14699. inline flatbuffers::Offset<HashtableOptions> HashtableOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14700. return CreateHashtableOptions(_fbb, _o, _rehasher);
  14701. }
  14702. inline flatbuffers::Offset<HashtableOptions> CreateHashtableOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14703. (void)_rehasher;
  14704. (void)_o;
  14705. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14706. auto _table_id = _o->table_id;
  14707. auto _key_dtype = _o->key_dtype;
  14708. auto _value_dtype = _o->value_dtype;
  14709. return tflite::CreateHashtableOptions(
  14710. _fbb,
  14711. _table_id,
  14712. _key_dtype,
  14713. _value_dtype);
  14714. }
  14715. inline HashtableFindOptionsT *HashtableFindOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14716. auto _o = std::unique_ptr<HashtableFindOptionsT>(new HashtableFindOptionsT());
  14717. UnPackTo(_o.get(), _resolver);
  14718. return _o.release();
  14719. }
  14720. inline void HashtableFindOptions::UnPackTo(HashtableFindOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14721. (void)_o;
  14722. (void)_resolver;
  14723. }
  14724. inline flatbuffers::Offset<HashtableFindOptions> HashtableFindOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14725. return CreateHashtableFindOptions(_fbb, _o, _rehasher);
  14726. }
  14727. inline flatbuffers::Offset<HashtableFindOptions> CreateHashtableFindOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14728. (void)_rehasher;
  14729. (void)_o;
  14730. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableFindOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14731. return tflite::CreateHashtableFindOptions(
  14732. _fbb);
  14733. }
  14734. inline HashtableImportOptionsT *HashtableImportOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14735. auto _o = std::unique_ptr<HashtableImportOptionsT>(new HashtableImportOptionsT());
  14736. UnPackTo(_o.get(), _resolver);
  14737. return _o.release();
  14738. }
  14739. inline void HashtableImportOptions::UnPackTo(HashtableImportOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14740. (void)_o;
  14741. (void)_resolver;
  14742. }
  14743. inline flatbuffers::Offset<HashtableImportOptions> HashtableImportOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14744. return CreateHashtableImportOptions(_fbb, _o, _rehasher);
  14745. }
  14746. inline flatbuffers::Offset<HashtableImportOptions> CreateHashtableImportOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14747. (void)_rehasher;
  14748. (void)_o;
  14749. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableImportOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14750. return tflite::CreateHashtableImportOptions(
  14751. _fbb);
  14752. }
  14753. inline HashtableSizeOptionsT *HashtableSizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14754. auto _o = std::unique_ptr<HashtableSizeOptionsT>(new HashtableSizeOptionsT());
  14755. UnPackTo(_o.get(), _resolver);
  14756. return _o.release();
  14757. }
  14758. inline void HashtableSizeOptions::UnPackTo(HashtableSizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14759. (void)_o;
  14760. (void)_resolver;
  14761. }
  14762. inline flatbuffers::Offset<HashtableSizeOptions> HashtableSizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14763. return CreateHashtableSizeOptions(_fbb, _o, _rehasher);
  14764. }
  14765. inline flatbuffers::Offset<HashtableSizeOptions> CreateHashtableSizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14766. (void)_rehasher;
  14767. (void)_o;
  14768. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableSizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14769. return tflite::CreateHashtableSizeOptions(
  14770. _fbb);
  14771. }
  14772. inline VarHandleOptionsT *VarHandleOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14773. auto _o = std::unique_ptr<VarHandleOptionsT>(new VarHandleOptionsT());
  14774. UnPackTo(_o.get(), _resolver);
  14775. return _o.release();
  14776. }
  14777. inline void VarHandleOptions::UnPackTo(VarHandleOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14778. (void)_o;
  14779. (void)_resolver;
  14780. { auto _e = container(); if (_e) _o->container = _e->str(); }
  14781. { auto _e = shared_name(); if (_e) _o->shared_name = _e->str(); }
  14782. }
  14783. inline flatbuffers::Offset<VarHandleOptions> VarHandleOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14784. return CreateVarHandleOptions(_fbb, _o, _rehasher);
  14785. }
  14786. inline flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptions(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14787. (void)_rehasher;
  14788. (void)_o;
  14789. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const VarHandleOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14790. auto _container = _o->container.empty() ? 0 : _fbb.CreateString(_o->container);
  14791. auto _shared_name = _o->shared_name.empty() ? 0 : _fbb.CreateString(_o->shared_name);
  14792. return tflite::CreateVarHandleOptions(
  14793. _fbb,
  14794. _container,
  14795. _shared_name);
  14796. }
  14797. inline ReadVariableOptionsT *ReadVariableOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14798. auto _o = std::unique_ptr<ReadVariableOptionsT>(new ReadVariableOptionsT());
  14799. UnPackTo(_o.get(), _resolver);
  14800. return _o.release();
  14801. }
  14802. inline void ReadVariableOptions::UnPackTo(ReadVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14803. (void)_o;
  14804. (void)_resolver;
  14805. }
  14806. inline flatbuffers::Offset<ReadVariableOptions> ReadVariableOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14807. return CreateReadVariableOptions(_fbb, _o, _rehasher);
  14808. }
  14809. inline flatbuffers::Offset<ReadVariableOptions> CreateReadVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14810. (void)_rehasher;
  14811. (void)_o;
  14812. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReadVariableOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14813. return tflite::CreateReadVariableOptions(
  14814. _fbb);
  14815. }
  14816. inline AssignVariableOptionsT *AssignVariableOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14817. auto _o = std::unique_ptr<AssignVariableOptionsT>(new AssignVariableOptionsT());
  14818. UnPackTo(_o.get(), _resolver);
  14819. return _o.release();
  14820. }
  14821. inline void AssignVariableOptions::UnPackTo(AssignVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14822. (void)_o;
  14823. (void)_resolver;
  14824. }
  14825. inline flatbuffers::Offset<AssignVariableOptions> AssignVariableOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14826. return CreateAssignVariableOptions(_fbb, _o, _rehasher);
  14827. }
  14828. inline flatbuffers::Offset<AssignVariableOptions> CreateAssignVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14829. (void)_rehasher;
  14830. (void)_o;
  14831. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AssignVariableOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14832. return tflite::CreateAssignVariableOptions(
  14833. _fbb);
  14834. }
  14835. inline RandomOptionsT *RandomOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14836. auto _o = std::unique_ptr<RandomOptionsT>(new RandomOptionsT());
  14837. UnPackTo(_o.get(), _resolver);
  14838. return _o.release();
  14839. }
  14840. inline void RandomOptions::UnPackTo(RandomOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14841. (void)_o;
  14842. (void)_resolver;
  14843. { auto _e = seed(); _o->seed = _e; }
  14844. { auto _e = seed2(); _o->seed2 = _e; }
  14845. }
  14846. inline flatbuffers::Offset<RandomOptions> RandomOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14847. return CreateRandomOptions(_fbb, _o, _rehasher);
  14848. }
  14849. inline flatbuffers::Offset<RandomOptions> CreateRandomOptions(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14850. (void)_rehasher;
  14851. (void)_o;
  14852. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RandomOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14853. auto _seed = _o->seed;
  14854. auto _seed2 = _o->seed2;
  14855. return tflite::CreateRandomOptions(
  14856. _fbb,
  14857. _seed,
  14858. _seed2);
  14859. }
  14860. inline BucketizeOptionsT *BucketizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14861. auto _o = std::unique_ptr<BucketizeOptionsT>(new BucketizeOptionsT());
  14862. UnPackTo(_o.get(), _resolver);
  14863. return _o.release();
  14864. }
  14865. inline void BucketizeOptions::UnPackTo(BucketizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14866. (void)_o;
  14867. (void)_resolver;
  14868. { auto _e = boundaries(); if (_e) { _o->boundaries.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->boundaries[_i] = _e->Get(_i); } } }
  14869. }
  14870. inline flatbuffers::Offset<BucketizeOptions> BucketizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14871. return CreateBucketizeOptions(_fbb, _o, _rehasher);
  14872. }
  14873. inline flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14874. (void)_rehasher;
  14875. (void)_o;
  14876. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BucketizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14877. auto _boundaries = _o->boundaries.size() ? _fbb.CreateVector(_o->boundaries) : 0;
  14878. return tflite::CreateBucketizeOptions(
  14879. _fbb,
  14880. _boundaries);
  14881. }
  14882. inline GeluOptionsT *GeluOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14883. auto _o = std::unique_ptr<GeluOptionsT>(new GeluOptionsT());
  14884. UnPackTo(_o.get(), _resolver);
  14885. return _o.release();
  14886. }
  14887. inline void GeluOptions::UnPackTo(GeluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14888. (void)_o;
  14889. (void)_resolver;
  14890. { auto _e = approximate(); _o->approximate = _e; }
  14891. }
  14892. inline flatbuffers::Offset<GeluOptions> GeluOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14893. return CreateGeluOptions(_fbb, _o, _rehasher);
  14894. }
  14895. inline flatbuffers::Offset<GeluOptions> CreateGeluOptions(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14896. (void)_rehasher;
  14897. (void)_o;
  14898. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GeluOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14899. auto _approximate = _o->approximate;
  14900. return tflite::CreateGeluOptions(
  14901. _fbb,
  14902. _approximate);
  14903. }
  14904. inline DynamicUpdateSliceOptionsT *DynamicUpdateSliceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14905. auto _o = std::unique_ptr<DynamicUpdateSliceOptionsT>(new DynamicUpdateSliceOptionsT());
  14906. UnPackTo(_o.get(), _resolver);
  14907. return _o.release();
  14908. }
  14909. inline void DynamicUpdateSliceOptions::UnPackTo(DynamicUpdateSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14910. (void)_o;
  14911. (void)_resolver;
  14912. }
  14913. inline flatbuffers::Offset<DynamicUpdateSliceOptions> DynamicUpdateSliceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14914. return CreateDynamicUpdateSliceOptions(_fbb, _o, _rehasher);
  14915. }
  14916. inline flatbuffers::Offset<DynamicUpdateSliceOptions> CreateDynamicUpdateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14917. (void)_rehasher;
  14918. (void)_o;
  14919. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DynamicUpdateSliceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14920. return tflite::CreateDynamicUpdateSliceOptions(
  14921. _fbb);
  14922. }
  14923. inline UnsortedSegmentProdOptionsT *UnsortedSegmentProdOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14924. auto _o = std::unique_ptr<UnsortedSegmentProdOptionsT>(new UnsortedSegmentProdOptionsT());
  14925. UnPackTo(_o.get(), _resolver);
  14926. return _o.release();
  14927. }
  14928. inline void UnsortedSegmentProdOptions::UnPackTo(UnsortedSegmentProdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14929. (void)_o;
  14930. (void)_resolver;
  14931. }
  14932. inline flatbuffers::Offset<UnsortedSegmentProdOptions> UnsortedSegmentProdOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14933. return CreateUnsortedSegmentProdOptions(_fbb, _o, _rehasher);
  14934. }
  14935. inline flatbuffers::Offset<UnsortedSegmentProdOptions> CreateUnsortedSegmentProdOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14936. (void)_rehasher;
  14937. (void)_o;
  14938. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentProdOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14939. return tflite::CreateUnsortedSegmentProdOptions(
  14940. _fbb);
  14941. }
  14942. inline UnsortedSegmentMaxOptionsT *UnsortedSegmentMaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14943. auto _o = std::unique_ptr<UnsortedSegmentMaxOptionsT>(new UnsortedSegmentMaxOptionsT());
  14944. UnPackTo(_o.get(), _resolver);
  14945. return _o.release();
  14946. }
  14947. inline void UnsortedSegmentMaxOptions::UnPackTo(UnsortedSegmentMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14948. (void)_o;
  14949. (void)_resolver;
  14950. }
  14951. inline flatbuffers::Offset<UnsortedSegmentMaxOptions> UnsortedSegmentMaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14952. return CreateUnsortedSegmentMaxOptions(_fbb, _o, _rehasher);
  14953. }
  14954. inline flatbuffers::Offset<UnsortedSegmentMaxOptions> CreateUnsortedSegmentMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14955. (void)_rehasher;
  14956. (void)_o;
  14957. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentMaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14958. return tflite::CreateUnsortedSegmentMaxOptions(
  14959. _fbb);
  14960. }
  14961. inline UnsortedSegmentSumOptionsT *UnsortedSegmentSumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14962. auto _o = std::unique_ptr<UnsortedSegmentSumOptionsT>(new UnsortedSegmentSumOptionsT());
  14963. UnPackTo(_o.get(), _resolver);
  14964. return _o.release();
  14965. }
  14966. inline void UnsortedSegmentSumOptions::UnPackTo(UnsortedSegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14967. (void)_o;
  14968. (void)_resolver;
  14969. }
  14970. inline flatbuffers::Offset<UnsortedSegmentSumOptions> UnsortedSegmentSumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14971. return CreateUnsortedSegmentSumOptions(_fbb, _o, _rehasher);
  14972. }
  14973. inline flatbuffers::Offset<UnsortedSegmentSumOptions> CreateUnsortedSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14974. (void)_rehasher;
  14975. (void)_o;
  14976. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentSumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14977. return tflite::CreateUnsortedSegmentSumOptions(
  14978. _fbb);
  14979. }
  14980. inline ATan2OptionsT *ATan2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14981. auto _o = std::unique_ptr<ATan2OptionsT>(new ATan2OptionsT());
  14982. UnPackTo(_o.get(), _resolver);
  14983. return _o.release();
  14984. }
  14985. inline void ATan2Options::UnPackTo(ATan2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14986. (void)_o;
  14987. (void)_resolver;
  14988. }
  14989. inline flatbuffers::Offset<ATan2Options> ATan2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14990. return CreateATan2Options(_fbb, _o, _rehasher);
  14991. }
  14992. inline flatbuffers::Offset<ATan2Options> CreateATan2Options(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14993. (void)_rehasher;
  14994. (void)_o;
  14995. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ATan2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14996. return tflite::CreateATan2Options(
  14997. _fbb);
  14998. }
  14999. inline UnsortedSegmentMinOptionsT *UnsortedSegmentMinOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15000. auto _o = std::unique_ptr<UnsortedSegmentMinOptionsT>(new UnsortedSegmentMinOptionsT());
  15001. UnPackTo(_o.get(), _resolver);
  15002. return _o.release();
  15003. }
  15004. inline void UnsortedSegmentMinOptions::UnPackTo(UnsortedSegmentMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15005. (void)_o;
  15006. (void)_resolver;
  15007. }
  15008. inline flatbuffers::Offset<UnsortedSegmentMinOptions> UnsortedSegmentMinOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15009. return CreateUnsortedSegmentMinOptions(_fbb, _o, _rehasher);
  15010. }
  15011. inline flatbuffers::Offset<UnsortedSegmentMinOptions> CreateUnsortedSegmentMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15012. (void)_rehasher;
  15013. (void)_o;
  15014. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentMinOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15015. return tflite::CreateUnsortedSegmentMinOptions(
  15016. _fbb);
  15017. }
  15018. inline SignOptionsT *SignOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15019. auto _o = std::unique_ptr<SignOptionsT>(new SignOptionsT());
  15020. UnPackTo(_o.get(), _resolver);
  15021. return _o.release();
  15022. }
  15023. inline void SignOptions::UnPackTo(SignOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15024. (void)_o;
  15025. (void)_resolver;
  15026. }
  15027. inline flatbuffers::Offset<SignOptions> SignOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SignOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15028. return CreateSignOptions(_fbb, _o, _rehasher);
  15029. }
  15030. inline flatbuffers::Offset<SignOptions> CreateSignOptions(flatbuffers::FlatBufferBuilder &_fbb, const SignOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15031. (void)_rehasher;
  15032. (void)_o;
  15033. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SignOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15034. return tflite::CreateSignOptions(
  15035. _fbb);
  15036. }
  15037. inline OperatorCodeT *OperatorCode::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15038. auto _o = std::unique_ptr<OperatorCodeT>(new OperatorCodeT());
  15039. UnPackTo(_o.get(), _resolver);
  15040. return _o.release();
  15041. }
  15042. inline void OperatorCode::UnPackTo(OperatorCodeT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15043. (void)_o;
  15044. (void)_resolver;
  15045. { auto _e = deprecated_builtin_code(); _o->deprecated_builtin_code = _e; }
  15046. { auto _e = custom_code(); if (_e) _o->custom_code = _e->str(); }
  15047. { auto _e = version(); _o->version = _e; }
  15048. { auto _e = builtin_code(); _o->builtin_code = _e; }
  15049. }
  15050. inline flatbuffers::Offset<OperatorCode> OperatorCode::Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15051. return CreateOperatorCode(_fbb, _o, _rehasher);
  15052. }
  15053. inline flatbuffers::Offset<OperatorCode> CreateOperatorCode(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15054. (void)_rehasher;
  15055. (void)_o;
  15056. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const OperatorCodeT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15057. auto _deprecated_builtin_code = _o->deprecated_builtin_code;
  15058. auto _custom_code = _o->custom_code.empty() ? 0 : _fbb.CreateString(_o->custom_code);
  15059. auto _version = _o->version;
  15060. auto _builtin_code = _o->builtin_code;
  15061. return tflite::CreateOperatorCode(
  15062. _fbb,
  15063. _deprecated_builtin_code,
  15064. _custom_code,
  15065. _version,
  15066. _builtin_code);
  15067. }
  15068. inline OperatorT *Operator::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15069. auto _o = std::unique_ptr<OperatorT>(new OperatorT());
  15070. UnPackTo(_o.get(), _resolver);
  15071. return _o.release();
  15072. }
  15073. inline void Operator::UnPackTo(OperatorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15074. (void)_o;
  15075. (void)_resolver;
  15076. { auto _e = opcode_index(); _o->opcode_index = _e; }
  15077. { auto _e = inputs(); if (_e) { _o->inputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->inputs[_i] = _e->Get(_i); } } }
  15078. { auto _e = outputs(); if (_e) { _o->outputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->outputs[_i] = _e->Get(_i); } } }
  15079. { auto _e = builtin_options_type(); _o->builtin_options.type = _e; }
  15080. { auto _e = builtin_options(); if (_e) _o->builtin_options.value = tflite::BuiltinOptionsUnion::UnPack(_e, builtin_options_type(), _resolver); }
  15081. { auto _e = custom_options(); if (_e) { _o->custom_options.resize(_e->size()); std::copy(_e->begin(), _e->end(), _o->custom_options.begin()); } }
  15082. { auto _e = custom_options_format(); _o->custom_options_format = _e; }
  15083. { auto _e = mutating_variable_inputs(); if (_e) { _o->mutating_variable_inputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->mutating_variable_inputs[_i] = _e->Get(_i) != 0; } } }
  15084. { auto _e = intermediates(); if (_e) { _o->intermediates.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->intermediates[_i] = _e->Get(_i); } } }
  15085. }
  15086. inline flatbuffers::Offset<Operator> Operator::Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15087. return CreateOperator(_fbb, _o, _rehasher);
  15088. }
  15089. inline flatbuffers::Offset<Operator> CreateOperator(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15090. (void)_rehasher;
  15091. (void)_o;
  15092. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const OperatorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15093. auto _opcode_index = _o->opcode_index;
  15094. auto _inputs = _o->inputs.size() ? _fbb.CreateVector(_o->inputs) : 0;
  15095. auto _outputs = _o->outputs.size() ? _fbb.CreateVector(_o->outputs) : 0;
  15096. auto _builtin_options_type = _o->builtin_options.type;
  15097. auto _builtin_options = _o->builtin_options.Pack(_fbb);
  15098. auto _custom_options = _o->custom_options.size() ? _fbb.CreateVector(_o->custom_options) : 0;
  15099. auto _custom_options_format = _o->custom_options_format;
  15100. auto _mutating_variable_inputs = _o->mutating_variable_inputs.size() ? _fbb.CreateVector(_o->mutating_variable_inputs) : 0;
  15101. auto _intermediates = _o->intermediates.size() ? _fbb.CreateVector(_o->intermediates) : 0;
  15102. return tflite::CreateOperator(
  15103. _fbb,
  15104. _opcode_index,
  15105. _inputs,
  15106. _outputs,
  15107. _builtin_options_type,
  15108. _builtin_options,
  15109. _custom_options,
  15110. _custom_options_format,
  15111. _mutating_variable_inputs,
  15112. _intermediates);
  15113. }
  15114. inline SubGraphT::SubGraphT(const SubGraphT &o)
  15115. : inputs(o.inputs),
  15116. outputs(o.outputs),
  15117. name(o.name) {
  15118. tensors.reserve(o.tensors.size());
  15119. for (const auto &tensors_ : o.tensors) { tensors.emplace_back((tensors_) ? new tflite::TensorT(*tensors_) : nullptr); }
  15120. operators.reserve(o.operators.size());
  15121. for (const auto &operators_ : o.operators) { operators.emplace_back((operators_) ? new tflite::OperatorT(*operators_) : nullptr); }
  15122. }
  15123. inline SubGraphT &SubGraphT::operator=(SubGraphT o) FLATBUFFERS_NOEXCEPT {
  15124. std::swap(tensors, o.tensors);
  15125. std::swap(inputs, o.inputs);
  15126. std::swap(outputs, o.outputs);
  15127. std::swap(operators, o.operators);
  15128. std::swap(name, o.name);
  15129. return *this;
  15130. }
  15131. inline SubGraphT *SubGraph::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15132. auto _o = std::unique_ptr<SubGraphT>(new SubGraphT());
  15133. UnPackTo(_o.get(), _resolver);
  15134. return _o.release();
  15135. }
  15136. inline void SubGraph::UnPackTo(SubGraphT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15137. (void)_o;
  15138. (void)_resolver;
  15139. { auto _e = tensors(); if (_e) { _o->tensors.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->tensors[_i]) { _e->Get(_i)->UnPackTo(_o->tensors[_i].get(), _resolver); } else { _o->tensors[_i] = std::unique_ptr<tflite::TensorT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  15140. { auto _e = inputs(); if (_e) { _o->inputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->inputs[_i] = _e->Get(_i); } } }
  15141. { auto _e = outputs(); if (_e) { _o->outputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->outputs[_i] = _e->Get(_i); } } }
  15142. { auto _e = operators(); if (_e) { _o->operators.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->operators[_i]) { _e->Get(_i)->UnPackTo(_o->operators[_i].get(), _resolver); } else { _o->operators[_i] = std::unique_ptr<tflite::OperatorT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  15143. { auto _e = name(); if (_e) _o->name = _e->str(); }
  15144. }
  15145. inline flatbuffers::Offset<SubGraph> SubGraph::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15146. return CreateSubGraph(_fbb, _o, _rehasher);
  15147. }
  15148. inline flatbuffers::Offset<SubGraph> CreateSubGraph(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15149. (void)_rehasher;
  15150. (void)_o;
  15151. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SubGraphT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15152. auto _tensors = _o->tensors.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::Tensor>> (_o->tensors.size(), [](size_t i, _VectorArgs *__va) { return CreateTensor(*__va->__fbb, __va->__o->tensors[i].get(), __va->__rehasher); }, &_va ) : 0;
  15153. auto _inputs = _o->inputs.size() ? _fbb.CreateVector(_o->inputs) : 0;
  15154. auto _outputs = _o->outputs.size() ? _fbb.CreateVector(_o->outputs) : 0;
  15155. auto _operators = _o->operators.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::Operator>> (_o->operators.size(), [](size_t i, _VectorArgs *__va) { return CreateOperator(*__va->__fbb, __va->__o->operators[i].get(), __va->__rehasher); }, &_va ) : 0;
  15156. auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
  15157. return tflite::CreateSubGraph(
  15158. _fbb,
  15159. _tensors,
  15160. _inputs,
  15161. _outputs,
  15162. _operators,
  15163. _name);
  15164. }
  15165. inline BufferT *Buffer::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15166. auto _o = std::unique_ptr<BufferT>(new BufferT());
  15167. UnPackTo(_o.get(), _resolver);
  15168. return _o.release();
  15169. }
  15170. inline void Buffer::UnPackTo(BufferT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15171. (void)_o;
  15172. (void)_resolver;
  15173. { auto _e = data(); if (_e) { _o->data.resize(_e->size()); std::copy(_e->begin(), _e->end(), _o->data.begin()); } }
  15174. }
  15175. inline flatbuffers::Offset<Buffer> Buffer::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BufferT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15176. return CreateBuffer(_fbb, _o, _rehasher);
  15177. }
  15178. inline flatbuffers::Offset<Buffer> CreateBuffer(flatbuffers::FlatBufferBuilder &_fbb, const BufferT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15179. (void)_rehasher;
  15180. (void)_o;
  15181. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BufferT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15182. _fbb.ForceVectorAlignment(_o->data.size(), sizeof(uint8_t), 16);
  15183. auto _data = _o->data.size() ? _fbb.CreateVector(_o->data) : 0;
  15184. return tflite::CreateBuffer(
  15185. _fbb,
  15186. _data);
  15187. }
  15188. inline MetadataT *Metadata::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15189. auto _o = std::unique_ptr<MetadataT>(new MetadataT());
  15190. UnPackTo(_o.get(), _resolver);
  15191. return _o.release();
  15192. }
  15193. inline void Metadata::UnPackTo(MetadataT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15194. (void)_o;
  15195. (void)_resolver;
  15196. { auto _e = name(); if (_e) _o->name = _e->str(); }
  15197. { auto _e = buffer(); _o->buffer = _e; }
  15198. }
  15199. inline flatbuffers::Offset<Metadata> Metadata::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15200. return CreateMetadata(_fbb, _o, _rehasher);
  15201. }
  15202. inline flatbuffers::Offset<Metadata> CreateMetadata(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15203. (void)_rehasher;
  15204. (void)_o;
  15205. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MetadataT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15206. auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
  15207. auto _buffer = _o->buffer;
  15208. return tflite::CreateMetadata(
  15209. _fbb,
  15210. _name,
  15211. _buffer);
  15212. }
  15213. inline TensorMapT *TensorMap::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15214. auto _o = std::unique_ptr<TensorMapT>(new TensorMapT());
  15215. UnPackTo(_o.get(), _resolver);
  15216. return _o.release();
  15217. }
  15218. inline void TensorMap::UnPackTo(TensorMapT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15219. (void)_o;
  15220. (void)_resolver;
  15221. { auto _e = name(); if (_e) _o->name = _e->str(); }
  15222. { auto _e = tensor_index(); _o->tensor_index = _e; }
  15223. }
  15224. inline flatbuffers::Offset<TensorMap> TensorMap::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15225. return CreateTensorMap(_fbb, _o, _rehasher);
  15226. }
  15227. inline flatbuffers::Offset<TensorMap> CreateTensorMap(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15228. (void)_rehasher;
  15229. (void)_o;
  15230. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TensorMapT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15231. auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
  15232. auto _tensor_index = _o->tensor_index;
  15233. return tflite::CreateTensorMap(
  15234. _fbb,
  15235. _name,
  15236. _tensor_index);
  15237. }
  15238. inline SignatureDefT::SignatureDefT(const SignatureDefT &o)
  15239. : signature_key(o.signature_key),
  15240. subgraph_index(o.subgraph_index) {
  15241. inputs.reserve(o.inputs.size());
  15242. for (const auto &inputs_ : o.inputs) { inputs.emplace_back((inputs_) ? new tflite::TensorMapT(*inputs_) : nullptr); }
  15243. outputs.reserve(o.outputs.size());
  15244. for (const auto &outputs_ : o.outputs) { outputs.emplace_back((outputs_) ? new tflite::TensorMapT(*outputs_) : nullptr); }
  15245. }
  15246. inline SignatureDefT &SignatureDefT::operator=(SignatureDefT o) FLATBUFFERS_NOEXCEPT {
  15247. std::swap(inputs, o.inputs);
  15248. std::swap(outputs, o.outputs);
  15249. std::swap(signature_key, o.signature_key);
  15250. std::swap(subgraph_index, o.subgraph_index);
  15251. return *this;
  15252. }
  15253. inline SignatureDefT *SignatureDef::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15254. auto _o = std::unique_ptr<SignatureDefT>(new SignatureDefT());
  15255. UnPackTo(_o.get(), _resolver);
  15256. return _o.release();
  15257. }
  15258. inline void SignatureDef::UnPackTo(SignatureDefT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15259. (void)_o;
  15260. (void)_resolver;
  15261. { auto _e = inputs(); if (_e) { _o->inputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->inputs[_i]) { _e->Get(_i)->UnPackTo(_o->inputs[_i].get(), _resolver); } else { _o->inputs[_i] = std::unique_ptr<tflite::TensorMapT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  15262. { auto _e = outputs(); if (_e) { _o->outputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->outputs[_i]) { _e->Get(_i)->UnPackTo(_o->outputs[_i].get(), _resolver); } else { _o->outputs[_i] = std::unique_ptr<tflite::TensorMapT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  15263. { auto _e = signature_key(); if (_e) _o->signature_key = _e->str(); }
  15264. { auto _e = subgraph_index(); _o->subgraph_index = _e; }
  15265. }
  15266. inline flatbuffers::Offset<SignatureDef> SignatureDef::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15267. return CreateSignatureDef(_fbb, _o, _rehasher);
  15268. }
  15269. inline flatbuffers::Offset<SignatureDef> CreateSignatureDef(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15270. (void)_rehasher;
  15271. (void)_o;
  15272. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SignatureDefT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15273. auto _inputs = _o->inputs.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::TensorMap>> (_o->inputs.size(), [](size_t i, _VectorArgs *__va) { return CreateTensorMap(*__va->__fbb, __va->__o->inputs[i].get(), __va->__rehasher); }, &_va ) : 0;
  15274. auto _outputs = _o->outputs.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::TensorMap>> (_o->outputs.size(), [](size_t i, _VectorArgs *__va) { return CreateTensorMap(*__va->__fbb, __va->__o->outputs[i].get(), __va->__rehasher); }, &_va ) : 0;
  15275. auto _signature_key = _o->signature_key.empty() ? 0 : _fbb.CreateString(_o->signature_key);
  15276. auto _subgraph_index = _o->subgraph_index;
  15277. return tflite::CreateSignatureDef(
  15278. _fbb,
  15279. _inputs,
  15280. _outputs,
  15281. _signature_key,
  15282. _subgraph_index);
  15283. }
  15284. inline ModelT::ModelT(const ModelT &o)
  15285. : version(o.version),
  15286. description(o.description),
  15287. metadata_buffer(o.metadata_buffer) {
  15288. operator_codes.reserve(o.operator_codes.size());
  15289. for (const auto &operator_codes_ : o.operator_codes) { operator_codes.emplace_back((operator_codes_) ? new tflite::OperatorCodeT(*operator_codes_) : nullptr); }
  15290. subgraphs.reserve(o.subgraphs.size());
  15291. for (const auto &subgraphs_ : o.subgraphs) { subgraphs.emplace_back((subgraphs_) ? new tflite::SubGraphT(*subgraphs_) : nullptr); }
  15292. buffers.reserve(o.buffers.size());
  15293. for (const auto &buffers_ : o.buffers) { buffers.emplace_back((buffers_) ? new tflite::BufferT(*buffers_) : nullptr); }
  15294. metadata.reserve(o.metadata.size());
  15295. for (const auto &metadata_ : o.metadata) { metadata.emplace_back((metadata_) ? new tflite::MetadataT(*metadata_) : nullptr); }
  15296. signature_defs.reserve(o.signature_defs.size());
  15297. for (const auto &signature_defs_ : o.signature_defs) { signature_defs.emplace_back((signature_defs_) ? new tflite::SignatureDefT(*signature_defs_) : nullptr); }
  15298. }
  15299. inline ModelT &ModelT::operator=(ModelT o) FLATBUFFERS_NOEXCEPT {
  15300. std::swap(version, o.version);
  15301. std::swap(operator_codes, o.operator_codes);
  15302. std::swap(subgraphs, o.subgraphs);
  15303. std::swap(description, o.description);
  15304. std::swap(buffers, o.buffers);
  15305. std::swap(metadata_buffer, o.metadata_buffer);
  15306. std::swap(metadata, o.metadata);
  15307. std::swap(signature_defs, o.signature_defs);
  15308. return *this;
  15309. }
  15310. inline ModelT *Model::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15311. auto _o = std::unique_ptr<ModelT>(new ModelT());
  15312. UnPackTo(_o.get(), _resolver);
  15313. return _o.release();
  15314. }
  15315. inline void Model::UnPackTo(ModelT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15316. (void)_o;
  15317. (void)_resolver;
  15318. { auto _e = version(); _o->version = _e; }
  15319. { auto _e = operator_codes(); if (_e) { _o->operator_codes.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->operator_codes[_i]) { _e->Get(_i)->UnPackTo(_o->operator_codes[_i].get(), _resolver); } else { _o->operator_codes[_i] = std::unique_ptr<tflite::OperatorCodeT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  15320. { auto _e = subgraphs(); if (_e) { _o->subgraphs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->subgraphs[_i]) { _e->Get(_i)->UnPackTo(_o->subgraphs[_i].get(), _resolver); } else { _o->subgraphs[_i] = std::unique_ptr<tflite::SubGraphT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  15321. { auto _e = description(); if (_e) _o->description = _e->str(); }
  15322. { auto _e = buffers(); if (_e) { _o->buffers.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->buffers[_i]) { _e->Get(_i)->UnPackTo(_o->buffers[_i].get(), _resolver); } else { _o->buffers[_i] = std::unique_ptr<tflite::BufferT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  15323. { auto _e = metadata_buffer(); if (_e) { _o->metadata_buffer.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->metadata_buffer[_i] = _e->Get(_i); } } }
  15324. { auto _e = metadata(); if (_e) { _o->metadata.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->metadata[_i]) { _e->Get(_i)->UnPackTo(_o->metadata[_i].get(), _resolver); } else { _o->metadata[_i] = std::unique_ptr<tflite::MetadataT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  15325. { auto _e = signature_defs(); if (_e) { _o->signature_defs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { if(_o->signature_defs[_i]) { _e->Get(_i)->UnPackTo(_o->signature_defs[_i].get(), _resolver); } else { _o->signature_defs[_i] = std::unique_ptr<tflite::SignatureDefT>(_e->Get(_i)->UnPack(_resolver)); }; } } }
  15326. }
  15327. inline flatbuffers::Offset<Model> Model::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ModelT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15328. return CreateModel(_fbb, _o, _rehasher);
  15329. }
  15330. inline flatbuffers::Offset<Model> CreateModel(flatbuffers::FlatBufferBuilder &_fbb, const ModelT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15331. (void)_rehasher;
  15332. (void)_o;
  15333. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ModelT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15334. auto _version = _o->version;
  15335. auto _operator_codes = _o->operator_codes.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::OperatorCode>> (_o->operator_codes.size(), [](size_t i, _VectorArgs *__va) { return CreateOperatorCode(*__va->__fbb, __va->__o->operator_codes[i].get(), __va->__rehasher); }, &_va ) : 0;
  15336. auto _subgraphs = _o->subgraphs.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::SubGraph>> (_o->subgraphs.size(), [](size_t i, _VectorArgs *__va) { return CreateSubGraph(*__va->__fbb, __va->__o->subgraphs[i].get(), __va->__rehasher); }, &_va ) : 0;
  15337. auto _description = _o->description.empty() ? 0 : _fbb.CreateString(_o->description);
  15338. auto _buffers = _o->buffers.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::Buffer>> (_o->buffers.size(), [](size_t i, _VectorArgs *__va) { return CreateBuffer(*__va->__fbb, __va->__o->buffers[i].get(), __va->__rehasher); }, &_va ) : 0;
  15339. auto _metadata_buffer = _o->metadata_buffer.size() ? _fbb.CreateVector(_o->metadata_buffer) : 0;
  15340. auto _metadata = _o->metadata.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::Metadata>> (_o->metadata.size(), [](size_t i, _VectorArgs *__va) { return CreateMetadata(*__va->__fbb, __va->__o->metadata[i].get(), __va->__rehasher); }, &_va ) : 0;
  15341. auto _signature_defs = _o->signature_defs.size() ? _fbb.CreateVector<flatbuffers::Offset<tflite::SignatureDef>> (_o->signature_defs.size(), [](size_t i, _VectorArgs *__va) { return CreateSignatureDef(*__va->__fbb, __va->__o->signature_defs[i].get(), __va->__rehasher); }, &_va ) : 0;
  15342. return tflite::CreateModel(
  15343. _fbb,
  15344. _version,
  15345. _operator_codes,
  15346. _subgraphs,
  15347. _description,
  15348. _buffers,
  15349. _metadata_buffer,
  15350. _metadata,
  15351. _signature_defs);
  15352. }
  15353. inline bool VerifyQuantizationDetails(flatbuffers::Verifier &verifier, const void *obj, QuantizationDetails type) {
  15354. switch (type) {
  15355. case QuantizationDetails_NONE: {
  15356. return true;
  15357. }
  15358. case QuantizationDetails_CustomQuantization: {
  15359. auto ptr = reinterpret_cast<const tflite::CustomQuantization *>(obj);
  15360. return verifier.VerifyTable(ptr);
  15361. }
  15362. default: return true;
  15363. }
  15364. }
  15365. inline bool VerifyQuantizationDetailsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types) {
  15366. if (!values || !types) return !values && !types;
  15367. if (values->size() != types->size()) return false;
  15368. for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
  15369. if (!VerifyQuantizationDetails(
  15370. verifier, values->Get(i), types->GetEnum<QuantizationDetails>(i))) {
  15371. return false;
  15372. }
  15373. }
  15374. return true;
  15375. }
  15376. inline void *QuantizationDetailsUnion::UnPack(const void *obj, QuantizationDetails type, const flatbuffers::resolver_function_t *resolver) {
  15377. (void)resolver;
  15378. switch (type) {
  15379. case QuantizationDetails_CustomQuantization: {
  15380. auto ptr = reinterpret_cast<const tflite::CustomQuantization *>(obj);
  15381. return ptr->UnPack(resolver);
  15382. }
  15383. default: return nullptr;
  15384. }
  15385. }
  15386. inline flatbuffers::Offset<void> QuantizationDetailsUnion::Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher) const {
  15387. (void)_rehasher;
  15388. switch (type) {
  15389. case QuantizationDetails_CustomQuantization: {
  15390. auto ptr = reinterpret_cast<const tflite::CustomQuantizationT *>(value);
  15391. return CreateCustomQuantization(_fbb, ptr, _rehasher).Union();
  15392. }
  15393. default: return 0;
  15394. }
  15395. }
  15396. inline QuantizationDetailsUnion::QuantizationDetailsUnion(const QuantizationDetailsUnion &u) : type(u.type), value(nullptr) {
  15397. switch (type) {
  15398. case QuantizationDetails_CustomQuantization: {
  15399. value = new tflite::CustomQuantizationT(*reinterpret_cast<tflite::CustomQuantizationT *>(u.value));
  15400. break;
  15401. }
  15402. default:
  15403. break;
  15404. }
  15405. }
  15406. inline void QuantizationDetailsUnion::Reset() {
  15407. switch (type) {
  15408. case QuantizationDetails_CustomQuantization: {
  15409. auto ptr = reinterpret_cast<tflite::CustomQuantizationT *>(value);
  15410. delete ptr;
  15411. break;
  15412. }
  15413. default: break;
  15414. }
  15415. value = nullptr;
  15416. type = QuantizationDetails_NONE;
  15417. }
  15418. inline bool VerifySparseIndexVector(flatbuffers::Verifier &verifier, const void *obj, SparseIndexVector type) {
  15419. switch (type) {
  15420. case SparseIndexVector_NONE: {
  15421. return true;
  15422. }
  15423. case SparseIndexVector_Int32Vector: {
  15424. auto ptr = reinterpret_cast<const tflite::Int32Vector *>(obj);
  15425. return verifier.VerifyTable(ptr);
  15426. }
  15427. case SparseIndexVector_Uint16Vector: {
  15428. auto ptr = reinterpret_cast<const tflite::Uint16Vector *>(obj);
  15429. return verifier.VerifyTable(ptr);
  15430. }
  15431. case SparseIndexVector_Uint8Vector: {
  15432. auto ptr = reinterpret_cast<const tflite::Uint8Vector *>(obj);
  15433. return verifier.VerifyTable(ptr);
  15434. }
  15435. default: return true;
  15436. }
  15437. }
  15438. inline bool VerifySparseIndexVectorVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types) {
  15439. if (!values || !types) return !values && !types;
  15440. if (values->size() != types->size()) return false;
  15441. for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
  15442. if (!VerifySparseIndexVector(
  15443. verifier, values->Get(i), types->GetEnum<SparseIndexVector>(i))) {
  15444. return false;
  15445. }
  15446. }
  15447. return true;
  15448. }
  15449. inline void *SparseIndexVectorUnion::UnPack(const void *obj, SparseIndexVector type, const flatbuffers::resolver_function_t *resolver) {
  15450. (void)resolver;
  15451. switch (type) {
  15452. case SparseIndexVector_Int32Vector: {
  15453. auto ptr = reinterpret_cast<const tflite::Int32Vector *>(obj);
  15454. return ptr->UnPack(resolver);
  15455. }
  15456. case SparseIndexVector_Uint16Vector: {
  15457. auto ptr = reinterpret_cast<const tflite::Uint16Vector *>(obj);
  15458. return ptr->UnPack(resolver);
  15459. }
  15460. case SparseIndexVector_Uint8Vector: {
  15461. auto ptr = reinterpret_cast<const tflite::Uint8Vector *>(obj);
  15462. return ptr->UnPack(resolver);
  15463. }
  15464. default: return nullptr;
  15465. }
  15466. }
  15467. inline flatbuffers::Offset<void> SparseIndexVectorUnion::Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher) const {
  15468. (void)_rehasher;
  15469. switch (type) {
  15470. case SparseIndexVector_Int32Vector: {
  15471. auto ptr = reinterpret_cast<const tflite::Int32VectorT *>(value);
  15472. return CreateInt32Vector(_fbb, ptr, _rehasher).Union();
  15473. }
  15474. case SparseIndexVector_Uint16Vector: {
  15475. auto ptr = reinterpret_cast<const tflite::Uint16VectorT *>(value);
  15476. return CreateUint16Vector(_fbb, ptr, _rehasher).Union();
  15477. }
  15478. case SparseIndexVector_Uint8Vector: {
  15479. auto ptr = reinterpret_cast<const tflite::Uint8VectorT *>(value);
  15480. return CreateUint8Vector(_fbb, ptr, _rehasher).Union();
  15481. }
  15482. default: return 0;
  15483. }
  15484. }
  15485. inline SparseIndexVectorUnion::SparseIndexVectorUnion(const SparseIndexVectorUnion &u) : type(u.type), value(nullptr) {
  15486. switch (type) {
  15487. case SparseIndexVector_Int32Vector: {
  15488. value = new tflite::Int32VectorT(*reinterpret_cast<tflite::Int32VectorT *>(u.value));
  15489. break;
  15490. }
  15491. case SparseIndexVector_Uint16Vector: {
  15492. value = new tflite::Uint16VectorT(*reinterpret_cast<tflite::Uint16VectorT *>(u.value));
  15493. break;
  15494. }
  15495. case SparseIndexVector_Uint8Vector: {
  15496. value = new tflite::Uint8VectorT(*reinterpret_cast<tflite::Uint8VectorT *>(u.value));
  15497. break;
  15498. }
  15499. default:
  15500. break;
  15501. }
  15502. }
  15503. inline void SparseIndexVectorUnion::Reset() {
  15504. switch (type) {
  15505. case SparseIndexVector_Int32Vector: {
  15506. auto ptr = reinterpret_cast<tflite::Int32VectorT *>(value);
  15507. delete ptr;
  15508. break;
  15509. }
  15510. case SparseIndexVector_Uint16Vector: {
  15511. auto ptr = reinterpret_cast<tflite::Uint16VectorT *>(value);
  15512. delete ptr;
  15513. break;
  15514. }
  15515. case SparseIndexVector_Uint8Vector: {
  15516. auto ptr = reinterpret_cast<tflite::Uint8VectorT *>(value);
  15517. delete ptr;
  15518. break;
  15519. }
  15520. default: break;
  15521. }
  15522. value = nullptr;
  15523. type = SparseIndexVector_NONE;
  15524. }
  15525. inline bool VerifyBuiltinOptions(flatbuffers::Verifier &verifier, const void *obj, BuiltinOptions type) {
  15526. switch (type) {
  15527. case BuiltinOptions_NONE: {
  15528. return true;
  15529. }
  15530. case BuiltinOptions_Conv2DOptions: {
  15531. auto ptr = reinterpret_cast<const tflite::Conv2DOptions *>(obj);
  15532. return verifier.VerifyTable(ptr);
  15533. }
  15534. case BuiltinOptions_DepthwiseConv2DOptions: {
  15535. auto ptr = reinterpret_cast<const tflite::DepthwiseConv2DOptions *>(obj);
  15536. return verifier.VerifyTable(ptr);
  15537. }
  15538. case BuiltinOptions_ConcatEmbeddingsOptions: {
  15539. auto ptr = reinterpret_cast<const tflite::ConcatEmbeddingsOptions *>(obj);
  15540. return verifier.VerifyTable(ptr);
  15541. }
  15542. case BuiltinOptions_LSHProjectionOptions: {
  15543. auto ptr = reinterpret_cast<const tflite::LSHProjectionOptions *>(obj);
  15544. return verifier.VerifyTable(ptr);
  15545. }
  15546. case BuiltinOptions_Pool2DOptions: {
  15547. auto ptr = reinterpret_cast<const tflite::Pool2DOptions *>(obj);
  15548. return verifier.VerifyTable(ptr);
  15549. }
  15550. case BuiltinOptions_SVDFOptions: {
  15551. auto ptr = reinterpret_cast<const tflite::SVDFOptions *>(obj);
  15552. return verifier.VerifyTable(ptr);
  15553. }
  15554. case BuiltinOptions_RNNOptions: {
  15555. auto ptr = reinterpret_cast<const tflite::RNNOptions *>(obj);
  15556. return verifier.VerifyTable(ptr);
  15557. }
  15558. case BuiltinOptions_FullyConnectedOptions: {
  15559. auto ptr = reinterpret_cast<const tflite::FullyConnectedOptions *>(obj);
  15560. return verifier.VerifyTable(ptr);
  15561. }
  15562. case BuiltinOptions_SoftmaxOptions: {
  15563. auto ptr = reinterpret_cast<const tflite::SoftmaxOptions *>(obj);
  15564. return verifier.VerifyTable(ptr);
  15565. }
  15566. case BuiltinOptions_ConcatenationOptions: {
  15567. auto ptr = reinterpret_cast<const tflite::ConcatenationOptions *>(obj);
  15568. return verifier.VerifyTable(ptr);
  15569. }
  15570. case BuiltinOptions_AddOptions: {
  15571. auto ptr = reinterpret_cast<const tflite::AddOptions *>(obj);
  15572. return verifier.VerifyTable(ptr);
  15573. }
  15574. case BuiltinOptions_L2NormOptions: {
  15575. auto ptr = reinterpret_cast<const tflite::L2NormOptions *>(obj);
  15576. return verifier.VerifyTable(ptr);
  15577. }
  15578. case BuiltinOptions_LocalResponseNormalizationOptions: {
  15579. auto ptr = reinterpret_cast<const tflite::LocalResponseNormalizationOptions *>(obj);
  15580. return verifier.VerifyTable(ptr);
  15581. }
  15582. case BuiltinOptions_LSTMOptions: {
  15583. auto ptr = reinterpret_cast<const tflite::LSTMOptions *>(obj);
  15584. return verifier.VerifyTable(ptr);
  15585. }
  15586. case BuiltinOptions_ResizeBilinearOptions: {
  15587. auto ptr = reinterpret_cast<const tflite::ResizeBilinearOptions *>(obj);
  15588. return verifier.VerifyTable(ptr);
  15589. }
  15590. case BuiltinOptions_CallOptions: {
  15591. auto ptr = reinterpret_cast<const tflite::CallOptions *>(obj);
  15592. return verifier.VerifyTable(ptr);
  15593. }
  15594. case BuiltinOptions_ReshapeOptions: {
  15595. auto ptr = reinterpret_cast<const tflite::ReshapeOptions *>(obj);
  15596. return verifier.VerifyTable(ptr);
  15597. }
  15598. case BuiltinOptions_SkipGramOptions: {
  15599. auto ptr = reinterpret_cast<const tflite::SkipGramOptions *>(obj);
  15600. return verifier.VerifyTable(ptr);
  15601. }
  15602. case BuiltinOptions_SpaceToDepthOptions: {
  15603. auto ptr = reinterpret_cast<const tflite::SpaceToDepthOptions *>(obj);
  15604. return verifier.VerifyTable(ptr);
  15605. }
  15606. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  15607. auto ptr = reinterpret_cast<const tflite::EmbeddingLookupSparseOptions *>(obj);
  15608. return verifier.VerifyTable(ptr);
  15609. }
  15610. case BuiltinOptions_MulOptions: {
  15611. auto ptr = reinterpret_cast<const tflite::MulOptions *>(obj);
  15612. return verifier.VerifyTable(ptr);
  15613. }
  15614. case BuiltinOptions_PadOptions: {
  15615. auto ptr = reinterpret_cast<const tflite::PadOptions *>(obj);
  15616. return verifier.VerifyTable(ptr);
  15617. }
  15618. case BuiltinOptions_GatherOptions: {
  15619. auto ptr = reinterpret_cast<const tflite::GatherOptions *>(obj);
  15620. return verifier.VerifyTable(ptr);
  15621. }
  15622. case BuiltinOptions_BatchToSpaceNDOptions: {
  15623. auto ptr = reinterpret_cast<const tflite::BatchToSpaceNDOptions *>(obj);
  15624. return verifier.VerifyTable(ptr);
  15625. }
  15626. case BuiltinOptions_SpaceToBatchNDOptions: {
  15627. auto ptr = reinterpret_cast<const tflite::SpaceToBatchNDOptions *>(obj);
  15628. return verifier.VerifyTable(ptr);
  15629. }
  15630. case BuiltinOptions_TransposeOptions: {
  15631. auto ptr = reinterpret_cast<const tflite::TransposeOptions *>(obj);
  15632. return verifier.VerifyTable(ptr);
  15633. }
  15634. case BuiltinOptions_ReducerOptions: {
  15635. auto ptr = reinterpret_cast<const tflite::ReducerOptions *>(obj);
  15636. return verifier.VerifyTable(ptr);
  15637. }
  15638. case BuiltinOptions_SubOptions: {
  15639. auto ptr = reinterpret_cast<const tflite::SubOptions *>(obj);
  15640. return verifier.VerifyTable(ptr);
  15641. }
  15642. case BuiltinOptions_DivOptions: {
  15643. auto ptr = reinterpret_cast<const tflite::DivOptions *>(obj);
  15644. return verifier.VerifyTable(ptr);
  15645. }
  15646. case BuiltinOptions_SqueezeOptions: {
  15647. auto ptr = reinterpret_cast<const tflite::SqueezeOptions *>(obj);
  15648. return verifier.VerifyTable(ptr);
  15649. }
  15650. case BuiltinOptions_SequenceRNNOptions: {
  15651. auto ptr = reinterpret_cast<const tflite::SequenceRNNOptions *>(obj);
  15652. return verifier.VerifyTable(ptr);
  15653. }
  15654. case BuiltinOptions_StridedSliceOptions: {
  15655. auto ptr = reinterpret_cast<const tflite::StridedSliceOptions *>(obj);
  15656. return verifier.VerifyTable(ptr);
  15657. }
  15658. case BuiltinOptions_ExpOptions: {
  15659. auto ptr = reinterpret_cast<const tflite::ExpOptions *>(obj);
  15660. return verifier.VerifyTable(ptr);
  15661. }
  15662. case BuiltinOptions_TopKV2Options: {
  15663. auto ptr = reinterpret_cast<const tflite::TopKV2Options *>(obj);
  15664. return verifier.VerifyTable(ptr);
  15665. }
  15666. case BuiltinOptions_SplitOptions: {
  15667. auto ptr = reinterpret_cast<const tflite::SplitOptions *>(obj);
  15668. return verifier.VerifyTable(ptr);
  15669. }
  15670. case BuiltinOptions_LogSoftmaxOptions: {
  15671. auto ptr = reinterpret_cast<const tflite::LogSoftmaxOptions *>(obj);
  15672. return verifier.VerifyTable(ptr);
  15673. }
  15674. case BuiltinOptions_CastOptions: {
  15675. auto ptr = reinterpret_cast<const tflite::CastOptions *>(obj);
  15676. return verifier.VerifyTable(ptr);
  15677. }
  15678. case BuiltinOptions_DequantizeOptions: {
  15679. auto ptr = reinterpret_cast<const tflite::DequantizeOptions *>(obj);
  15680. return verifier.VerifyTable(ptr);
  15681. }
  15682. case BuiltinOptions_MaximumMinimumOptions: {
  15683. auto ptr = reinterpret_cast<const tflite::MaximumMinimumOptions *>(obj);
  15684. return verifier.VerifyTable(ptr);
  15685. }
  15686. case BuiltinOptions_ArgMaxOptions: {
  15687. auto ptr = reinterpret_cast<const tflite::ArgMaxOptions *>(obj);
  15688. return verifier.VerifyTable(ptr);
  15689. }
  15690. case BuiltinOptions_LessOptions: {
  15691. auto ptr = reinterpret_cast<const tflite::LessOptions *>(obj);
  15692. return verifier.VerifyTable(ptr);
  15693. }
  15694. case BuiltinOptions_NegOptions: {
  15695. auto ptr = reinterpret_cast<const tflite::NegOptions *>(obj);
  15696. return verifier.VerifyTable(ptr);
  15697. }
  15698. case BuiltinOptions_PadV2Options: {
  15699. auto ptr = reinterpret_cast<const tflite::PadV2Options *>(obj);
  15700. return verifier.VerifyTable(ptr);
  15701. }
  15702. case BuiltinOptions_GreaterOptions: {
  15703. auto ptr = reinterpret_cast<const tflite::GreaterOptions *>(obj);
  15704. return verifier.VerifyTable(ptr);
  15705. }
  15706. case BuiltinOptions_GreaterEqualOptions: {
  15707. auto ptr = reinterpret_cast<const tflite::GreaterEqualOptions *>(obj);
  15708. return verifier.VerifyTable(ptr);
  15709. }
  15710. case BuiltinOptions_LessEqualOptions: {
  15711. auto ptr = reinterpret_cast<const tflite::LessEqualOptions *>(obj);
  15712. return verifier.VerifyTable(ptr);
  15713. }
  15714. case BuiltinOptions_SelectOptions: {
  15715. auto ptr = reinterpret_cast<const tflite::SelectOptions *>(obj);
  15716. return verifier.VerifyTable(ptr);
  15717. }
  15718. case BuiltinOptions_SliceOptions: {
  15719. auto ptr = reinterpret_cast<const tflite::SliceOptions *>(obj);
  15720. return verifier.VerifyTable(ptr);
  15721. }
  15722. case BuiltinOptions_TransposeConvOptions: {
  15723. auto ptr = reinterpret_cast<const tflite::TransposeConvOptions *>(obj);
  15724. return verifier.VerifyTable(ptr);
  15725. }
  15726. case BuiltinOptions_SparseToDenseOptions: {
  15727. auto ptr = reinterpret_cast<const tflite::SparseToDenseOptions *>(obj);
  15728. return verifier.VerifyTable(ptr);
  15729. }
  15730. case BuiltinOptions_TileOptions: {
  15731. auto ptr = reinterpret_cast<const tflite::TileOptions *>(obj);
  15732. return verifier.VerifyTable(ptr);
  15733. }
  15734. case BuiltinOptions_ExpandDimsOptions: {
  15735. auto ptr = reinterpret_cast<const tflite::ExpandDimsOptions *>(obj);
  15736. return verifier.VerifyTable(ptr);
  15737. }
  15738. case BuiltinOptions_EqualOptions: {
  15739. auto ptr = reinterpret_cast<const tflite::EqualOptions *>(obj);
  15740. return verifier.VerifyTable(ptr);
  15741. }
  15742. case BuiltinOptions_NotEqualOptions: {
  15743. auto ptr = reinterpret_cast<const tflite::NotEqualOptions *>(obj);
  15744. return verifier.VerifyTable(ptr);
  15745. }
  15746. case BuiltinOptions_ShapeOptions: {
  15747. auto ptr = reinterpret_cast<const tflite::ShapeOptions *>(obj);
  15748. return verifier.VerifyTable(ptr);
  15749. }
  15750. case BuiltinOptions_PowOptions: {
  15751. auto ptr = reinterpret_cast<const tflite::PowOptions *>(obj);
  15752. return verifier.VerifyTable(ptr);
  15753. }
  15754. case BuiltinOptions_ArgMinOptions: {
  15755. auto ptr = reinterpret_cast<const tflite::ArgMinOptions *>(obj);
  15756. return verifier.VerifyTable(ptr);
  15757. }
  15758. case BuiltinOptions_FakeQuantOptions: {
  15759. auto ptr = reinterpret_cast<const tflite::FakeQuantOptions *>(obj);
  15760. return verifier.VerifyTable(ptr);
  15761. }
  15762. case BuiltinOptions_PackOptions: {
  15763. auto ptr = reinterpret_cast<const tflite::PackOptions *>(obj);
  15764. return verifier.VerifyTable(ptr);
  15765. }
  15766. case BuiltinOptions_LogicalOrOptions: {
  15767. auto ptr = reinterpret_cast<const tflite::LogicalOrOptions *>(obj);
  15768. return verifier.VerifyTable(ptr);
  15769. }
  15770. case BuiltinOptions_OneHotOptions: {
  15771. auto ptr = reinterpret_cast<const tflite::OneHotOptions *>(obj);
  15772. return verifier.VerifyTable(ptr);
  15773. }
  15774. case BuiltinOptions_LogicalAndOptions: {
  15775. auto ptr = reinterpret_cast<const tflite::LogicalAndOptions *>(obj);
  15776. return verifier.VerifyTable(ptr);
  15777. }
  15778. case BuiltinOptions_LogicalNotOptions: {
  15779. auto ptr = reinterpret_cast<const tflite::LogicalNotOptions *>(obj);
  15780. return verifier.VerifyTable(ptr);
  15781. }
  15782. case BuiltinOptions_UnpackOptions: {
  15783. auto ptr = reinterpret_cast<const tflite::UnpackOptions *>(obj);
  15784. return verifier.VerifyTable(ptr);
  15785. }
  15786. case BuiltinOptions_FloorDivOptions: {
  15787. auto ptr = reinterpret_cast<const tflite::FloorDivOptions *>(obj);
  15788. return verifier.VerifyTable(ptr);
  15789. }
  15790. case BuiltinOptions_SquareOptions: {
  15791. auto ptr = reinterpret_cast<const tflite::SquareOptions *>(obj);
  15792. return verifier.VerifyTable(ptr);
  15793. }
  15794. case BuiltinOptions_ZerosLikeOptions: {
  15795. auto ptr = reinterpret_cast<const tflite::ZerosLikeOptions *>(obj);
  15796. return verifier.VerifyTable(ptr);
  15797. }
  15798. case BuiltinOptions_FillOptions: {
  15799. auto ptr = reinterpret_cast<const tflite::FillOptions *>(obj);
  15800. return verifier.VerifyTable(ptr);
  15801. }
  15802. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  15803. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptions *>(obj);
  15804. return verifier.VerifyTable(ptr);
  15805. }
  15806. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  15807. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceRNNOptions *>(obj);
  15808. return verifier.VerifyTable(ptr);
  15809. }
  15810. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  15811. auto ptr = reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptions *>(obj);
  15812. return verifier.VerifyTable(ptr);
  15813. }
  15814. case BuiltinOptions_FloorModOptions: {
  15815. auto ptr = reinterpret_cast<const tflite::FloorModOptions *>(obj);
  15816. return verifier.VerifyTable(ptr);
  15817. }
  15818. case BuiltinOptions_RangeOptions: {
  15819. auto ptr = reinterpret_cast<const tflite::RangeOptions *>(obj);
  15820. return verifier.VerifyTable(ptr);
  15821. }
  15822. case BuiltinOptions_ResizeNearestNeighborOptions: {
  15823. auto ptr = reinterpret_cast<const tflite::ResizeNearestNeighborOptions *>(obj);
  15824. return verifier.VerifyTable(ptr);
  15825. }
  15826. case BuiltinOptions_LeakyReluOptions: {
  15827. auto ptr = reinterpret_cast<const tflite::LeakyReluOptions *>(obj);
  15828. return verifier.VerifyTable(ptr);
  15829. }
  15830. case BuiltinOptions_SquaredDifferenceOptions: {
  15831. auto ptr = reinterpret_cast<const tflite::SquaredDifferenceOptions *>(obj);
  15832. return verifier.VerifyTable(ptr);
  15833. }
  15834. case BuiltinOptions_MirrorPadOptions: {
  15835. auto ptr = reinterpret_cast<const tflite::MirrorPadOptions *>(obj);
  15836. return verifier.VerifyTable(ptr);
  15837. }
  15838. case BuiltinOptions_AbsOptions: {
  15839. auto ptr = reinterpret_cast<const tflite::AbsOptions *>(obj);
  15840. return verifier.VerifyTable(ptr);
  15841. }
  15842. case BuiltinOptions_SplitVOptions: {
  15843. auto ptr = reinterpret_cast<const tflite::SplitVOptions *>(obj);
  15844. return verifier.VerifyTable(ptr);
  15845. }
  15846. case BuiltinOptions_UniqueOptions: {
  15847. auto ptr = reinterpret_cast<const tflite::UniqueOptions *>(obj);
  15848. return verifier.VerifyTable(ptr);
  15849. }
  15850. case BuiltinOptions_ReverseV2Options: {
  15851. auto ptr = reinterpret_cast<const tflite::ReverseV2Options *>(obj);
  15852. return verifier.VerifyTable(ptr);
  15853. }
  15854. case BuiltinOptions_AddNOptions: {
  15855. auto ptr = reinterpret_cast<const tflite::AddNOptions *>(obj);
  15856. return verifier.VerifyTable(ptr);
  15857. }
  15858. case BuiltinOptions_GatherNdOptions: {
  15859. auto ptr = reinterpret_cast<const tflite::GatherNdOptions *>(obj);
  15860. return verifier.VerifyTable(ptr);
  15861. }
  15862. case BuiltinOptions_CosOptions: {
  15863. auto ptr = reinterpret_cast<const tflite::CosOptions *>(obj);
  15864. return verifier.VerifyTable(ptr);
  15865. }
  15866. case BuiltinOptions_WhereOptions: {
  15867. auto ptr = reinterpret_cast<const tflite::WhereOptions *>(obj);
  15868. return verifier.VerifyTable(ptr);
  15869. }
  15870. case BuiltinOptions_RankOptions: {
  15871. auto ptr = reinterpret_cast<const tflite::RankOptions *>(obj);
  15872. return verifier.VerifyTable(ptr);
  15873. }
  15874. case BuiltinOptions_ReverseSequenceOptions: {
  15875. auto ptr = reinterpret_cast<const tflite::ReverseSequenceOptions *>(obj);
  15876. return verifier.VerifyTable(ptr);
  15877. }
  15878. case BuiltinOptions_MatrixDiagOptions: {
  15879. auto ptr = reinterpret_cast<const tflite::MatrixDiagOptions *>(obj);
  15880. return verifier.VerifyTable(ptr);
  15881. }
  15882. case BuiltinOptions_QuantizeOptions: {
  15883. auto ptr = reinterpret_cast<const tflite::QuantizeOptions *>(obj);
  15884. return verifier.VerifyTable(ptr);
  15885. }
  15886. case BuiltinOptions_MatrixSetDiagOptions: {
  15887. auto ptr = reinterpret_cast<const tflite::MatrixSetDiagOptions *>(obj);
  15888. return verifier.VerifyTable(ptr);
  15889. }
  15890. case BuiltinOptions_HardSwishOptions: {
  15891. auto ptr = reinterpret_cast<const tflite::HardSwishOptions *>(obj);
  15892. return verifier.VerifyTable(ptr);
  15893. }
  15894. case BuiltinOptions_IfOptions: {
  15895. auto ptr = reinterpret_cast<const tflite::IfOptions *>(obj);
  15896. return verifier.VerifyTable(ptr);
  15897. }
  15898. case BuiltinOptions_WhileOptions: {
  15899. auto ptr = reinterpret_cast<const tflite::WhileOptions *>(obj);
  15900. return verifier.VerifyTable(ptr);
  15901. }
  15902. case BuiltinOptions_DepthToSpaceOptions: {
  15903. auto ptr = reinterpret_cast<const tflite::DepthToSpaceOptions *>(obj);
  15904. return verifier.VerifyTable(ptr);
  15905. }
  15906. case BuiltinOptions_NonMaxSuppressionV4Options: {
  15907. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV4Options *>(obj);
  15908. return verifier.VerifyTable(ptr);
  15909. }
  15910. case BuiltinOptions_NonMaxSuppressionV5Options: {
  15911. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV5Options *>(obj);
  15912. return verifier.VerifyTable(ptr);
  15913. }
  15914. case BuiltinOptions_ScatterNdOptions: {
  15915. auto ptr = reinterpret_cast<const tflite::ScatterNdOptions *>(obj);
  15916. return verifier.VerifyTable(ptr);
  15917. }
  15918. case BuiltinOptions_SelectV2Options: {
  15919. auto ptr = reinterpret_cast<const tflite::SelectV2Options *>(obj);
  15920. return verifier.VerifyTable(ptr);
  15921. }
  15922. case BuiltinOptions_DensifyOptions: {
  15923. auto ptr = reinterpret_cast<const tflite::DensifyOptions *>(obj);
  15924. return verifier.VerifyTable(ptr);
  15925. }
  15926. case BuiltinOptions_SegmentSumOptions: {
  15927. auto ptr = reinterpret_cast<const tflite::SegmentSumOptions *>(obj);
  15928. return verifier.VerifyTable(ptr);
  15929. }
  15930. case BuiltinOptions_BatchMatMulOptions: {
  15931. auto ptr = reinterpret_cast<const tflite::BatchMatMulOptions *>(obj);
  15932. return verifier.VerifyTable(ptr);
  15933. }
  15934. case BuiltinOptions_CumsumOptions: {
  15935. auto ptr = reinterpret_cast<const tflite::CumsumOptions *>(obj);
  15936. return verifier.VerifyTable(ptr);
  15937. }
  15938. case BuiltinOptions_CallOnceOptions: {
  15939. auto ptr = reinterpret_cast<const tflite::CallOnceOptions *>(obj);
  15940. return verifier.VerifyTable(ptr);
  15941. }
  15942. case BuiltinOptions_BroadcastToOptions: {
  15943. auto ptr = reinterpret_cast<const tflite::BroadcastToOptions *>(obj);
  15944. return verifier.VerifyTable(ptr);
  15945. }
  15946. case BuiltinOptions_Rfft2dOptions: {
  15947. auto ptr = reinterpret_cast<const tflite::Rfft2dOptions *>(obj);
  15948. return verifier.VerifyTable(ptr);
  15949. }
  15950. case BuiltinOptions_Conv3DOptions: {
  15951. auto ptr = reinterpret_cast<const tflite::Conv3DOptions *>(obj);
  15952. return verifier.VerifyTable(ptr);
  15953. }
  15954. case BuiltinOptions_HashtableOptions: {
  15955. auto ptr = reinterpret_cast<const tflite::HashtableOptions *>(obj);
  15956. return verifier.VerifyTable(ptr);
  15957. }
  15958. case BuiltinOptions_HashtableFindOptions: {
  15959. auto ptr = reinterpret_cast<const tflite::HashtableFindOptions *>(obj);
  15960. return verifier.VerifyTable(ptr);
  15961. }
  15962. case BuiltinOptions_HashtableImportOptions: {
  15963. auto ptr = reinterpret_cast<const tflite::HashtableImportOptions *>(obj);
  15964. return verifier.VerifyTable(ptr);
  15965. }
  15966. case BuiltinOptions_HashtableSizeOptions: {
  15967. auto ptr = reinterpret_cast<const tflite::HashtableSizeOptions *>(obj);
  15968. return verifier.VerifyTable(ptr);
  15969. }
  15970. case BuiltinOptions_VarHandleOptions: {
  15971. auto ptr = reinterpret_cast<const tflite::VarHandleOptions *>(obj);
  15972. return verifier.VerifyTable(ptr);
  15973. }
  15974. case BuiltinOptions_ReadVariableOptions: {
  15975. auto ptr = reinterpret_cast<const tflite::ReadVariableOptions *>(obj);
  15976. return verifier.VerifyTable(ptr);
  15977. }
  15978. case BuiltinOptions_AssignVariableOptions: {
  15979. auto ptr = reinterpret_cast<const tflite::AssignVariableOptions *>(obj);
  15980. return verifier.VerifyTable(ptr);
  15981. }
  15982. case BuiltinOptions_RandomOptions: {
  15983. auto ptr = reinterpret_cast<const tflite::RandomOptions *>(obj);
  15984. return verifier.VerifyTable(ptr);
  15985. }
  15986. case BuiltinOptions_BucketizeOptions: {
  15987. auto ptr = reinterpret_cast<const tflite::BucketizeOptions *>(obj);
  15988. return verifier.VerifyTable(ptr);
  15989. }
  15990. case BuiltinOptions_GeluOptions: {
  15991. auto ptr = reinterpret_cast<const tflite::GeluOptions *>(obj);
  15992. return verifier.VerifyTable(ptr);
  15993. }
  15994. case BuiltinOptions_DynamicUpdateSliceOptions: {
  15995. auto ptr = reinterpret_cast<const tflite::DynamicUpdateSliceOptions *>(obj);
  15996. return verifier.VerifyTable(ptr);
  15997. }
  15998. case BuiltinOptions_UnsortedSegmentProdOptions: {
  15999. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentProdOptions *>(obj);
  16000. return verifier.VerifyTable(ptr);
  16001. }
  16002. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  16003. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMaxOptions *>(obj);
  16004. return verifier.VerifyTable(ptr);
  16005. }
  16006. case BuiltinOptions_UnsortedSegmentMinOptions: {
  16007. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMinOptions *>(obj);
  16008. return verifier.VerifyTable(ptr);
  16009. }
  16010. case BuiltinOptions_UnsortedSegmentSumOptions: {
  16011. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentSumOptions *>(obj);
  16012. return verifier.VerifyTable(ptr);
  16013. }
  16014. case BuiltinOptions_ATan2Options: {
  16015. auto ptr = reinterpret_cast<const tflite::ATan2Options *>(obj);
  16016. return verifier.VerifyTable(ptr);
  16017. }
  16018. case BuiltinOptions_SignOptions: {
  16019. auto ptr = reinterpret_cast<const tflite::SignOptions *>(obj);
  16020. return verifier.VerifyTable(ptr);
  16021. }
  16022. default: return true;
  16023. }
  16024. }
  16025. inline bool VerifyBuiltinOptionsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types) {
  16026. if (!values || !types) return !values && !types;
  16027. if (values->size() != types->size()) return false;
  16028. for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
  16029. if (!VerifyBuiltinOptions(
  16030. verifier, values->Get(i), types->GetEnum<BuiltinOptions>(i))) {
  16031. return false;
  16032. }
  16033. }
  16034. return true;
  16035. }
  16036. inline void *BuiltinOptionsUnion::UnPack(const void *obj, BuiltinOptions type, const flatbuffers::resolver_function_t *resolver) {
  16037. (void)resolver;
  16038. switch (type) {
  16039. case BuiltinOptions_Conv2DOptions: {
  16040. auto ptr = reinterpret_cast<const tflite::Conv2DOptions *>(obj);
  16041. return ptr->UnPack(resolver);
  16042. }
  16043. case BuiltinOptions_DepthwiseConv2DOptions: {
  16044. auto ptr = reinterpret_cast<const tflite::DepthwiseConv2DOptions *>(obj);
  16045. return ptr->UnPack(resolver);
  16046. }
  16047. case BuiltinOptions_ConcatEmbeddingsOptions: {
  16048. auto ptr = reinterpret_cast<const tflite::ConcatEmbeddingsOptions *>(obj);
  16049. return ptr->UnPack(resolver);
  16050. }
  16051. case BuiltinOptions_LSHProjectionOptions: {
  16052. auto ptr = reinterpret_cast<const tflite::LSHProjectionOptions *>(obj);
  16053. return ptr->UnPack(resolver);
  16054. }
  16055. case BuiltinOptions_Pool2DOptions: {
  16056. auto ptr = reinterpret_cast<const tflite::Pool2DOptions *>(obj);
  16057. return ptr->UnPack(resolver);
  16058. }
  16059. case BuiltinOptions_SVDFOptions: {
  16060. auto ptr = reinterpret_cast<const tflite::SVDFOptions *>(obj);
  16061. return ptr->UnPack(resolver);
  16062. }
  16063. case BuiltinOptions_RNNOptions: {
  16064. auto ptr = reinterpret_cast<const tflite::RNNOptions *>(obj);
  16065. return ptr->UnPack(resolver);
  16066. }
  16067. case BuiltinOptions_FullyConnectedOptions: {
  16068. auto ptr = reinterpret_cast<const tflite::FullyConnectedOptions *>(obj);
  16069. return ptr->UnPack(resolver);
  16070. }
  16071. case BuiltinOptions_SoftmaxOptions: {
  16072. auto ptr = reinterpret_cast<const tflite::SoftmaxOptions *>(obj);
  16073. return ptr->UnPack(resolver);
  16074. }
  16075. case BuiltinOptions_ConcatenationOptions: {
  16076. auto ptr = reinterpret_cast<const tflite::ConcatenationOptions *>(obj);
  16077. return ptr->UnPack(resolver);
  16078. }
  16079. case BuiltinOptions_AddOptions: {
  16080. auto ptr = reinterpret_cast<const tflite::AddOptions *>(obj);
  16081. return ptr->UnPack(resolver);
  16082. }
  16083. case BuiltinOptions_L2NormOptions: {
  16084. auto ptr = reinterpret_cast<const tflite::L2NormOptions *>(obj);
  16085. return ptr->UnPack(resolver);
  16086. }
  16087. case BuiltinOptions_LocalResponseNormalizationOptions: {
  16088. auto ptr = reinterpret_cast<const tflite::LocalResponseNormalizationOptions *>(obj);
  16089. return ptr->UnPack(resolver);
  16090. }
  16091. case BuiltinOptions_LSTMOptions: {
  16092. auto ptr = reinterpret_cast<const tflite::LSTMOptions *>(obj);
  16093. return ptr->UnPack(resolver);
  16094. }
  16095. case BuiltinOptions_ResizeBilinearOptions: {
  16096. auto ptr = reinterpret_cast<const tflite::ResizeBilinearOptions *>(obj);
  16097. return ptr->UnPack(resolver);
  16098. }
  16099. case BuiltinOptions_CallOptions: {
  16100. auto ptr = reinterpret_cast<const tflite::CallOptions *>(obj);
  16101. return ptr->UnPack(resolver);
  16102. }
  16103. case BuiltinOptions_ReshapeOptions: {
  16104. auto ptr = reinterpret_cast<const tflite::ReshapeOptions *>(obj);
  16105. return ptr->UnPack(resolver);
  16106. }
  16107. case BuiltinOptions_SkipGramOptions: {
  16108. auto ptr = reinterpret_cast<const tflite::SkipGramOptions *>(obj);
  16109. return ptr->UnPack(resolver);
  16110. }
  16111. case BuiltinOptions_SpaceToDepthOptions: {
  16112. auto ptr = reinterpret_cast<const tflite::SpaceToDepthOptions *>(obj);
  16113. return ptr->UnPack(resolver);
  16114. }
  16115. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  16116. auto ptr = reinterpret_cast<const tflite::EmbeddingLookupSparseOptions *>(obj);
  16117. return ptr->UnPack(resolver);
  16118. }
  16119. case BuiltinOptions_MulOptions: {
  16120. auto ptr = reinterpret_cast<const tflite::MulOptions *>(obj);
  16121. return ptr->UnPack(resolver);
  16122. }
  16123. case BuiltinOptions_PadOptions: {
  16124. auto ptr = reinterpret_cast<const tflite::PadOptions *>(obj);
  16125. return ptr->UnPack(resolver);
  16126. }
  16127. case BuiltinOptions_GatherOptions: {
  16128. auto ptr = reinterpret_cast<const tflite::GatherOptions *>(obj);
  16129. return ptr->UnPack(resolver);
  16130. }
  16131. case BuiltinOptions_BatchToSpaceNDOptions: {
  16132. auto ptr = reinterpret_cast<const tflite::BatchToSpaceNDOptions *>(obj);
  16133. return ptr->UnPack(resolver);
  16134. }
  16135. case BuiltinOptions_SpaceToBatchNDOptions: {
  16136. auto ptr = reinterpret_cast<const tflite::SpaceToBatchNDOptions *>(obj);
  16137. return ptr->UnPack(resolver);
  16138. }
  16139. case BuiltinOptions_TransposeOptions: {
  16140. auto ptr = reinterpret_cast<const tflite::TransposeOptions *>(obj);
  16141. return ptr->UnPack(resolver);
  16142. }
  16143. case BuiltinOptions_ReducerOptions: {
  16144. auto ptr = reinterpret_cast<const tflite::ReducerOptions *>(obj);
  16145. return ptr->UnPack(resolver);
  16146. }
  16147. case BuiltinOptions_SubOptions: {
  16148. auto ptr = reinterpret_cast<const tflite::SubOptions *>(obj);
  16149. return ptr->UnPack(resolver);
  16150. }
  16151. case BuiltinOptions_DivOptions: {
  16152. auto ptr = reinterpret_cast<const tflite::DivOptions *>(obj);
  16153. return ptr->UnPack(resolver);
  16154. }
  16155. case BuiltinOptions_SqueezeOptions: {
  16156. auto ptr = reinterpret_cast<const tflite::SqueezeOptions *>(obj);
  16157. return ptr->UnPack(resolver);
  16158. }
  16159. case BuiltinOptions_SequenceRNNOptions: {
  16160. auto ptr = reinterpret_cast<const tflite::SequenceRNNOptions *>(obj);
  16161. return ptr->UnPack(resolver);
  16162. }
  16163. case BuiltinOptions_StridedSliceOptions: {
  16164. auto ptr = reinterpret_cast<const tflite::StridedSliceOptions *>(obj);
  16165. return ptr->UnPack(resolver);
  16166. }
  16167. case BuiltinOptions_ExpOptions: {
  16168. auto ptr = reinterpret_cast<const tflite::ExpOptions *>(obj);
  16169. return ptr->UnPack(resolver);
  16170. }
  16171. case BuiltinOptions_TopKV2Options: {
  16172. auto ptr = reinterpret_cast<const tflite::TopKV2Options *>(obj);
  16173. return ptr->UnPack(resolver);
  16174. }
  16175. case BuiltinOptions_SplitOptions: {
  16176. auto ptr = reinterpret_cast<const tflite::SplitOptions *>(obj);
  16177. return ptr->UnPack(resolver);
  16178. }
  16179. case BuiltinOptions_LogSoftmaxOptions: {
  16180. auto ptr = reinterpret_cast<const tflite::LogSoftmaxOptions *>(obj);
  16181. return ptr->UnPack(resolver);
  16182. }
  16183. case BuiltinOptions_CastOptions: {
  16184. auto ptr = reinterpret_cast<const tflite::CastOptions *>(obj);
  16185. return ptr->UnPack(resolver);
  16186. }
  16187. case BuiltinOptions_DequantizeOptions: {
  16188. auto ptr = reinterpret_cast<const tflite::DequantizeOptions *>(obj);
  16189. return ptr->UnPack(resolver);
  16190. }
  16191. case BuiltinOptions_MaximumMinimumOptions: {
  16192. auto ptr = reinterpret_cast<const tflite::MaximumMinimumOptions *>(obj);
  16193. return ptr->UnPack(resolver);
  16194. }
  16195. case BuiltinOptions_ArgMaxOptions: {
  16196. auto ptr = reinterpret_cast<const tflite::ArgMaxOptions *>(obj);
  16197. return ptr->UnPack(resolver);
  16198. }
  16199. case BuiltinOptions_LessOptions: {
  16200. auto ptr = reinterpret_cast<const tflite::LessOptions *>(obj);
  16201. return ptr->UnPack(resolver);
  16202. }
  16203. case BuiltinOptions_NegOptions: {
  16204. auto ptr = reinterpret_cast<const tflite::NegOptions *>(obj);
  16205. return ptr->UnPack(resolver);
  16206. }
  16207. case BuiltinOptions_PadV2Options: {
  16208. auto ptr = reinterpret_cast<const tflite::PadV2Options *>(obj);
  16209. return ptr->UnPack(resolver);
  16210. }
  16211. case BuiltinOptions_GreaterOptions: {
  16212. auto ptr = reinterpret_cast<const tflite::GreaterOptions *>(obj);
  16213. return ptr->UnPack(resolver);
  16214. }
  16215. case BuiltinOptions_GreaterEqualOptions: {
  16216. auto ptr = reinterpret_cast<const tflite::GreaterEqualOptions *>(obj);
  16217. return ptr->UnPack(resolver);
  16218. }
  16219. case BuiltinOptions_LessEqualOptions: {
  16220. auto ptr = reinterpret_cast<const tflite::LessEqualOptions *>(obj);
  16221. return ptr->UnPack(resolver);
  16222. }
  16223. case BuiltinOptions_SelectOptions: {
  16224. auto ptr = reinterpret_cast<const tflite::SelectOptions *>(obj);
  16225. return ptr->UnPack(resolver);
  16226. }
  16227. case BuiltinOptions_SliceOptions: {
  16228. auto ptr = reinterpret_cast<const tflite::SliceOptions *>(obj);
  16229. return ptr->UnPack(resolver);
  16230. }
  16231. case BuiltinOptions_TransposeConvOptions: {
  16232. auto ptr = reinterpret_cast<const tflite::TransposeConvOptions *>(obj);
  16233. return ptr->UnPack(resolver);
  16234. }
  16235. case BuiltinOptions_SparseToDenseOptions: {
  16236. auto ptr = reinterpret_cast<const tflite::SparseToDenseOptions *>(obj);
  16237. return ptr->UnPack(resolver);
  16238. }
  16239. case BuiltinOptions_TileOptions: {
  16240. auto ptr = reinterpret_cast<const tflite::TileOptions *>(obj);
  16241. return ptr->UnPack(resolver);
  16242. }
  16243. case BuiltinOptions_ExpandDimsOptions: {
  16244. auto ptr = reinterpret_cast<const tflite::ExpandDimsOptions *>(obj);
  16245. return ptr->UnPack(resolver);
  16246. }
  16247. case BuiltinOptions_EqualOptions: {
  16248. auto ptr = reinterpret_cast<const tflite::EqualOptions *>(obj);
  16249. return ptr->UnPack(resolver);
  16250. }
  16251. case BuiltinOptions_NotEqualOptions: {
  16252. auto ptr = reinterpret_cast<const tflite::NotEqualOptions *>(obj);
  16253. return ptr->UnPack(resolver);
  16254. }
  16255. case BuiltinOptions_ShapeOptions: {
  16256. auto ptr = reinterpret_cast<const tflite::ShapeOptions *>(obj);
  16257. return ptr->UnPack(resolver);
  16258. }
  16259. case BuiltinOptions_PowOptions: {
  16260. auto ptr = reinterpret_cast<const tflite::PowOptions *>(obj);
  16261. return ptr->UnPack(resolver);
  16262. }
  16263. case BuiltinOptions_ArgMinOptions: {
  16264. auto ptr = reinterpret_cast<const tflite::ArgMinOptions *>(obj);
  16265. return ptr->UnPack(resolver);
  16266. }
  16267. case BuiltinOptions_FakeQuantOptions: {
  16268. auto ptr = reinterpret_cast<const tflite::FakeQuantOptions *>(obj);
  16269. return ptr->UnPack(resolver);
  16270. }
  16271. case BuiltinOptions_PackOptions: {
  16272. auto ptr = reinterpret_cast<const tflite::PackOptions *>(obj);
  16273. return ptr->UnPack(resolver);
  16274. }
  16275. case BuiltinOptions_LogicalOrOptions: {
  16276. auto ptr = reinterpret_cast<const tflite::LogicalOrOptions *>(obj);
  16277. return ptr->UnPack(resolver);
  16278. }
  16279. case BuiltinOptions_OneHotOptions: {
  16280. auto ptr = reinterpret_cast<const tflite::OneHotOptions *>(obj);
  16281. return ptr->UnPack(resolver);
  16282. }
  16283. case BuiltinOptions_LogicalAndOptions: {
  16284. auto ptr = reinterpret_cast<const tflite::LogicalAndOptions *>(obj);
  16285. return ptr->UnPack(resolver);
  16286. }
  16287. case BuiltinOptions_LogicalNotOptions: {
  16288. auto ptr = reinterpret_cast<const tflite::LogicalNotOptions *>(obj);
  16289. return ptr->UnPack(resolver);
  16290. }
  16291. case BuiltinOptions_UnpackOptions: {
  16292. auto ptr = reinterpret_cast<const tflite::UnpackOptions *>(obj);
  16293. return ptr->UnPack(resolver);
  16294. }
  16295. case BuiltinOptions_FloorDivOptions: {
  16296. auto ptr = reinterpret_cast<const tflite::FloorDivOptions *>(obj);
  16297. return ptr->UnPack(resolver);
  16298. }
  16299. case BuiltinOptions_SquareOptions: {
  16300. auto ptr = reinterpret_cast<const tflite::SquareOptions *>(obj);
  16301. return ptr->UnPack(resolver);
  16302. }
  16303. case BuiltinOptions_ZerosLikeOptions: {
  16304. auto ptr = reinterpret_cast<const tflite::ZerosLikeOptions *>(obj);
  16305. return ptr->UnPack(resolver);
  16306. }
  16307. case BuiltinOptions_FillOptions: {
  16308. auto ptr = reinterpret_cast<const tflite::FillOptions *>(obj);
  16309. return ptr->UnPack(resolver);
  16310. }
  16311. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  16312. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptions *>(obj);
  16313. return ptr->UnPack(resolver);
  16314. }
  16315. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  16316. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceRNNOptions *>(obj);
  16317. return ptr->UnPack(resolver);
  16318. }
  16319. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  16320. auto ptr = reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptions *>(obj);
  16321. return ptr->UnPack(resolver);
  16322. }
  16323. case BuiltinOptions_FloorModOptions: {
  16324. auto ptr = reinterpret_cast<const tflite::FloorModOptions *>(obj);
  16325. return ptr->UnPack(resolver);
  16326. }
  16327. case BuiltinOptions_RangeOptions: {
  16328. auto ptr = reinterpret_cast<const tflite::RangeOptions *>(obj);
  16329. return ptr->UnPack(resolver);
  16330. }
  16331. case BuiltinOptions_ResizeNearestNeighborOptions: {
  16332. auto ptr = reinterpret_cast<const tflite::ResizeNearestNeighborOptions *>(obj);
  16333. return ptr->UnPack(resolver);
  16334. }
  16335. case BuiltinOptions_LeakyReluOptions: {
  16336. auto ptr = reinterpret_cast<const tflite::LeakyReluOptions *>(obj);
  16337. return ptr->UnPack(resolver);
  16338. }
  16339. case BuiltinOptions_SquaredDifferenceOptions: {
  16340. auto ptr = reinterpret_cast<const tflite::SquaredDifferenceOptions *>(obj);
  16341. return ptr->UnPack(resolver);
  16342. }
  16343. case BuiltinOptions_MirrorPadOptions: {
  16344. auto ptr = reinterpret_cast<const tflite::MirrorPadOptions *>(obj);
  16345. return ptr->UnPack(resolver);
  16346. }
  16347. case BuiltinOptions_AbsOptions: {
  16348. auto ptr = reinterpret_cast<const tflite::AbsOptions *>(obj);
  16349. return ptr->UnPack(resolver);
  16350. }
  16351. case BuiltinOptions_SplitVOptions: {
  16352. auto ptr = reinterpret_cast<const tflite::SplitVOptions *>(obj);
  16353. return ptr->UnPack(resolver);
  16354. }
  16355. case BuiltinOptions_UniqueOptions: {
  16356. auto ptr = reinterpret_cast<const tflite::UniqueOptions *>(obj);
  16357. return ptr->UnPack(resolver);
  16358. }
  16359. case BuiltinOptions_ReverseV2Options: {
  16360. auto ptr = reinterpret_cast<const tflite::ReverseV2Options *>(obj);
  16361. return ptr->UnPack(resolver);
  16362. }
  16363. case BuiltinOptions_AddNOptions: {
  16364. auto ptr = reinterpret_cast<const tflite::AddNOptions *>(obj);
  16365. return ptr->UnPack(resolver);
  16366. }
  16367. case BuiltinOptions_GatherNdOptions: {
  16368. auto ptr = reinterpret_cast<const tflite::GatherNdOptions *>(obj);
  16369. return ptr->UnPack(resolver);
  16370. }
  16371. case BuiltinOptions_CosOptions: {
  16372. auto ptr = reinterpret_cast<const tflite::CosOptions *>(obj);
  16373. return ptr->UnPack(resolver);
  16374. }
  16375. case BuiltinOptions_WhereOptions: {
  16376. auto ptr = reinterpret_cast<const tflite::WhereOptions *>(obj);
  16377. return ptr->UnPack(resolver);
  16378. }
  16379. case BuiltinOptions_RankOptions: {
  16380. auto ptr = reinterpret_cast<const tflite::RankOptions *>(obj);
  16381. return ptr->UnPack(resolver);
  16382. }
  16383. case BuiltinOptions_ReverseSequenceOptions: {
  16384. auto ptr = reinterpret_cast<const tflite::ReverseSequenceOptions *>(obj);
  16385. return ptr->UnPack(resolver);
  16386. }
  16387. case BuiltinOptions_MatrixDiagOptions: {
  16388. auto ptr = reinterpret_cast<const tflite::MatrixDiagOptions *>(obj);
  16389. return ptr->UnPack(resolver);
  16390. }
  16391. case BuiltinOptions_QuantizeOptions: {
  16392. auto ptr = reinterpret_cast<const tflite::QuantizeOptions *>(obj);
  16393. return ptr->UnPack(resolver);
  16394. }
  16395. case BuiltinOptions_MatrixSetDiagOptions: {
  16396. auto ptr = reinterpret_cast<const tflite::MatrixSetDiagOptions *>(obj);
  16397. return ptr->UnPack(resolver);
  16398. }
  16399. case BuiltinOptions_HardSwishOptions: {
  16400. auto ptr = reinterpret_cast<const tflite::HardSwishOptions *>(obj);
  16401. return ptr->UnPack(resolver);
  16402. }
  16403. case BuiltinOptions_IfOptions: {
  16404. auto ptr = reinterpret_cast<const tflite::IfOptions *>(obj);
  16405. return ptr->UnPack(resolver);
  16406. }
  16407. case BuiltinOptions_WhileOptions: {
  16408. auto ptr = reinterpret_cast<const tflite::WhileOptions *>(obj);
  16409. return ptr->UnPack(resolver);
  16410. }
  16411. case BuiltinOptions_DepthToSpaceOptions: {
  16412. auto ptr = reinterpret_cast<const tflite::DepthToSpaceOptions *>(obj);
  16413. return ptr->UnPack(resolver);
  16414. }
  16415. case BuiltinOptions_NonMaxSuppressionV4Options: {
  16416. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV4Options *>(obj);
  16417. return ptr->UnPack(resolver);
  16418. }
  16419. case BuiltinOptions_NonMaxSuppressionV5Options: {
  16420. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV5Options *>(obj);
  16421. return ptr->UnPack(resolver);
  16422. }
  16423. case BuiltinOptions_ScatterNdOptions: {
  16424. auto ptr = reinterpret_cast<const tflite::ScatterNdOptions *>(obj);
  16425. return ptr->UnPack(resolver);
  16426. }
  16427. case BuiltinOptions_SelectV2Options: {
  16428. auto ptr = reinterpret_cast<const tflite::SelectV2Options *>(obj);
  16429. return ptr->UnPack(resolver);
  16430. }
  16431. case BuiltinOptions_DensifyOptions: {
  16432. auto ptr = reinterpret_cast<const tflite::DensifyOptions *>(obj);
  16433. return ptr->UnPack(resolver);
  16434. }
  16435. case BuiltinOptions_SegmentSumOptions: {
  16436. auto ptr = reinterpret_cast<const tflite::SegmentSumOptions *>(obj);
  16437. return ptr->UnPack(resolver);
  16438. }
  16439. case BuiltinOptions_BatchMatMulOptions: {
  16440. auto ptr = reinterpret_cast<const tflite::BatchMatMulOptions *>(obj);
  16441. return ptr->UnPack(resolver);
  16442. }
  16443. case BuiltinOptions_CumsumOptions: {
  16444. auto ptr = reinterpret_cast<const tflite::CumsumOptions *>(obj);
  16445. return ptr->UnPack(resolver);
  16446. }
  16447. case BuiltinOptions_CallOnceOptions: {
  16448. auto ptr = reinterpret_cast<const tflite::CallOnceOptions *>(obj);
  16449. return ptr->UnPack(resolver);
  16450. }
  16451. case BuiltinOptions_BroadcastToOptions: {
  16452. auto ptr = reinterpret_cast<const tflite::BroadcastToOptions *>(obj);
  16453. return ptr->UnPack(resolver);
  16454. }
  16455. case BuiltinOptions_Rfft2dOptions: {
  16456. auto ptr = reinterpret_cast<const tflite::Rfft2dOptions *>(obj);
  16457. return ptr->UnPack(resolver);
  16458. }
  16459. case BuiltinOptions_Conv3DOptions: {
  16460. auto ptr = reinterpret_cast<const tflite::Conv3DOptions *>(obj);
  16461. return ptr->UnPack(resolver);
  16462. }
  16463. case BuiltinOptions_HashtableOptions: {
  16464. auto ptr = reinterpret_cast<const tflite::HashtableOptions *>(obj);
  16465. return ptr->UnPack(resolver);
  16466. }
  16467. case BuiltinOptions_HashtableFindOptions: {
  16468. auto ptr = reinterpret_cast<const tflite::HashtableFindOptions *>(obj);
  16469. return ptr->UnPack(resolver);
  16470. }
  16471. case BuiltinOptions_HashtableImportOptions: {
  16472. auto ptr = reinterpret_cast<const tflite::HashtableImportOptions *>(obj);
  16473. return ptr->UnPack(resolver);
  16474. }
  16475. case BuiltinOptions_HashtableSizeOptions: {
  16476. auto ptr = reinterpret_cast<const tflite::HashtableSizeOptions *>(obj);
  16477. return ptr->UnPack(resolver);
  16478. }
  16479. case BuiltinOptions_VarHandleOptions: {
  16480. auto ptr = reinterpret_cast<const tflite::VarHandleOptions *>(obj);
  16481. return ptr->UnPack(resolver);
  16482. }
  16483. case BuiltinOptions_ReadVariableOptions: {
  16484. auto ptr = reinterpret_cast<const tflite::ReadVariableOptions *>(obj);
  16485. return ptr->UnPack(resolver);
  16486. }
  16487. case BuiltinOptions_AssignVariableOptions: {
  16488. auto ptr = reinterpret_cast<const tflite::AssignVariableOptions *>(obj);
  16489. return ptr->UnPack(resolver);
  16490. }
  16491. case BuiltinOptions_RandomOptions: {
  16492. auto ptr = reinterpret_cast<const tflite::RandomOptions *>(obj);
  16493. return ptr->UnPack(resolver);
  16494. }
  16495. case BuiltinOptions_BucketizeOptions: {
  16496. auto ptr = reinterpret_cast<const tflite::BucketizeOptions *>(obj);
  16497. return ptr->UnPack(resolver);
  16498. }
  16499. case BuiltinOptions_GeluOptions: {
  16500. auto ptr = reinterpret_cast<const tflite::GeluOptions *>(obj);
  16501. return ptr->UnPack(resolver);
  16502. }
  16503. case BuiltinOptions_DynamicUpdateSliceOptions: {
  16504. auto ptr = reinterpret_cast<const tflite::DynamicUpdateSliceOptions *>(obj);
  16505. return ptr->UnPack(resolver);
  16506. }
  16507. case BuiltinOptions_UnsortedSegmentProdOptions: {
  16508. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentProdOptions *>(obj);
  16509. return ptr->UnPack(resolver);
  16510. }
  16511. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  16512. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMaxOptions *>(obj);
  16513. return ptr->UnPack(resolver);
  16514. }
  16515. case BuiltinOptions_UnsortedSegmentMinOptions: {
  16516. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMinOptions *>(obj);
  16517. return ptr->UnPack(resolver);
  16518. }
  16519. case BuiltinOptions_UnsortedSegmentSumOptions: {
  16520. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentSumOptions *>(obj);
  16521. return ptr->UnPack(resolver);
  16522. }
  16523. case BuiltinOptions_ATan2Options: {
  16524. auto ptr = reinterpret_cast<const tflite::ATan2Options *>(obj);
  16525. return ptr->UnPack(resolver);
  16526. }
  16527. case BuiltinOptions_SignOptions: {
  16528. auto ptr = reinterpret_cast<const tflite::SignOptions *>(obj);
  16529. return ptr->UnPack(resolver);
  16530. }
  16531. default: return nullptr;
  16532. }
  16533. }
  16534. inline flatbuffers::Offset<void> BuiltinOptionsUnion::Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher) const {
  16535. (void)_rehasher;
  16536. switch (type) {
  16537. case BuiltinOptions_Conv2DOptions: {
  16538. auto ptr = reinterpret_cast<const tflite::Conv2DOptionsT *>(value);
  16539. return CreateConv2DOptions(_fbb, ptr, _rehasher).Union();
  16540. }
  16541. case BuiltinOptions_DepthwiseConv2DOptions: {
  16542. auto ptr = reinterpret_cast<const tflite::DepthwiseConv2DOptionsT *>(value);
  16543. return CreateDepthwiseConv2DOptions(_fbb, ptr, _rehasher).Union();
  16544. }
  16545. case BuiltinOptions_ConcatEmbeddingsOptions: {
  16546. auto ptr = reinterpret_cast<const tflite::ConcatEmbeddingsOptionsT *>(value);
  16547. return CreateConcatEmbeddingsOptions(_fbb, ptr, _rehasher).Union();
  16548. }
  16549. case BuiltinOptions_LSHProjectionOptions: {
  16550. auto ptr = reinterpret_cast<const tflite::LSHProjectionOptionsT *>(value);
  16551. return CreateLSHProjectionOptions(_fbb, ptr, _rehasher).Union();
  16552. }
  16553. case BuiltinOptions_Pool2DOptions: {
  16554. auto ptr = reinterpret_cast<const tflite::Pool2DOptionsT *>(value);
  16555. return CreatePool2DOptions(_fbb, ptr, _rehasher).Union();
  16556. }
  16557. case BuiltinOptions_SVDFOptions: {
  16558. auto ptr = reinterpret_cast<const tflite::SVDFOptionsT *>(value);
  16559. return CreateSVDFOptions(_fbb, ptr, _rehasher).Union();
  16560. }
  16561. case BuiltinOptions_RNNOptions: {
  16562. auto ptr = reinterpret_cast<const tflite::RNNOptionsT *>(value);
  16563. return CreateRNNOptions(_fbb, ptr, _rehasher).Union();
  16564. }
  16565. case BuiltinOptions_FullyConnectedOptions: {
  16566. auto ptr = reinterpret_cast<const tflite::FullyConnectedOptionsT *>(value);
  16567. return CreateFullyConnectedOptions(_fbb, ptr, _rehasher).Union();
  16568. }
  16569. case BuiltinOptions_SoftmaxOptions: {
  16570. auto ptr = reinterpret_cast<const tflite::SoftmaxOptionsT *>(value);
  16571. return CreateSoftmaxOptions(_fbb, ptr, _rehasher).Union();
  16572. }
  16573. case BuiltinOptions_ConcatenationOptions: {
  16574. auto ptr = reinterpret_cast<const tflite::ConcatenationOptionsT *>(value);
  16575. return CreateConcatenationOptions(_fbb, ptr, _rehasher).Union();
  16576. }
  16577. case BuiltinOptions_AddOptions: {
  16578. auto ptr = reinterpret_cast<const tflite::AddOptionsT *>(value);
  16579. return CreateAddOptions(_fbb, ptr, _rehasher).Union();
  16580. }
  16581. case BuiltinOptions_L2NormOptions: {
  16582. auto ptr = reinterpret_cast<const tflite::L2NormOptionsT *>(value);
  16583. return CreateL2NormOptions(_fbb, ptr, _rehasher).Union();
  16584. }
  16585. case BuiltinOptions_LocalResponseNormalizationOptions: {
  16586. auto ptr = reinterpret_cast<const tflite::LocalResponseNormalizationOptionsT *>(value);
  16587. return CreateLocalResponseNormalizationOptions(_fbb, ptr, _rehasher).Union();
  16588. }
  16589. case BuiltinOptions_LSTMOptions: {
  16590. auto ptr = reinterpret_cast<const tflite::LSTMOptionsT *>(value);
  16591. return CreateLSTMOptions(_fbb, ptr, _rehasher).Union();
  16592. }
  16593. case BuiltinOptions_ResizeBilinearOptions: {
  16594. auto ptr = reinterpret_cast<const tflite::ResizeBilinearOptionsT *>(value);
  16595. return CreateResizeBilinearOptions(_fbb, ptr, _rehasher).Union();
  16596. }
  16597. case BuiltinOptions_CallOptions: {
  16598. auto ptr = reinterpret_cast<const tflite::CallOptionsT *>(value);
  16599. return CreateCallOptions(_fbb, ptr, _rehasher).Union();
  16600. }
  16601. case BuiltinOptions_ReshapeOptions: {
  16602. auto ptr = reinterpret_cast<const tflite::ReshapeOptionsT *>(value);
  16603. return CreateReshapeOptions(_fbb, ptr, _rehasher).Union();
  16604. }
  16605. case BuiltinOptions_SkipGramOptions: {
  16606. auto ptr = reinterpret_cast<const tflite::SkipGramOptionsT *>(value);
  16607. return CreateSkipGramOptions(_fbb, ptr, _rehasher).Union();
  16608. }
  16609. case BuiltinOptions_SpaceToDepthOptions: {
  16610. auto ptr = reinterpret_cast<const tflite::SpaceToDepthOptionsT *>(value);
  16611. return CreateSpaceToDepthOptions(_fbb, ptr, _rehasher).Union();
  16612. }
  16613. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  16614. auto ptr = reinterpret_cast<const tflite::EmbeddingLookupSparseOptionsT *>(value);
  16615. return CreateEmbeddingLookupSparseOptions(_fbb, ptr, _rehasher).Union();
  16616. }
  16617. case BuiltinOptions_MulOptions: {
  16618. auto ptr = reinterpret_cast<const tflite::MulOptionsT *>(value);
  16619. return CreateMulOptions(_fbb, ptr, _rehasher).Union();
  16620. }
  16621. case BuiltinOptions_PadOptions: {
  16622. auto ptr = reinterpret_cast<const tflite::PadOptionsT *>(value);
  16623. return CreatePadOptions(_fbb, ptr, _rehasher).Union();
  16624. }
  16625. case BuiltinOptions_GatherOptions: {
  16626. auto ptr = reinterpret_cast<const tflite::GatherOptionsT *>(value);
  16627. return CreateGatherOptions(_fbb, ptr, _rehasher).Union();
  16628. }
  16629. case BuiltinOptions_BatchToSpaceNDOptions: {
  16630. auto ptr = reinterpret_cast<const tflite::BatchToSpaceNDOptionsT *>(value);
  16631. return CreateBatchToSpaceNDOptions(_fbb, ptr, _rehasher).Union();
  16632. }
  16633. case BuiltinOptions_SpaceToBatchNDOptions: {
  16634. auto ptr = reinterpret_cast<const tflite::SpaceToBatchNDOptionsT *>(value);
  16635. return CreateSpaceToBatchNDOptions(_fbb, ptr, _rehasher).Union();
  16636. }
  16637. case BuiltinOptions_TransposeOptions: {
  16638. auto ptr = reinterpret_cast<const tflite::TransposeOptionsT *>(value);
  16639. return CreateTransposeOptions(_fbb, ptr, _rehasher).Union();
  16640. }
  16641. case BuiltinOptions_ReducerOptions: {
  16642. auto ptr = reinterpret_cast<const tflite::ReducerOptionsT *>(value);
  16643. return CreateReducerOptions(_fbb, ptr, _rehasher).Union();
  16644. }
  16645. case BuiltinOptions_SubOptions: {
  16646. auto ptr = reinterpret_cast<const tflite::SubOptionsT *>(value);
  16647. return CreateSubOptions(_fbb, ptr, _rehasher).Union();
  16648. }
  16649. case BuiltinOptions_DivOptions: {
  16650. auto ptr = reinterpret_cast<const tflite::DivOptionsT *>(value);
  16651. return CreateDivOptions(_fbb, ptr, _rehasher).Union();
  16652. }
  16653. case BuiltinOptions_SqueezeOptions: {
  16654. auto ptr = reinterpret_cast<const tflite::SqueezeOptionsT *>(value);
  16655. return CreateSqueezeOptions(_fbb, ptr, _rehasher).Union();
  16656. }
  16657. case BuiltinOptions_SequenceRNNOptions: {
  16658. auto ptr = reinterpret_cast<const tflite::SequenceRNNOptionsT *>(value);
  16659. return CreateSequenceRNNOptions(_fbb, ptr, _rehasher).Union();
  16660. }
  16661. case BuiltinOptions_StridedSliceOptions: {
  16662. auto ptr = reinterpret_cast<const tflite::StridedSliceOptionsT *>(value);
  16663. return CreateStridedSliceOptions(_fbb, ptr, _rehasher).Union();
  16664. }
  16665. case BuiltinOptions_ExpOptions: {
  16666. auto ptr = reinterpret_cast<const tflite::ExpOptionsT *>(value);
  16667. return CreateExpOptions(_fbb, ptr, _rehasher).Union();
  16668. }
  16669. case BuiltinOptions_TopKV2Options: {
  16670. auto ptr = reinterpret_cast<const tflite::TopKV2OptionsT *>(value);
  16671. return CreateTopKV2Options(_fbb, ptr, _rehasher).Union();
  16672. }
  16673. case BuiltinOptions_SplitOptions: {
  16674. auto ptr = reinterpret_cast<const tflite::SplitOptionsT *>(value);
  16675. return CreateSplitOptions(_fbb, ptr, _rehasher).Union();
  16676. }
  16677. case BuiltinOptions_LogSoftmaxOptions: {
  16678. auto ptr = reinterpret_cast<const tflite::LogSoftmaxOptionsT *>(value);
  16679. return CreateLogSoftmaxOptions(_fbb, ptr, _rehasher).Union();
  16680. }
  16681. case BuiltinOptions_CastOptions: {
  16682. auto ptr = reinterpret_cast<const tflite::CastOptionsT *>(value);
  16683. return CreateCastOptions(_fbb, ptr, _rehasher).Union();
  16684. }
  16685. case BuiltinOptions_DequantizeOptions: {
  16686. auto ptr = reinterpret_cast<const tflite::DequantizeOptionsT *>(value);
  16687. return CreateDequantizeOptions(_fbb, ptr, _rehasher).Union();
  16688. }
  16689. case BuiltinOptions_MaximumMinimumOptions: {
  16690. auto ptr = reinterpret_cast<const tflite::MaximumMinimumOptionsT *>(value);
  16691. return CreateMaximumMinimumOptions(_fbb, ptr, _rehasher).Union();
  16692. }
  16693. case BuiltinOptions_ArgMaxOptions: {
  16694. auto ptr = reinterpret_cast<const tflite::ArgMaxOptionsT *>(value);
  16695. return CreateArgMaxOptions(_fbb, ptr, _rehasher).Union();
  16696. }
  16697. case BuiltinOptions_LessOptions: {
  16698. auto ptr = reinterpret_cast<const tflite::LessOptionsT *>(value);
  16699. return CreateLessOptions(_fbb, ptr, _rehasher).Union();
  16700. }
  16701. case BuiltinOptions_NegOptions: {
  16702. auto ptr = reinterpret_cast<const tflite::NegOptionsT *>(value);
  16703. return CreateNegOptions(_fbb, ptr, _rehasher).Union();
  16704. }
  16705. case BuiltinOptions_PadV2Options: {
  16706. auto ptr = reinterpret_cast<const tflite::PadV2OptionsT *>(value);
  16707. return CreatePadV2Options(_fbb, ptr, _rehasher).Union();
  16708. }
  16709. case BuiltinOptions_GreaterOptions: {
  16710. auto ptr = reinterpret_cast<const tflite::GreaterOptionsT *>(value);
  16711. return CreateGreaterOptions(_fbb, ptr, _rehasher).Union();
  16712. }
  16713. case BuiltinOptions_GreaterEqualOptions: {
  16714. auto ptr = reinterpret_cast<const tflite::GreaterEqualOptionsT *>(value);
  16715. return CreateGreaterEqualOptions(_fbb, ptr, _rehasher).Union();
  16716. }
  16717. case BuiltinOptions_LessEqualOptions: {
  16718. auto ptr = reinterpret_cast<const tflite::LessEqualOptionsT *>(value);
  16719. return CreateLessEqualOptions(_fbb, ptr, _rehasher).Union();
  16720. }
  16721. case BuiltinOptions_SelectOptions: {
  16722. auto ptr = reinterpret_cast<const tflite::SelectOptionsT *>(value);
  16723. return CreateSelectOptions(_fbb, ptr, _rehasher).Union();
  16724. }
  16725. case BuiltinOptions_SliceOptions: {
  16726. auto ptr = reinterpret_cast<const tflite::SliceOptionsT *>(value);
  16727. return CreateSliceOptions(_fbb, ptr, _rehasher).Union();
  16728. }
  16729. case BuiltinOptions_TransposeConvOptions: {
  16730. auto ptr = reinterpret_cast<const tflite::TransposeConvOptionsT *>(value);
  16731. return CreateTransposeConvOptions(_fbb, ptr, _rehasher).Union();
  16732. }
  16733. case BuiltinOptions_SparseToDenseOptions: {
  16734. auto ptr = reinterpret_cast<const tflite::SparseToDenseOptionsT *>(value);
  16735. return CreateSparseToDenseOptions(_fbb, ptr, _rehasher).Union();
  16736. }
  16737. case BuiltinOptions_TileOptions: {
  16738. auto ptr = reinterpret_cast<const tflite::TileOptionsT *>(value);
  16739. return CreateTileOptions(_fbb, ptr, _rehasher).Union();
  16740. }
  16741. case BuiltinOptions_ExpandDimsOptions: {
  16742. auto ptr = reinterpret_cast<const tflite::ExpandDimsOptionsT *>(value);
  16743. return CreateExpandDimsOptions(_fbb, ptr, _rehasher).Union();
  16744. }
  16745. case BuiltinOptions_EqualOptions: {
  16746. auto ptr = reinterpret_cast<const tflite::EqualOptionsT *>(value);
  16747. return CreateEqualOptions(_fbb, ptr, _rehasher).Union();
  16748. }
  16749. case BuiltinOptions_NotEqualOptions: {
  16750. auto ptr = reinterpret_cast<const tflite::NotEqualOptionsT *>(value);
  16751. return CreateNotEqualOptions(_fbb, ptr, _rehasher).Union();
  16752. }
  16753. case BuiltinOptions_ShapeOptions: {
  16754. auto ptr = reinterpret_cast<const tflite::ShapeOptionsT *>(value);
  16755. return CreateShapeOptions(_fbb, ptr, _rehasher).Union();
  16756. }
  16757. case BuiltinOptions_PowOptions: {
  16758. auto ptr = reinterpret_cast<const tflite::PowOptionsT *>(value);
  16759. return CreatePowOptions(_fbb, ptr, _rehasher).Union();
  16760. }
  16761. case BuiltinOptions_ArgMinOptions: {
  16762. auto ptr = reinterpret_cast<const tflite::ArgMinOptionsT *>(value);
  16763. return CreateArgMinOptions(_fbb, ptr, _rehasher).Union();
  16764. }
  16765. case BuiltinOptions_FakeQuantOptions: {
  16766. auto ptr = reinterpret_cast<const tflite::FakeQuantOptionsT *>(value);
  16767. return CreateFakeQuantOptions(_fbb, ptr, _rehasher).Union();
  16768. }
  16769. case BuiltinOptions_PackOptions: {
  16770. auto ptr = reinterpret_cast<const tflite::PackOptionsT *>(value);
  16771. return CreatePackOptions(_fbb, ptr, _rehasher).Union();
  16772. }
  16773. case BuiltinOptions_LogicalOrOptions: {
  16774. auto ptr = reinterpret_cast<const tflite::LogicalOrOptionsT *>(value);
  16775. return CreateLogicalOrOptions(_fbb, ptr, _rehasher).Union();
  16776. }
  16777. case BuiltinOptions_OneHotOptions: {
  16778. auto ptr = reinterpret_cast<const tflite::OneHotOptionsT *>(value);
  16779. return CreateOneHotOptions(_fbb, ptr, _rehasher).Union();
  16780. }
  16781. case BuiltinOptions_LogicalAndOptions: {
  16782. auto ptr = reinterpret_cast<const tflite::LogicalAndOptionsT *>(value);
  16783. return CreateLogicalAndOptions(_fbb, ptr, _rehasher).Union();
  16784. }
  16785. case BuiltinOptions_LogicalNotOptions: {
  16786. auto ptr = reinterpret_cast<const tflite::LogicalNotOptionsT *>(value);
  16787. return CreateLogicalNotOptions(_fbb, ptr, _rehasher).Union();
  16788. }
  16789. case BuiltinOptions_UnpackOptions: {
  16790. auto ptr = reinterpret_cast<const tflite::UnpackOptionsT *>(value);
  16791. return CreateUnpackOptions(_fbb, ptr, _rehasher).Union();
  16792. }
  16793. case BuiltinOptions_FloorDivOptions: {
  16794. auto ptr = reinterpret_cast<const tflite::FloorDivOptionsT *>(value);
  16795. return CreateFloorDivOptions(_fbb, ptr, _rehasher).Union();
  16796. }
  16797. case BuiltinOptions_SquareOptions: {
  16798. auto ptr = reinterpret_cast<const tflite::SquareOptionsT *>(value);
  16799. return CreateSquareOptions(_fbb, ptr, _rehasher).Union();
  16800. }
  16801. case BuiltinOptions_ZerosLikeOptions: {
  16802. auto ptr = reinterpret_cast<const tflite::ZerosLikeOptionsT *>(value);
  16803. return CreateZerosLikeOptions(_fbb, ptr, _rehasher).Union();
  16804. }
  16805. case BuiltinOptions_FillOptions: {
  16806. auto ptr = reinterpret_cast<const tflite::FillOptionsT *>(value);
  16807. return CreateFillOptions(_fbb, ptr, _rehasher).Union();
  16808. }
  16809. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  16810. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptionsT *>(value);
  16811. return CreateBidirectionalSequenceLSTMOptions(_fbb, ptr, _rehasher).Union();
  16812. }
  16813. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  16814. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceRNNOptionsT *>(value);
  16815. return CreateBidirectionalSequenceRNNOptions(_fbb, ptr, _rehasher).Union();
  16816. }
  16817. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  16818. auto ptr = reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptionsT *>(value);
  16819. return CreateUnidirectionalSequenceLSTMOptions(_fbb, ptr, _rehasher).Union();
  16820. }
  16821. case BuiltinOptions_FloorModOptions: {
  16822. auto ptr = reinterpret_cast<const tflite::FloorModOptionsT *>(value);
  16823. return CreateFloorModOptions(_fbb, ptr, _rehasher).Union();
  16824. }
  16825. case BuiltinOptions_RangeOptions: {
  16826. auto ptr = reinterpret_cast<const tflite::RangeOptionsT *>(value);
  16827. return CreateRangeOptions(_fbb, ptr, _rehasher).Union();
  16828. }
  16829. case BuiltinOptions_ResizeNearestNeighborOptions: {
  16830. auto ptr = reinterpret_cast<const tflite::ResizeNearestNeighborOptionsT *>(value);
  16831. return CreateResizeNearestNeighborOptions(_fbb, ptr, _rehasher).Union();
  16832. }
  16833. case BuiltinOptions_LeakyReluOptions: {
  16834. auto ptr = reinterpret_cast<const tflite::LeakyReluOptionsT *>(value);
  16835. return CreateLeakyReluOptions(_fbb, ptr, _rehasher).Union();
  16836. }
  16837. case BuiltinOptions_SquaredDifferenceOptions: {
  16838. auto ptr = reinterpret_cast<const tflite::SquaredDifferenceOptionsT *>(value);
  16839. return CreateSquaredDifferenceOptions(_fbb, ptr, _rehasher).Union();
  16840. }
  16841. case BuiltinOptions_MirrorPadOptions: {
  16842. auto ptr = reinterpret_cast<const tflite::MirrorPadOptionsT *>(value);
  16843. return CreateMirrorPadOptions(_fbb, ptr, _rehasher).Union();
  16844. }
  16845. case BuiltinOptions_AbsOptions: {
  16846. auto ptr = reinterpret_cast<const tflite::AbsOptionsT *>(value);
  16847. return CreateAbsOptions(_fbb, ptr, _rehasher).Union();
  16848. }
  16849. case BuiltinOptions_SplitVOptions: {
  16850. auto ptr = reinterpret_cast<const tflite::SplitVOptionsT *>(value);
  16851. return CreateSplitVOptions(_fbb, ptr, _rehasher).Union();
  16852. }
  16853. case BuiltinOptions_UniqueOptions: {
  16854. auto ptr = reinterpret_cast<const tflite::UniqueOptionsT *>(value);
  16855. return CreateUniqueOptions(_fbb, ptr, _rehasher).Union();
  16856. }
  16857. case BuiltinOptions_ReverseV2Options: {
  16858. auto ptr = reinterpret_cast<const tflite::ReverseV2OptionsT *>(value);
  16859. return CreateReverseV2Options(_fbb, ptr, _rehasher).Union();
  16860. }
  16861. case BuiltinOptions_AddNOptions: {
  16862. auto ptr = reinterpret_cast<const tflite::AddNOptionsT *>(value);
  16863. return CreateAddNOptions(_fbb, ptr, _rehasher).Union();
  16864. }
  16865. case BuiltinOptions_GatherNdOptions: {
  16866. auto ptr = reinterpret_cast<const tflite::GatherNdOptionsT *>(value);
  16867. return CreateGatherNdOptions(_fbb, ptr, _rehasher).Union();
  16868. }
  16869. case BuiltinOptions_CosOptions: {
  16870. auto ptr = reinterpret_cast<const tflite::CosOptionsT *>(value);
  16871. return CreateCosOptions(_fbb, ptr, _rehasher).Union();
  16872. }
  16873. case BuiltinOptions_WhereOptions: {
  16874. auto ptr = reinterpret_cast<const tflite::WhereOptionsT *>(value);
  16875. return CreateWhereOptions(_fbb, ptr, _rehasher).Union();
  16876. }
  16877. case BuiltinOptions_RankOptions: {
  16878. auto ptr = reinterpret_cast<const tflite::RankOptionsT *>(value);
  16879. return CreateRankOptions(_fbb, ptr, _rehasher).Union();
  16880. }
  16881. case BuiltinOptions_ReverseSequenceOptions: {
  16882. auto ptr = reinterpret_cast<const tflite::ReverseSequenceOptionsT *>(value);
  16883. return CreateReverseSequenceOptions(_fbb, ptr, _rehasher).Union();
  16884. }
  16885. case BuiltinOptions_MatrixDiagOptions: {
  16886. auto ptr = reinterpret_cast<const tflite::MatrixDiagOptionsT *>(value);
  16887. return CreateMatrixDiagOptions(_fbb, ptr, _rehasher).Union();
  16888. }
  16889. case BuiltinOptions_QuantizeOptions: {
  16890. auto ptr = reinterpret_cast<const tflite::QuantizeOptionsT *>(value);
  16891. return CreateQuantizeOptions(_fbb, ptr, _rehasher).Union();
  16892. }
  16893. case BuiltinOptions_MatrixSetDiagOptions: {
  16894. auto ptr = reinterpret_cast<const tflite::MatrixSetDiagOptionsT *>(value);
  16895. return CreateMatrixSetDiagOptions(_fbb, ptr, _rehasher).Union();
  16896. }
  16897. case BuiltinOptions_HardSwishOptions: {
  16898. auto ptr = reinterpret_cast<const tflite::HardSwishOptionsT *>(value);
  16899. return CreateHardSwishOptions(_fbb, ptr, _rehasher).Union();
  16900. }
  16901. case BuiltinOptions_IfOptions: {
  16902. auto ptr = reinterpret_cast<const tflite::IfOptionsT *>(value);
  16903. return CreateIfOptions(_fbb, ptr, _rehasher).Union();
  16904. }
  16905. case BuiltinOptions_WhileOptions: {
  16906. auto ptr = reinterpret_cast<const tflite::WhileOptionsT *>(value);
  16907. return CreateWhileOptions(_fbb, ptr, _rehasher).Union();
  16908. }
  16909. case BuiltinOptions_DepthToSpaceOptions: {
  16910. auto ptr = reinterpret_cast<const tflite::DepthToSpaceOptionsT *>(value);
  16911. return CreateDepthToSpaceOptions(_fbb, ptr, _rehasher).Union();
  16912. }
  16913. case BuiltinOptions_NonMaxSuppressionV4Options: {
  16914. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV4OptionsT *>(value);
  16915. return CreateNonMaxSuppressionV4Options(_fbb, ptr, _rehasher).Union();
  16916. }
  16917. case BuiltinOptions_NonMaxSuppressionV5Options: {
  16918. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV5OptionsT *>(value);
  16919. return CreateNonMaxSuppressionV5Options(_fbb, ptr, _rehasher).Union();
  16920. }
  16921. case BuiltinOptions_ScatterNdOptions: {
  16922. auto ptr = reinterpret_cast<const tflite::ScatterNdOptionsT *>(value);
  16923. return CreateScatterNdOptions(_fbb, ptr, _rehasher).Union();
  16924. }
  16925. case BuiltinOptions_SelectV2Options: {
  16926. auto ptr = reinterpret_cast<const tflite::SelectV2OptionsT *>(value);
  16927. return CreateSelectV2Options(_fbb, ptr, _rehasher).Union();
  16928. }
  16929. case BuiltinOptions_DensifyOptions: {
  16930. auto ptr = reinterpret_cast<const tflite::DensifyOptionsT *>(value);
  16931. return CreateDensifyOptions(_fbb, ptr, _rehasher).Union();
  16932. }
  16933. case BuiltinOptions_SegmentSumOptions: {
  16934. auto ptr = reinterpret_cast<const tflite::SegmentSumOptionsT *>(value);
  16935. return CreateSegmentSumOptions(_fbb, ptr, _rehasher).Union();
  16936. }
  16937. case BuiltinOptions_BatchMatMulOptions: {
  16938. auto ptr = reinterpret_cast<const tflite::BatchMatMulOptionsT *>(value);
  16939. return CreateBatchMatMulOptions(_fbb, ptr, _rehasher).Union();
  16940. }
  16941. case BuiltinOptions_CumsumOptions: {
  16942. auto ptr = reinterpret_cast<const tflite::CumsumOptionsT *>(value);
  16943. return CreateCumsumOptions(_fbb, ptr, _rehasher).Union();
  16944. }
  16945. case BuiltinOptions_CallOnceOptions: {
  16946. auto ptr = reinterpret_cast<const tflite::CallOnceOptionsT *>(value);
  16947. return CreateCallOnceOptions(_fbb, ptr, _rehasher).Union();
  16948. }
  16949. case BuiltinOptions_BroadcastToOptions: {
  16950. auto ptr = reinterpret_cast<const tflite::BroadcastToOptionsT *>(value);
  16951. return CreateBroadcastToOptions(_fbb, ptr, _rehasher).Union();
  16952. }
  16953. case BuiltinOptions_Rfft2dOptions: {
  16954. auto ptr = reinterpret_cast<const tflite::Rfft2dOptionsT *>(value);
  16955. return CreateRfft2dOptions(_fbb, ptr, _rehasher).Union();
  16956. }
  16957. case BuiltinOptions_Conv3DOptions: {
  16958. auto ptr = reinterpret_cast<const tflite::Conv3DOptionsT *>(value);
  16959. return CreateConv3DOptions(_fbb, ptr, _rehasher).Union();
  16960. }
  16961. case BuiltinOptions_HashtableOptions: {
  16962. auto ptr = reinterpret_cast<const tflite::HashtableOptionsT *>(value);
  16963. return CreateHashtableOptions(_fbb, ptr, _rehasher).Union();
  16964. }
  16965. case BuiltinOptions_HashtableFindOptions: {
  16966. auto ptr = reinterpret_cast<const tflite::HashtableFindOptionsT *>(value);
  16967. return CreateHashtableFindOptions(_fbb, ptr, _rehasher).Union();
  16968. }
  16969. case BuiltinOptions_HashtableImportOptions: {
  16970. auto ptr = reinterpret_cast<const tflite::HashtableImportOptionsT *>(value);
  16971. return CreateHashtableImportOptions(_fbb, ptr, _rehasher).Union();
  16972. }
  16973. case BuiltinOptions_HashtableSizeOptions: {
  16974. auto ptr = reinterpret_cast<const tflite::HashtableSizeOptionsT *>(value);
  16975. return CreateHashtableSizeOptions(_fbb, ptr, _rehasher).Union();
  16976. }
  16977. case BuiltinOptions_VarHandleOptions: {
  16978. auto ptr = reinterpret_cast<const tflite::VarHandleOptionsT *>(value);
  16979. return CreateVarHandleOptions(_fbb, ptr, _rehasher).Union();
  16980. }
  16981. case BuiltinOptions_ReadVariableOptions: {
  16982. auto ptr = reinterpret_cast<const tflite::ReadVariableOptionsT *>(value);
  16983. return CreateReadVariableOptions(_fbb, ptr, _rehasher).Union();
  16984. }
  16985. case BuiltinOptions_AssignVariableOptions: {
  16986. auto ptr = reinterpret_cast<const tflite::AssignVariableOptionsT *>(value);
  16987. return CreateAssignVariableOptions(_fbb, ptr, _rehasher).Union();
  16988. }
  16989. case BuiltinOptions_RandomOptions: {
  16990. auto ptr = reinterpret_cast<const tflite::RandomOptionsT *>(value);
  16991. return CreateRandomOptions(_fbb, ptr, _rehasher).Union();
  16992. }
  16993. case BuiltinOptions_BucketizeOptions: {
  16994. auto ptr = reinterpret_cast<const tflite::BucketizeOptionsT *>(value);
  16995. return CreateBucketizeOptions(_fbb, ptr, _rehasher).Union();
  16996. }
  16997. case BuiltinOptions_GeluOptions: {
  16998. auto ptr = reinterpret_cast<const tflite::GeluOptionsT *>(value);
  16999. return CreateGeluOptions(_fbb, ptr, _rehasher).Union();
  17000. }
  17001. case BuiltinOptions_DynamicUpdateSliceOptions: {
  17002. auto ptr = reinterpret_cast<const tflite::DynamicUpdateSliceOptionsT *>(value);
  17003. return CreateDynamicUpdateSliceOptions(_fbb, ptr, _rehasher).Union();
  17004. }
  17005. case BuiltinOptions_UnsortedSegmentProdOptions: {
  17006. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentProdOptionsT *>(value);
  17007. return CreateUnsortedSegmentProdOptions(_fbb, ptr, _rehasher).Union();
  17008. }
  17009. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  17010. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMaxOptionsT *>(value);
  17011. return CreateUnsortedSegmentMaxOptions(_fbb, ptr, _rehasher).Union();
  17012. }
  17013. case BuiltinOptions_UnsortedSegmentMinOptions: {
  17014. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMinOptionsT *>(value);
  17015. return CreateUnsortedSegmentMinOptions(_fbb, ptr, _rehasher).Union();
  17016. }
  17017. case BuiltinOptions_UnsortedSegmentSumOptions: {
  17018. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentSumOptionsT *>(value);
  17019. return CreateUnsortedSegmentSumOptions(_fbb, ptr, _rehasher).Union();
  17020. }
  17021. case BuiltinOptions_ATan2Options: {
  17022. auto ptr = reinterpret_cast<const tflite::ATan2OptionsT *>(value);
  17023. return CreateATan2Options(_fbb, ptr, _rehasher).Union();
  17024. }
  17025. case BuiltinOptions_SignOptions: {
  17026. auto ptr = reinterpret_cast<const tflite::SignOptionsT *>(value);
  17027. return CreateSignOptions(_fbb, ptr, _rehasher).Union();
  17028. }
  17029. default: return 0;
  17030. }
  17031. }
  17032. inline BuiltinOptionsUnion::BuiltinOptionsUnion(const BuiltinOptionsUnion &u) : type(u.type), value(nullptr) {
  17033. switch (type) {
  17034. case BuiltinOptions_Conv2DOptions: {
  17035. value = new tflite::Conv2DOptionsT(*reinterpret_cast<tflite::Conv2DOptionsT *>(u.value));
  17036. break;
  17037. }
  17038. case BuiltinOptions_DepthwiseConv2DOptions: {
  17039. value = new tflite::DepthwiseConv2DOptionsT(*reinterpret_cast<tflite::DepthwiseConv2DOptionsT *>(u.value));
  17040. break;
  17041. }
  17042. case BuiltinOptions_ConcatEmbeddingsOptions: {
  17043. value = new tflite::ConcatEmbeddingsOptionsT(*reinterpret_cast<tflite::ConcatEmbeddingsOptionsT *>(u.value));
  17044. break;
  17045. }
  17046. case BuiltinOptions_LSHProjectionOptions: {
  17047. value = new tflite::LSHProjectionOptionsT(*reinterpret_cast<tflite::LSHProjectionOptionsT *>(u.value));
  17048. break;
  17049. }
  17050. case BuiltinOptions_Pool2DOptions: {
  17051. value = new tflite::Pool2DOptionsT(*reinterpret_cast<tflite::Pool2DOptionsT *>(u.value));
  17052. break;
  17053. }
  17054. case BuiltinOptions_SVDFOptions: {
  17055. value = new tflite::SVDFOptionsT(*reinterpret_cast<tflite::SVDFOptionsT *>(u.value));
  17056. break;
  17057. }
  17058. case BuiltinOptions_RNNOptions: {
  17059. value = new tflite::RNNOptionsT(*reinterpret_cast<tflite::RNNOptionsT *>(u.value));
  17060. break;
  17061. }
  17062. case BuiltinOptions_FullyConnectedOptions: {
  17063. value = new tflite::FullyConnectedOptionsT(*reinterpret_cast<tflite::FullyConnectedOptionsT *>(u.value));
  17064. break;
  17065. }
  17066. case BuiltinOptions_SoftmaxOptions: {
  17067. value = new tflite::SoftmaxOptionsT(*reinterpret_cast<tflite::SoftmaxOptionsT *>(u.value));
  17068. break;
  17069. }
  17070. case BuiltinOptions_ConcatenationOptions: {
  17071. value = new tflite::ConcatenationOptionsT(*reinterpret_cast<tflite::ConcatenationOptionsT *>(u.value));
  17072. break;
  17073. }
  17074. case BuiltinOptions_AddOptions: {
  17075. value = new tflite::AddOptionsT(*reinterpret_cast<tflite::AddOptionsT *>(u.value));
  17076. break;
  17077. }
  17078. case BuiltinOptions_L2NormOptions: {
  17079. value = new tflite::L2NormOptionsT(*reinterpret_cast<tflite::L2NormOptionsT *>(u.value));
  17080. break;
  17081. }
  17082. case BuiltinOptions_LocalResponseNormalizationOptions: {
  17083. value = new tflite::LocalResponseNormalizationOptionsT(*reinterpret_cast<tflite::LocalResponseNormalizationOptionsT *>(u.value));
  17084. break;
  17085. }
  17086. case BuiltinOptions_LSTMOptions: {
  17087. value = new tflite::LSTMOptionsT(*reinterpret_cast<tflite::LSTMOptionsT *>(u.value));
  17088. break;
  17089. }
  17090. case BuiltinOptions_ResizeBilinearOptions: {
  17091. value = new tflite::ResizeBilinearOptionsT(*reinterpret_cast<tflite::ResizeBilinearOptionsT *>(u.value));
  17092. break;
  17093. }
  17094. case BuiltinOptions_CallOptions: {
  17095. value = new tflite::CallOptionsT(*reinterpret_cast<tflite::CallOptionsT *>(u.value));
  17096. break;
  17097. }
  17098. case BuiltinOptions_ReshapeOptions: {
  17099. value = new tflite::ReshapeOptionsT(*reinterpret_cast<tflite::ReshapeOptionsT *>(u.value));
  17100. break;
  17101. }
  17102. case BuiltinOptions_SkipGramOptions: {
  17103. value = new tflite::SkipGramOptionsT(*reinterpret_cast<tflite::SkipGramOptionsT *>(u.value));
  17104. break;
  17105. }
  17106. case BuiltinOptions_SpaceToDepthOptions: {
  17107. value = new tflite::SpaceToDepthOptionsT(*reinterpret_cast<tflite::SpaceToDepthOptionsT *>(u.value));
  17108. break;
  17109. }
  17110. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  17111. value = new tflite::EmbeddingLookupSparseOptionsT(*reinterpret_cast<tflite::EmbeddingLookupSparseOptionsT *>(u.value));
  17112. break;
  17113. }
  17114. case BuiltinOptions_MulOptions: {
  17115. value = new tflite::MulOptionsT(*reinterpret_cast<tflite::MulOptionsT *>(u.value));
  17116. break;
  17117. }
  17118. case BuiltinOptions_PadOptions: {
  17119. value = new tflite::PadOptionsT(*reinterpret_cast<tflite::PadOptionsT *>(u.value));
  17120. break;
  17121. }
  17122. case BuiltinOptions_GatherOptions: {
  17123. value = new tflite::GatherOptionsT(*reinterpret_cast<tflite::GatherOptionsT *>(u.value));
  17124. break;
  17125. }
  17126. case BuiltinOptions_BatchToSpaceNDOptions: {
  17127. value = new tflite::BatchToSpaceNDOptionsT(*reinterpret_cast<tflite::BatchToSpaceNDOptionsT *>(u.value));
  17128. break;
  17129. }
  17130. case BuiltinOptions_SpaceToBatchNDOptions: {
  17131. value = new tflite::SpaceToBatchNDOptionsT(*reinterpret_cast<tflite::SpaceToBatchNDOptionsT *>(u.value));
  17132. break;
  17133. }
  17134. case BuiltinOptions_TransposeOptions: {
  17135. value = new tflite::TransposeOptionsT(*reinterpret_cast<tflite::TransposeOptionsT *>(u.value));
  17136. break;
  17137. }
  17138. case BuiltinOptions_ReducerOptions: {
  17139. value = new tflite::ReducerOptionsT(*reinterpret_cast<tflite::ReducerOptionsT *>(u.value));
  17140. break;
  17141. }
  17142. case BuiltinOptions_SubOptions: {
  17143. value = new tflite::SubOptionsT(*reinterpret_cast<tflite::SubOptionsT *>(u.value));
  17144. break;
  17145. }
  17146. case BuiltinOptions_DivOptions: {
  17147. value = new tflite::DivOptionsT(*reinterpret_cast<tflite::DivOptionsT *>(u.value));
  17148. break;
  17149. }
  17150. case BuiltinOptions_SqueezeOptions: {
  17151. value = new tflite::SqueezeOptionsT(*reinterpret_cast<tflite::SqueezeOptionsT *>(u.value));
  17152. break;
  17153. }
  17154. case BuiltinOptions_SequenceRNNOptions: {
  17155. value = new tflite::SequenceRNNOptionsT(*reinterpret_cast<tflite::SequenceRNNOptionsT *>(u.value));
  17156. break;
  17157. }
  17158. case BuiltinOptions_StridedSliceOptions: {
  17159. value = new tflite::StridedSliceOptionsT(*reinterpret_cast<tflite::StridedSliceOptionsT *>(u.value));
  17160. break;
  17161. }
  17162. case BuiltinOptions_ExpOptions: {
  17163. value = new tflite::ExpOptionsT(*reinterpret_cast<tflite::ExpOptionsT *>(u.value));
  17164. break;
  17165. }
  17166. case BuiltinOptions_TopKV2Options: {
  17167. value = new tflite::TopKV2OptionsT(*reinterpret_cast<tflite::TopKV2OptionsT *>(u.value));
  17168. break;
  17169. }
  17170. case BuiltinOptions_SplitOptions: {
  17171. value = new tflite::SplitOptionsT(*reinterpret_cast<tflite::SplitOptionsT *>(u.value));
  17172. break;
  17173. }
  17174. case BuiltinOptions_LogSoftmaxOptions: {
  17175. value = new tflite::LogSoftmaxOptionsT(*reinterpret_cast<tflite::LogSoftmaxOptionsT *>(u.value));
  17176. break;
  17177. }
  17178. case BuiltinOptions_CastOptions: {
  17179. value = new tflite::CastOptionsT(*reinterpret_cast<tflite::CastOptionsT *>(u.value));
  17180. break;
  17181. }
  17182. case BuiltinOptions_DequantizeOptions: {
  17183. value = new tflite::DequantizeOptionsT(*reinterpret_cast<tflite::DequantizeOptionsT *>(u.value));
  17184. break;
  17185. }
  17186. case BuiltinOptions_MaximumMinimumOptions: {
  17187. value = new tflite::MaximumMinimumOptionsT(*reinterpret_cast<tflite::MaximumMinimumOptionsT *>(u.value));
  17188. break;
  17189. }
  17190. case BuiltinOptions_ArgMaxOptions: {
  17191. value = new tflite::ArgMaxOptionsT(*reinterpret_cast<tflite::ArgMaxOptionsT *>(u.value));
  17192. break;
  17193. }
  17194. case BuiltinOptions_LessOptions: {
  17195. value = new tflite::LessOptionsT(*reinterpret_cast<tflite::LessOptionsT *>(u.value));
  17196. break;
  17197. }
  17198. case BuiltinOptions_NegOptions: {
  17199. value = new tflite::NegOptionsT(*reinterpret_cast<tflite::NegOptionsT *>(u.value));
  17200. break;
  17201. }
  17202. case BuiltinOptions_PadV2Options: {
  17203. value = new tflite::PadV2OptionsT(*reinterpret_cast<tflite::PadV2OptionsT *>(u.value));
  17204. break;
  17205. }
  17206. case BuiltinOptions_GreaterOptions: {
  17207. value = new tflite::GreaterOptionsT(*reinterpret_cast<tflite::GreaterOptionsT *>(u.value));
  17208. break;
  17209. }
  17210. case BuiltinOptions_GreaterEqualOptions: {
  17211. value = new tflite::GreaterEqualOptionsT(*reinterpret_cast<tflite::GreaterEqualOptionsT *>(u.value));
  17212. break;
  17213. }
  17214. case BuiltinOptions_LessEqualOptions: {
  17215. value = new tflite::LessEqualOptionsT(*reinterpret_cast<tflite::LessEqualOptionsT *>(u.value));
  17216. break;
  17217. }
  17218. case BuiltinOptions_SelectOptions: {
  17219. value = new tflite::SelectOptionsT(*reinterpret_cast<tflite::SelectOptionsT *>(u.value));
  17220. break;
  17221. }
  17222. case BuiltinOptions_SliceOptions: {
  17223. value = new tflite::SliceOptionsT(*reinterpret_cast<tflite::SliceOptionsT *>(u.value));
  17224. break;
  17225. }
  17226. case BuiltinOptions_TransposeConvOptions: {
  17227. value = new tflite::TransposeConvOptionsT(*reinterpret_cast<tflite::TransposeConvOptionsT *>(u.value));
  17228. break;
  17229. }
  17230. case BuiltinOptions_SparseToDenseOptions: {
  17231. value = new tflite::SparseToDenseOptionsT(*reinterpret_cast<tflite::SparseToDenseOptionsT *>(u.value));
  17232. break;
  17233. }
  17234. case BuiltinOptions_TileOptions: {
  17235. value = new tflite::TileOptionsT(*reinterpret_cast<tflite::TileOptionsT *>(u.value));
  17236. break;
  17237. }
  17238. case BuiltinOptions_ExpandDimsOptions: {
  17239. value = new tflite::ExpandDimsOptionsT(*reinterpret_cast<tflite::ExpandDimsOptionsT *>(u.value));
  17240. break;
  17241. }
  17242. case BuiltinOptions_EqualOptions: {
  17243. value = new tflite::EqualOptionsT(*reinterpret_cast<tflite::EqualOptionsT *>(u.value));
  17244. break;
  17245. }
  17246. case BuiltinOptions_NotEqualOptions: {
  17247. value = new tflite::NotEqualOptionsT(*reinterpret_cast<tflite::NotEqualOptionsT *>(u.value));
  17248. break;
  17249. }
  17250. case BuiltinOptions_ShapeOptions: {
  17251. value = new tflite::ShapeOptionsT(*reinterpret_cast<tflite::ShapeOptionsT *>(u.value));
  17252. break;
  17253. }
  17254. case BuiltinOptions_PowOptions: {
  17255. value = new tflite::PowOptionsT(*reinterpret_cast<tflite::PowOptionsT *>(u.value));
  17256. break;
  17257. }
  17258. case BuiltinOptions_ArgMinOptions: {
  17259. value = new tflite::ArgMinOptionsT(*reinterpret_cast<tflite::ArgMinOptionsT *>(u.value));
  17260. break;
  17261. }
  17262. case BuiltinOptions_FakeQuantOptions: {
  17263. value = new tflite::FakeQuantOptionsT(*reinterpret_cast<tflite::FakeQuantOptionsT *>(u.value));
  17264. break;
  17265. }
  17266. case BuiltinOptions_PackOptions: {
  17267. value = new tflite::PackOptionsT(*reinterpret_cast<tflite::PackOptionsT *>(u.value));
  17268. break;
  17269. }
  17270. case BuiltinOptions_LogicalOrOptions: {
  17271. value = new tflite::LogicalOrOptionsT(*reinterpret_cast<tflite::LogicalOrOptionsT *>(u.value));
  17272. break;
  17273. }
  17274. case BuiltinOptions_OneHotOptions: {
  17275. value = new tflite::OneHotOptionsT(*reinterpret_cast<tflite::OneHotOptionsT *>(u.value));
  17276. break;
  17277. }
  17278. case BuiltinOptions_LogicalAndOptions: {
  17279. value = new tflite::LogicalAndOptionsT(*reinterpret_cast<tflite::LogicalAndOptionsT *>(u.value));
  17280. break;
  17281. }
  17282. case BuiltinOptions_LogicalNotOptions: {
  17283. value = new tflite::LogicalNotOptionsT(*reinterpret_cast<tflite::LogicalNotOptionsT *>(u.value));
  17284. break;
  17285. }
  17286. case BuiltinOptions_UnpackOptions: {
  17287. value = new tflite::UnpackOptionsT(*reinterpret_cast<tflite::UnpackOptionsT *>(u.value));
  17288. break;
  17289. }
  17290. case BuiltinOptions_FloorDivOptions: {
  17291. value = new tflite::FloorDivOptionsT(*reinterpret_cast<tflite::FloorDivOptionsT *>(u.value));
  17292. break;
  17293. }
  17294. case BuiltinOptions_SquareOptions: {
  17295. value = new tflite::SquareOptionsT(*reinterpret_cast<tflite::SquareOptionsT *>(u.value));
  17296. break;
  17297. }
  17298. case BuiltinOptions_ZerosLikeOptions: {
  17299. value = new tflite::ZerosLikeOptionsT(*reinterpret_cast<tflite::ZerosLikeOptionsT *>(u.value));
  17300. break;
  17301. }
  17302. case BuiltinOptions_FillOptions: {
  17303. value = new tflite::FillOptionsT(*reinterpret_cast<tflite::FillOptionsT *>(u.value));
  17304. break;
  17305. }
  17306. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  17307. value = new tflite::BidirectionalSequenceLSTMOptionsT(*reinterpret_cast<tflite::BidirectionalSequenceLSTMOptionsT *>(u.value));
  17308. break;
  17309. }
  17310. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  17311. value = new tflite::BidirectionalSequenceRNNOptionsT(*reinterpret_cast<tflite::BidirectionalSequenceRNNOptionsT *>(u.value));
  17312. break;
  17313. }
  17314. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  17315. value = new tflite::UnidirectionalSequenceLSTMOptionsT(*reinterpret_cast<tflite::UnidirectionalSequenceLSTMOptionsT *>(u.value));
  17316. break;
  17317. }
  17318. case BuiltinOptions_FloorModOptions: {
  17319. value = new tflite::FloorModOptionsT(*reinterpret_cast<tflite::FloorModOptionsT *>(u.value));
  17320. break;
  17321. }
  17322. case BuiltinOptions_RangeOptions: {
  17323. value = new tflite::RangeOptionsT(*reinterpret_cast<tflite::RangeOptionsT *>(u.value));
  17324. break;
  17325. }
  17326. case BuiltinOptions_ResizeNearestNeighborOptions: {
  17327. value = new tflite::ResizeNearestNeighborOptionsT(*reinterpret_cast<tflite::ResizeNearestNeighborOptionsT *>(u.value));
  17328. break;
  17329. }
  17330. case BuiltinOptions_LeakyReluOptions: {
  17331. value = new tflite::LeakyReluOptionsT(*reinterpret_cast<tflite::LeakyReluOptionsT *>(u.value));
  17332. break;
  17333. }
  17334. case BuiltinOptions_SquaredDifferenceOptions: {
  17335. value = new tflite::SquaredDifferenceOptionsT(*reinterpret_cast<tflite::SquaredDifferenceOptionsT *>(u.value));
  17336. break;
  17337. }
  17338. case BuiltinOptions_MirrorPadOptions: {
  17339. value = new tflite::MirrorPadOptionsT(*reinterpret_cast<tflite::MirrorPadOptionsT *>(u.value));
  17340. break;
  17341. }
  17342. case BuiltinOptions_AbsOptions: {
  17343. value = new tflite::AbsOptionsT(*reinterpret_cast<tflite::AbsOptionsT *>(u.value));
  17344. break;
  17345. }
  17346. case BuiltinOptions_SplitVOptions: {
  17347. value = new tflite::SplitVOptionsT(*reinterpret_cast<tflite::SplitVOptionsT *>(u.value));
  17348. break;
  17349. }
  17350. case BuiltinOptions_UniqueOptions: {
  17351. value = new tflite::UniqueOptionsT(*reinterpret_cast<tflite::UniqueOptionsT *>(u.value));
  17352. break;
  17353. }
  17354. case BuiltinOptions_ReverseV2Options: {
  17355. value = new tflite::ReverseV2OptionsT(*reinterpret_cast<tflite::ReverseV2OptionsT *>(u.value));
  17356. break;
  17357. }
  17358. case BuiltinOptions_AddNOptions: {
  17359. value = new tflite::AddNOptionsT(*reinterpret_cast<tflite::AddNOptionsT *>(u.value));
  17360. break;
  17361. }
  17362. case BuiltinOptions_GatherNdOptions: {
  17363. value = new tflite::GatherNdOptionsT(*reinterpret_cast<tflite::GatherNdOptionsT *>(u.value));
  17364. break;
  17365. }
  17366. case BuiltinOptions_CosOptions: {
  17367. value = new tflite::CosOptionsT(*reinterpret_cast<tflite::CosOptionsT *>(u.value));
  17368. break;
  17369. }
  17370. case BuiltinOptions_WhereOptions: {
  17371. value = new tflite::WhereOptionsT(*reinterpret_cast<tflite::WhereOptionsT *>(u.value));
  17372. break;
  17373. }
  17374. case BuiltinOptions_RankOptions: {
  17375. value = new tflite::RankOptionsT(*reinterpret_cast<tflite::RankOptionsT *>(u.value));
  17376. break;
  17377. }
  17378. case BuiltinOptions_ReverseSequenceOptions: {
  17379. value = new tflite::ReverseSequenceOptionsT(*reinterpret_cast<tflite::ReverseSequenceOptionsT *>(u.value));
  17380. break;
  17381. }
  17382. case BuiltinOptions_MatrixDiagOptions: {
  17383. value = new tflite::MatrixDiagOptionsT(*reinterpret_cast<tflite::MatrixDiagOptionsT *>(u.value));
  17384. break;
  17385. }
  17386. case BuiltinOptions_QuantizeOptions: {
  17387. value = new tflite::QuantizeOptionsT(*reinterpret_cast<tflite::QuantizeOptionsT *>(u.value));
  17388. break;
  17389. }
  17390. case BuiltinOptions_MatrixSetDiagOptions: {
  17391. value = new tflite::MatrixSetDiagOptionsT(*reinterpret_cast<tflite::MatrixSetDiagOptionsT *>(u.value));
  17392. break;
  17393. }
  17394. case BuiltinOptions_HardSwishOptions: {
  17395. value = new tflite::HardSwishOptionsT(*reinterpret_cast<tflite::HardSwishOptionsT *>(u.value));
  17396. break;
  17397. }
  17398. case BuiltinOptions_IfOptions: {
  17399. value = new tflite::IfOptionsT(*reinterpret_cast<tflite::IfOptionsT *>(u.value));
  17400. break;
  17401. }
  17402. case BuiltinOptions_WhileOptions: {
  17403. value = new tflite::WhileOptionsT(*reinterpret_cast<tflite::WhileOptionsT *>(u.value));
  17404. break;
  17405. }
  17406. case BuiltinOptions_DepthToSpaceOptions: {
  17407. value = new tflite::DepthToSpaceOptionsT(*reinterpret_cast<tflite::DepthToSpaceOptionsT *>(u.value));
  17408. break;
  17409. }
  17410. case BuiltinOptions_NonMaxSuppressionV4Options: {
  17411. value = new tflite::NonMaxSuppressionV4OptionsT(*reinterpret_cast<tflite::NonMaxSuppressionV4OptionsT *>(u.value));
  17412. break;
  17413. }
  17414. case BuiltinOptions_NonMaxSuppressionV5Options: {
  17415. value = new tflite::NonMaxSuppressionV5OptionsT(*reinterpret_cast<tflite::NonMaxSuppressionV5OptionsT *>(u.value));
  17416. break;
  17417. }
  17418. case BuiltinOptions_ScatterNdOptions: {
  17419. value = new tflite::ScatterNdOptionsT(*reinterpret_cast<tflite::ScatterNdOptionsT *>(u.value));
  17420. break;
  17421. }
  17422. case BuiltinOptions_SelectV2Options: {
  17423. value = new tflite::SelectV2OptionsT(*reinterpret_cast<tflite::SelectV2OptionsT *>(u.value));
  17424. break;
  17425. }
  17426. case BuiltinOptions_DensifyOptions: {
  17427. value = new tflite::DensifyOptionsT(*reinterpret_cast<tflite::DensifyOptionsT *>(u.value));
  17428. break;
  17429. }
  17430. case BuiltinOptions_SegmentSumOptions: {
  17431. value = new tflite::SegmentSumOptionsT(*reinterpret_cast<tflite::SegmentSumOptionsT *>(u.value));
  17432. break;
  17433. }
  17434. case BuiltinOptions_BatchMatMulOptions: {
  17435. value = new tflite::BatchMatMulOptionsT(*reinterpret_cast<tflite::BatchMatMulOptionsT *>(u.value));
  17436. break;
  17437. }
  17438. case BuiltinOptions_CumsumOptions: {
  17439. value = new tflite::CumsumOptionsT(*reinterpret_cast<tflite::CumsumOptionsT *>(u.value));
  17440. break;
  17441. }
  17442. case BuiltinOptions_CallOnceOptions: {
  17443. value = new tflite::CallOnceOptionsT(*reinterpret_cast<tflite::CallOnceOptionsT *>(u.value));
  17444. break;
  17445. }
  17446. case BuiltinOptions_BroadcastToOptions: {
  17447. value = new tflite::BroadcastToOptionsT(*reinterpret_cast<tflite::BroadcastToOptionsT *>(u.value));
  17448. break;
  17449. }
  17450. case BuiltinOptions_Rfft2dOptions: {
  17451. value = new tflite::Rfft2dOptionsT(*reinterpret_cast<tflite::Rfft2dOptionsT *>(u.value));
  17452. break;
  17453. }
  17454. case BuiltinOptions_Conv3DOptions: {
  17455. value = new tflite::Conv3DOptionsT(*reinterpret_cast<tflite::Conv3DOptionsT *>(u.value));
  17456. break;
  17457. }
  17458. case BuiltinOptions_HashtableOptions: {
  17459. value = new tflite::HashtableOptionsT(*reinterpret_cast<tflite::HashtableOptionsT *>(u.value));
  17460. break;
  17461. }
  17462. case BuiltinOptions_HashtableFindOptions: {
  17463. value = new tflite::HashtableFindOptionsT(*reinterpret_cast<tflite::HashtableFindOptionsT *>(u.value));
  17464. break;
  17465. }
  17466. case BuiltinOptions_HashtableImportOptions: {
  17467. value = new tflite::HashtableImportOptionsT(*reinterpret_cast<tflite::HashtableImportOptionsT *>(u.value));
  17468. break;
  17469. }
  17470. case BuiltinOptions_HashtableSizeOptions: {
  17471. value = new tflite::HashtableSizeOptionsT(*reinterpret_cast<tflite::HashtableSizeOptionsT *>(u.value));
  17472. break;
  17473. }
  17474. case BuiltinOptions_VarHandleOptions: {
  17475. value = new tflite::VarHandleOptionsT(*reinterpret_cast<tflite::VarHandleOptionsT *>(u.value));
  17476. break;
  17477. }
  17478. case BuiltinOptions_ReadVariableOptions: {
  17479. value = new tflite::ReadVariableOptionsT(*reinterpret_cast<tflite::ReadVariableOptionsT *>(u.value));
  17480. break;
  17481. }
  17482. case BuiltinOptions_AssignVariableOptions: {
  17483. value = new tflite::AssignVariableOptionsT(*reinterpret_cast<tflite::AssignVariableOptionsT *>(u.value));
  17484. break;
  17485. }
  17486. case BuiltinOptions_RandomOptions: {
  17487. value = new tflite::RandomOptionsT(*reinterpret_cast<tflite::RandomOptionsT *>(u.value));
  17488. break;
  17489. }
  17490. case BuiltinOptions_BucketizeOptions: {
  17491. value = new tflite::BucketizeOptionsT(*reinterpret_cast<tflite::BucketizeOptionsT *>(u.value));
  17492. break;
  17493. }
  17494. case BuiltinOptions_GeluOptions: {
  17495. value = new tflite::GeluOptionsT(*reinterpret_cast<tflite::GeluOptionsT *>(u.value));
  17496. break;
  17497. }
  17498. case BuiltinOptions_DynamicUpdateSliceOptions: {
  17499. value = new tflite::DynamicUpdateSliceOptionsT(*reinterpret_cast<tflite::DynamicUpdateSliceOptionsT *>(u.value));
  17500. break;
  17501. }
  17502. case BuiltinOptions_UnsortedSegmentProdOptions: {
  17503. value = new tflite::UnsortedSegmentProdOptionsT(*reinterpret_cast<tflite::UnsortedSegmentProdOptionsT *>(u.value));
  17504. break;
  17505. }
  17506. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  17507. value = new tflite::UnsortedSegmentMaxOptionsT(*reinterpret_cast<tflite::UnsortedSegmentMaxOptionsT *>(u.value));
  17508. break;
  17509. }
  17510. case BuiltinOptions_UnsortedSegmentMinOptions: {
  17511. value = new tflite::UnsortedSegmentMinOptionsT(*reinterpret_cast<tflite::UnsortedSegmentMinOptionsT *>(u.value));
  17512. break;
  17513. }
  17514. case BuiltinOptions_UnsortedSegmentSumOptions: {
  17515. value = new tflite::UnsortedSegmentSumOptionsT(*reinterpret_cast<tflite::UnsortedSegmentSumOptionsT *>(u.value));
  17516. break;
  17517. }
  17518. case BuiltinOptions_ATan2Options: {
  17519. value = new tflite::ATan2OptionsT(*reinterpret_cast<tflite::ATan2OptionsT *>(u.value));
  17520. break;
  17521. }
  17522. case BuiltinOptions_SignOptions: {
  17523. value = new tflite::SignOptionsT(*reinterpret_cast<tflite::SignOptionsT *>(u.value));
  17524. break;
  17525. }
  17526. default:
  17527. break;
  17528. }
  17529. }
  17530. inline void BuiltinOptionsUnion::Reset() {
  17531. switch (type) {
  17532. case BuiltinOptions_Conv2DOptions: {
  17533. auto ptr = reinterpret_cast<tflite::Conv2DOptionsT *>(value);
  17534. delete ptr;
  17535. break;
  17536. }
  17537. case BuiltinOptions_DepthwiseConv2DOptions: {
  17538. auto ptr = reinterpret_cast<tflite::DepthwiseConv2DOptionsT *>(value);
  17539. delete ptr;
  17540. break;
  17541. }
  17542. case BuiltinOptions_ConcatEmbeddingsOptions: {
  17543. auto ptr = reinterpret_cast<tflite::ConcatEmbeddingsOptionsT *>(value);
  17544. delete ptr;
  17545. break;
  17546. }
  17547. case BuiltinOptions_LSHProjectionOptions: {
  17548. auto ptr = reinterpret_cast<tflite::LSHProjectionOptionsT *>(value);
  17549. delete ptr;
  17550. break;
  17551. }
  17552. case BuiltinOptions_Pool2DOptions: {
  17553. auto ptr = reinterpret_cast<tflite::Pool2DOptionsT *>(value);
  17554. delete ptr;
  17555. break;
  17556. }
  17557. case BuiltinOptions_SVDFOptions: {
  17558. auto ptr = reinterpret_cast<tflite::SVDFOptionsT *>(value);
  17559. delete ptr;
  17560. break;
  17561. }
  17562. case BuiltinOptions_RNNOptions: {
  17563. auto ptr = reinterpret_cast<tflite::RNNOptionsT *>(value);
  17564. delete ptr;
  17565. break;
  17566. }
  17567. case BuiltinOptions_FullyConnectedOptions: {
  17568. auto ptr = reinterpret_cast<tflite::FullyConnectedOptionsT *>(value);
  17569. delete ptr;
  17570. break;
  17571. }
  17572. case BuiltinOptions_SoftmaxOptions: {
  17573. auto ptr = reinterpret_cast<tflite::SoftmaxOptionsT *>(value);
  17574. delete ptr;
  17575. break;
  17576. }
  17577. case BuiltinOptions_ConcatenationOptions: {
  17578. auto ptr = reinterpret_cast<tflite::ConcatenationOptionsT *>(value);
  17579. delete ptr;
  17580. break;
  17581. }
  17582. case BuiltinOptions_AddOptions: {
  17583. auto ptr = reinterpret_cast<tflite::AddOptionsT *>(value);
  17584. delete ptr;
  17585. break;
  17586. }
  17587. case BuiltinOptions_L2NormOptions: {
  17588. auto ptr = reinterpret_cast<tflite::L2NormOptionsT *>(value);
  17589. delete ptr;
  17590. break;
  17591. }
  17592. case BuiltinOptions_LocalResponseNormalizationOptions: {
  17593. auto ptr = reinterpret_cast<tflite::LocalResponseNormalizationOptionsT *>(value);
  17594. delete ptr;
  17595. break;
  17596. }
  17597. case BuiltinOptions_LSTMOptions: {
  17598. auto ptr = reinterpret_cast<tflite::LSTMOptionsT *>(value);
  17599. delete ptr;
  17600. break;
  17601. }
  17602. case BuiltinOptions_ResizeBilinearOptions: {
  17603. auto ptr = reinterpret_cast<tflite::ResizeBilinearOptionsT *>(value);
  17604. delete ptr;
  17605. break;
  17606. }
  17607. case BuiltinOptions_CallOptions: {
  17608. auto ptr = reinterpret_cast<tflite::CallOptionsT *>(value);
  17609. delete ptr;
  17610. break;
  17611. }
  17612. case BuiltinOptions_ReshapeOptions: {
  17613. auto ptr = reinterpret_cast<tflite::ReshapeOptionsT *>(value);
  17614. delete ptr;
  17615. break;
  17616. }
  17617. case BuiltinOptions_SkipGramOptions: {
  17618. auto ptr = reinterpret_cast<tflite::SkipGramOptionsT *>(value);
  17619. delete ptr;
  17620. break;
  17621. }
  17622. case BuiltinOptions_SpaceToDepthOptions: {
  17623. auto ptr = reinterpret_cast<tflite::SpaceToDepthOptionsT *>(value);
  17624. delete ptr;
  17625. break;
  17626. }
  17627. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  17628. auto ptr = reinterpret_cast<tflite::EmbeddingLookupSparseOptionsT *>(value);
  17629. delete ptr;
  17630. break;
  17631. }
  17632. case BuiltinOptions_MulOptions: {
  17633. auto ptr = reinterpret_cast<tflite::MulOptionsT *>(value);
  17634. delete ptr;
  17635. break;
  17636. }
  17637. case BuiltinOptions_PadOptions: {
  17638. auto ptr = reinterpret_cast<tflite::PadOptionsT *>(value);
  17639. delete ptr;
  17640. break;
  17641. }
  17642. case BuiltinOptions_GatherOptions: {
  17643. auto ptr = reinterpret_cast<tflite::GatherOptionsT *>(value);
  17644. delete ptr;
  17645. break;
  17646. }
  17647. case BuiltinOptions_BatchToSpaceNDOptions: {
  17648. auto ptr = reinterpret_cast<tflite::BatchToSpaceNDOptionsT *>(value);
  17649. delete ptr;
  17650. break;
  17651. }
  17652. case BuiltinOptions_SpaceToBatchNDOptions: {
  17653. auto ptr = reinterpret_cast<tflite::SpaceToBatchNDOptionsT *>(value);
  17654. delete ptr;
  17655. break;
  17656. }
  17657. case BuiltinOptions_TransposeOptions: {
  17658. auto ptr = reinterpret_cast<tflite::TransposeOptionsT *>(value);
  17659. delete ptr;
  17660. break;
  17661. }
  17662. case BuiltinOptions_ReducerOptions: {
  17663. auto ptr = reinterpret_cast<tflite::ReducerOptionsT *>(value);
  17664. delete ptr;
  17665. break;
  17666. }
  17667. case BuiltinOptions_SubOptions: {
  17668. auto ptr = reinterpret_cast<tflite::SubOptionsT *>(value);
  17669. delete ptr;
  17670. break;
  17671. }
  17672. case BuiltinOptions_DivOptions: {
  17673. auto ptr = reinterpret_cast<tflite::DivOptionsT *>(value);
  17674. delete ptr;
  17675. break;
  17676. }
  17677. case BuiltinOptions_SqueezeOptions: {
  17678. auto ptr = reinterpret_cast<tflite::SqueezeOptionsT *>(value);
  17679. delete ptr;
  17680. break;
  17681. }
  17682. case BuiltinOptions_SequenceRNNOptions: {
  17683. auto ptr = reinterpret_cast<tflite::SequenceRNNOptionsT *>(value);
  17684. delete ptr;
  17685. break;
  17686. }
  17687. case BuiltinOptions_StridedSliceOptions: {
  17688. auto ptr = reinterpret_cast<tflite::StridedSliceOptionsT *>(value);
  17689. delete ptr;
  17690. break;
  17691. }
  17692. case BuiltinOptions_ExpOptions: {
  17693. auto ptr = reinterpret_cast<tflite::ExpOptionsT *>(value);
  17694. delete ptr;
  17695. break;
  17696. }
  17697. case BuiltinOptions_TopKV2Options: {
  17698. auto ptr = reinterpret_cast<tflite::TopKV2OptionsT *>(value);
  17699. delete ptr;
  17700. break;
  17701. }
  17702. case BuiltinOptions_SplitOptions: {
  17703. auto ptr = reinterpret_cast<tflite::SplitOptionsT *>(value);
  17704. delete ptr;
  17705. break;
  17706. }
  17707. case BuiltinOptions_LogSoftmaxOptions: {
  17708. auto ptr = reinterpret_cast<tflite::LogSoftmaxOptionsT *>(value);
  17709. delete ptr;
  17710. break;
  17711. }
  17712. case BuiltinOptions_CastOptions: {
  17713. auto ptr = reinterpret_cast<tflite::CastOptionsT *>(value);
  17714. delete ptr;
  17715. break;
  17716. }
  17717. case BuiltinOptions_DequantizeOptions: {
  17718. auto ptr = reinterpret_cast<tflite::DequantizeOptionsT *>(value);
  17719. delete ptr;
  17720. break;
  17721. }
  17722. case BuiltinOptions_MaximumMinimumOptions: {
  17723. auto ptr = reinterpret_cast<tflite::MaximumMinimumOptionsT *>(value);
  17724. delete ptr;
  17725. break;
  17726. }
  17727. case BuiltinOptions_ArgMaxOptions: {
  17728. auto ptr = reinterpret_cast<tflite::ArgMaxOptionsT *>(value);
  17729. delete ptr;
  17730. break;
  17731. }
  17732. case BuiltinOptions_LessOptions: {
  17733. auto ptr = reinterpret_cast<tflite::LessOptionsT *>(value);
  17734. delete ptr;
  17735. break;
  17736. }
  17737. case BuiltinOptions_NegOptions: {
  17738. auto ptr = reinterpret_cast<tflite::NegOptionsT *>(value);
  17739. delete ptr;
  17740. break;
  17741. }
  17742. case BuiltinOptions_PadV2Options: {
  17743. auto ptr = reinterpret_cast<tflite::PadV2OptionsT *>(value);
  17744. delete ptr;
  17745. break;
  17746. }
  17747. case BuiltinOptions_GreaterOptions: {
  17748. auto ptr = reinterpret_cast<tflite::GreaterOptionsT *>(value);
  17749. delete ptr;
  17750. break;
  17751. }
  17752. case BuiltinOptions_GreaterEqualOptions: {
  17753. auto ptr = reinterpret_cast<tflite::GreaterEqualOptionsT *>(value);
  17754. delete ptr;
  17755. break;
  17756. }
  17757. case BuiltinOptions_LessEqualOptions: {
  17758. auto ptr = reinterpret_cast<tflite::LessEqualOptionsT *>(value);
  17759. delete ptr;
  17760. break;
  17761. }
  17762. case BuiltinOptions_SelectOptions: {
  17763. auto ptr = reinterpret_cast<tflite::SelectOptionsT *>(value);
  17764. delete ptr;
  17765. break;
  17766. }
  17767. case BuiltinOptions_SliceOptions: {
  17768. auto ptr = reinterpret_cast<tflite::SliceOptionsT *>(value);
  17769. delete ptr;
  17770. break;
  17771. }
  17772. case BuiltinOptions_TransposeConvOptions: {
  17773. auto ptr = reinterpret_cast<tflite::TransposeConvOptionsT *>(value);
  17774. delete ptr;
  17775. break;
  17776. }
  17777. case BuiltinOptions_SparseToDenseOptions: {
  17778. auto ptr = reinterpret_cast<tflite::SparseToDenseOptionsT *>(value);
  17779. delete ptr;
  17780. break;
  17781. }
  17782. case BuiltinOptions_TileOptions: {
  17783. auto ptr = reinterpret_cast<tflite::TileOptionsT *>(value);
  17784. delete ptr;
  17785. break;
  17786. }
  17787. case BuiltinOptions_ExpandDimsOptions: {
  17788. auto ptr = reinterpret_cast<tflite::ExpandDimsOptionsT *>(value);
  17789. delete ptr;
  17790. break;
  17791. }
  17792. case BuiltinOptions_EqualOptions: {
  17793. auto ptr = reinterpret_cast<tflite::EqualOptionsT *>(value);
  17794. delete ptr;
  17795. break;
  17796. }
  17797. case BuiltinOptions_NotEqualOptions: {
  17798. auto ptr = reinterpret_cast<tflite::NotEqualOptionsT *>(value);
  17799. delete ptr;
  17800. break;
  17801. }
  17802. case BuiltinOptions_ShapeOptions: {
  17803. auto ptr = reinterpret_cast<tflite::ShapeOptionsT *>(value);
  17804. delete ptr;
  17805. break;
  17806. }
  17807. case BuiltinOptions_PowOptions: {
  17808. auto ptr = reinterpret_cast<tflite::PowOptionsT *>(value);
  17809. delete ptr;
  17810. break;
  17811. }
  17812. case BuiltinOptions_ArgMinOptions: {
  17813. auto ptr = reinterpret_cast<tflite::ArgMinOptionsT *>(value);
  17814. delete ptr;
  17815. break;
  17816. }
  17817. case BuiltinOptions_FakeQuantOptions: {
  17818. auto ptr = reinterpret_cast<tflite::FakeQuantOptionsT *>(value);
  17819. delete ptr;
  17820. break;
  17821. }
  17822. case BuiltinOptions_PackOptions: {
  17823. auto ptr = reinterpret_cast<tflite::PackOptionsT *>(value);
  17824. delete ptr;
  17825. break;
  17826. }
  17827. case BuiltinOptions_LogicalOrOptions: {
  17828. auto ptr = reinterpret_cast<tflite::LogicalOrOptionsT *>(value);
  17829. delete ptr;
  17830. break;
  17831. }
  17832. case BuiltinOptions_OneHotOptions: {
  17833. auto ptr = reinterpret_cast<tflite::OneHotOptionsT *>(value);
  17834. delete ptr;
  17835. break;
  17836. }
  17837. case BuiltinOptions_LogicalAndOptions: {
  17838. auto ptr = reinterpret_cast<tflite::LogicalAndOptionsT *>(value);
  17839. delete ptr;
  17840. break;
  17841. }
  17842. case BuiltinOptions_LogicalNotOptions: {
  17843. auto ptr = reinterpret_cast<tflite::LogicalNotOptionsT *>(value);
  17844. delete ptr;
  17845. break;
  17846. }
  17847. case BuiltinOptions_UnpackOptions: {
  17848. auto ptr = reinterpret_cast<tflite::UnpackOptionsT *>(value);
  17849. delete ptr;
  17850. break;
  17851. }
  17852. case BuiltinOptions_FloorDivOptions: {
  17853. auto ptr = reinterpret_cast<tflite::FloorDivOptionsT *>(value);
  17854. delete ptr;
  17855. break;
  17856. }
  17857. case BuiltinOptions_SquareOptions: {
  17858. auto ptr = reinterpret_cast<tflite::SquareOptionsT *>(value);
  17859. delete ptr;
  17860. break;
  17861. }
  17862. case BuiltinOptions_ZerosLikeOptions: {
  17863. auto ptr = reinterpret_cast<tflite::ZerosLikeOptionsT *>(value);
  17864. delete ptr;
  17865. break;
  17866. }
  17867. case BuiltinOptions_FillOptions: {
  17868. auto ptr = reinterpret_cast<tflite::FillOptionsT *>(value);
  17869. delete ptr;
  17870. break;
  17871. }
  17872. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  17873. auto ptr = reinterpret_cast<tflite::BidirectionalSequenceLSTMOptionsT *>(value);
  17874. delete ptr;
  17875. break;
  17876. }
  17877. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  17878. auto ptr = reinterpret_cast<tflite::BidirectionalSequenceRNNOptionsT *>(value);
  17879. delete ptr;
  17880. break;
  17881. }
  17882. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  17883. auto ptr = reinterpret_cast<tflite::UnidirectionalSequenceLSTMOptionsT *>(value);
  17884. delete ptr;
  17885. break;
  17886. }
  17887. case BuiltinOptions_FloorModOptions: {
  17888. auto ptr = reinterpret_cast<tflite::FloorModOptionsT *>(value);
  17889. delete ptr;
  17890. break;
  17891. }
  17892. case BuiltinOptions_RangeOptions: {
  17893. auto ptr = reinterpret_cast<tflite::RangeOptionsT *>(value);
  17894. delete ptr;
  17895. break;
  17896. }
  17897. case BuiltinOptions_ResizeNearestNeighborOptions: {
  17898. auto ptr = reinterpret_cast<tflite::ResizeNearestNeighborOptionsT *>(value);
  17899. delete ptr;
  17900. break;
  17901. }
  17902. case BuiltinOptions_LeakyReluOptions: {
  17903. auto ptr = reinterpret_cast<tflite::LeakyReluOptionsT *>(value);
  17904. delete ptr;
  17905. break;
  17906. }
  17907. case BuiltinOptions_SquaredDifferenceOptions: {
  17908. auto ptr = reinterpret_cast<tflite::SquaredDifferenceOptionsT *>(value);
  17909. delete ptr;
  17910. break;
  17911. }
  17912. case BuiltinOptions_MirrorPadOptions: {
  17913. auto ptr = reinterpret_cast<tflite::MirrorPadOptionsT *>(value);
  17914. delete ptr;
  17915. break;
  17916. }
  17917. case BuiltinOptions_AbsOptions: {
  17918. auto ptr = reinterpret_cast<tflite::AbsOptionsT *>(value);
  17919. delete ptr;
  17920. break;
  17921. }
  17922. case BuiltinOptions_SplitVOptions: {
  17923. auto ptr = reinterpret_cast<tflite::SplitVOptionsT *>(value);
  17924. delete ptr;
  17925. break;
  17926. }
  17927. case BuiltinOptions_UniqueOptions: {
  17928. auto ptr = reinterpret_cast<tflite::UniqueOptionsT *>(value);
  17929. delete ptr;
  17930. break;
  17931. }
  17932. case BuiltinOptions_ReverseV2Options: {
  17933. auto ptr = reinterpret_cast<tflite::ReverseV2OptionsT *>(value);
  17934. delete ptr;
  17935. break;
  17936. }
  17937. case BuiltinOptions_AddNOptions: {
  17938. auto ptr = reinterpret_cast<tflite::AddNOptionsT *>(value);
  17939. delete ptr;
  17940. break;
  17941. }
  17942. case BuiltinOptions_GatherNdOptions: {
  17943. auto ptr = reinterpret_cast<tflite::GatherNdOptionsT *>(value);
  17944. delete ptr;
  17945. break;
  17946. }
  17947. case BuiltinOptions_CosOptions: {
  17948. auto ptr = reinterpret_cast<tflite::CosOptionsT *>(value);
  17949. delete ptr;
  17950. break;
  17951. }
  17952. case BuiltinOptions_WhereOptions: {
  17953. auto ptr = reinterpret_cast<tflite::WhereOptionsT *>(value);
  17954. delete ptr;
  17955. break;
  17956. }
  17957. case BuiltinOptions_RankOptions: {
  17958. auto ptr = reinterpret_cast<tflite::RankOptionsT *>(value);
  17959. delete ptr;
  17960. break;
  17961. }
  17962. case BuiltinOptions_ReverseSequenceOptions: {
  17963. auto ptr = reinterpret_cast<tflite::ReverseSequenceOptionsT *>(value);
  17964. delete ptr;
  17965. break;
  17966. }
  17967. case BuiltinOptions_MatrixDiagOptions: {
  17968. auto ptr = reinterpret_cast<tflite::MatrixDiagOptionsT *>(value);
  17969. delete ptr;
  17970. break;
  17971. }
  17972. case BuiltinOptions_QuantizeOptions: {
  17973. auto ptr = reinterpret_cast<tflite::QuantizeOptionsT *>(value);
  17974. delete ptr;
  17975. break;
  17976. }
  17977. case BuiltinOptions_MatrixSetDiagOptions: {
  17978. auto ptr = reinterpret_cast<tflite::MatrixSetDiagOptionsT *>(value);
  17979. delete ptr;
  17980. break;
  17981. }
  17982. case BuiltinOptions_HardSwishOptions: {
  17983. auto ptr = reinterpret_cast<tflite::HardSwishOptionsT *>(value);
  17984. delete ptr;
  17985. break;
  17986. }
  17987. case BuiltinOptions_IfOptions: {
  17988. auto ptr = reinterpret_cast<tflite::IfOptionsT *>(value);
  17989. delete ptr;
  17990. break;
  17991. }
  17992. case BuiltinOptions_WhileOptions: {
  17993. auto ptr = reinterpret_cast<tflite::WhileOptionsT *>(value);
  17994. delete ptr;
  17995. break;
  17996. }
  17997. case BuiltinOptions_DepthToSpaceOptions: {
  17998. auto ptr = reinterpret_cast<tflite::DepthToSpaceOptionsT *>(value);
  17999. delete ptr;
  18000. break;
  18001. }
  18002. case BuiltinOptions_NonMaxSuppressionV4Options: {
  18003. auto ptr = reinterpret_cast<tflite::NonMaxSuppressionV4OptionsT *>(value);
  18004. delete ptr;
  18005. break;
  18006. }
  18007. case BuiltinOptions_NonMaxSuppressionV5Options: {
  18008. auto ptr = reinterpret_cast<tflite::NonMaxSuppressionV5OptionsT *>(value);
  18009. delete ptr;
  18010. break;
  18011. }
  18012. case BuiltinOptions_ScatterNdOptions: {
  18013. auto ptr = reinterpret_cast<tflite::ScatterNdOptionsT *>(value);
  18014. delete ptr;
  18015. break;
  18016. }
  18017. case BuiltinOptions_SelectV2Options: {
  18018. auto ptr = reinterpret_cast<tflite::SelectV2OptionsT *>(value);
  18019. delete ptr;
  18020. break;
  18021. }
  18022. case BuiltinOptions_DensifyOptions: {
  18023. auto ptr = reinterpret_cast<tflite::DensifyOptionsT *>(value);
  18024. delete ptr;
  18025. break;
  18026. }
  18027. case BuiltinOptions_SegmentSumOptions: {
  18028. auto ptr = reinterpret_cast<tflite::SegmentSumOptionsT *>(value);
  18029. delete ptr;
  18030. break;
  18031. }
  18032. case BuiltinOptions_BatchMatMulOptions: {
  18033. auto ptr = reinterpret_cast<tflite::BatchMatMulOptionsT *>(value);
  18034. delete ptr;
  18035. break;
  18036. }
  18037. case BuiltinOptions_CumsumOptions: {
  18038. auto ptr = reinterpret_cast<tflite::CumsumOptionsT *>(value);
  18039. delete ptr;
  18040. break;
  18041. }
  18042. case BuiltinOptions_CallOnceOptions: {
  18043. auto ptr = reinterpret_cast<tflite::CallOnceOptionsT *>(value);
  18044. delete ptr;
  18045. break;
  18046. }
  18047. case BuiltinOptions_BroadcastToOptions: {
  18048. auto ptr = reinterpret_cast<tflite::BroadcastToOptionsT *>(value);
  18049. delete ptr;
  18050. break;
  18051. }
  18052. case BuiltinOptions_Rfft2dOptions: {
  18053. auto ptr = reinterpret_cast<tflite::Rfft2dOptionsT *>(value);
  18054. delete ptr;
  18055. break;
  18056. }
  18057. case BuiltinOptions_Conv3DOptions: {
  18058. auto ptr = reinterpret_cast<tflite::Conv3DOptionsT *>(value);
  18059. delete ptr;
  18060. break;
  18061. }
  18062. case BuiltinOptions_HashtableOptions: {
  18063. auto ptr = reinterpret_cast<tflite::HashtableOptionsT *>(value);
  18064. delete ptr;
  18065. break;
  18066. }
  18067. case BuiltinOptions_HashtableFindOptions: {
  18068. auto ptr = reinterpret_cast<tflite::HashtableFindOptionsT *>(value);
  18069. delete ptr;
  18070. break;
  18071. }
  18072. case BuiltinOptions_HashtableImportOptions: {
  18073. auto ptr = reinterpret_cast<tflite::HashtableImportOptionsT *>(value);
  18074. delete ptr;
  18075. break;
  18076. }
  18077. case BuiltinOptions_HashtableSizeOptions: {
  18078. auto ptr = reinterpret_cast<tflite::HashtableSizeOptionsT *>(value);
  18079. delete ptr;
  18080. break;
  18081. }
  18082. case BuiltinOptions_VarHandleOptions: {
  18083. auto ptr = reinterpret_cast<tflite::VarHandleOptionsT *>(value);
  18084. delete ptr;
  18085. break;
  18086. }
  18087. case BuiltinOptions_ReadVariableOptions: {
  18088. auto ptr = reinterpret_cast<tflite::ReadVariableOptionsT *>(value);
  18089. delete ptr;
  18090. break;
  18091. }
  18092. case BuiltinOptions_AssignVariableOptions: {
  18093. auto ptr = reinterpret_cast<tflite::AssignVariableOptionsT *>(value);
  18094. delete ptr;
  18095. break;
  18096. }
  18097. case BuiltinOptions_RandomOptions: {
  18098. auto ptr = reinterpret_cast<tflite::RandomOptionsT *>(value);
  18099. delete ptr;
  18100. break;
  18101. }
  18102. case BuiltinOptions_BucketizeOptions: {
  18103. auto ptr = reinterpret_cast<tflite::BucketizeOptionsT *>(value);
  18104. delete ptr;
  18105. break;
  18106. }
  18107. case BuiltinOptions_GeluOptions: {
  18108. auto ptr = reinterpret_cast<tflite::GeluOptionsT *>(value);
  18109. delete ptr;
  18110. break;
  18111. }
  18112. case BuiltinOptions_DynamicUpdateSliceOptions: {
  18113. auto ptr = reinterpret_cast<tflite::DynamicUpdateSliceOptionsT *>(value);
  18114. delete ptr;
  18115. break;
  18116. }
  18117. case BuiltinOptions_UnsortedSegmentProdOptions: {
  18118. auto ptr = reinterpret_cast<tflite::UnsortedSegmentProdOptionsT *>(value);
  18119. delete ptr;
  18120. break;
  18121. }
  18122. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  18123. auto ptr = reinterpret_cast<tflite::UnsortedSegmentMaxOptionsT *>(value);
  18124. delete ptr;
  18125. break;
  18126. }
  18127. case BuiltinOptions_UnsortedSegmentMinOptions: {
  18128. auto ptr = reinterpret_cast<tflite::UnsortedSegmentMinOptionsT *>(value);
  18129. delete ptr;
  18130. break;
  18131. }
  18132. case BuiltinOptions_UnsortedSegmentSumOptions: {
  18133. auto ptr = reinterpret_cast<tflite::UnsortedSegmentSumOptionsT *>(value);
  18134. delete ptr;
  18135. break;
  18136. }
  18137. case BuiltinOptions_ATan2Options: {
  18138. auto ptr = reinterpret_cast<tflite::ATan2OptionsT *>(value);
  18139. delete ptr;
  18140. break;
  18141. }
  18142. case BuiltinOptions_SignOptions: {
  18143. auto ptr = reinterpret_cast<tflite::SignOptionsT *>(value);
  18144. delete ptr;
  18145. break;
  18146. }
  18147. default: break;
  18148. }
  18149. value = nullptr;
  18150. type = BuiltinOptions_NONE;
  18151. }
  18152. inline const tflite::Model *GetModel(const void *buf) {
  18153. return flatbuffers::GetRoot<tflite::Model>(buf);
  18154. }
  18155. inline const tflite::Model *GetSizePrefixedModel(const void *buf) {
  18156. return flatbuffers::GetSizePrefixedRoot<tflite::Model>(buf);
  18157. }
  18158. inline const char *ModelIdentifier() {
  18159. return "TFL3";
  18160. }
  18161. inline bool ModelBufferHasIdentifier(const void *buf) {
  18162. return flatbuffers::BufferHasIdentifier(
  18163. buf, ModelIdentifier());
  18164. }
  18165. inline bool SizePrefixedModelBufferHasIdentifier(const void *buf) {
  18166. return flatbuffers::BufferHasIdentifier(
  18167. buf, ModelIdentifier(), true);
  18168. }
  18169. inline bool VerifyModelBuffer(
  18170. flatbuffers::Verifier &verifier) {
  18171. return verifier.VerifyBuffer<tflite::Model>(ModelIdentifier());
  18172. }
  18173. inline bool VerifySizePrefixedModelBuffer(
  18174. flatbuffers::Verifier &verifier) {
  18175. return verifier.VerifySizePrefixedBuffer<tflite::Model>(ModelIdentifier());
  18176. }
  18177. inline const char *ModelExtension() {
  18178. return "tflite";
  18179. }
  18180. inline void FinishModelBuffer(
  18181. flatbuffers::FlatBufferBuilder &fbb,
  18182. flatbuffers::Offset<tflite::Model> root) {
  18183. fbb.Finish(root, ModelIdentifier());
  18184. }
  18185. inline void FinishSizePrefixedModelBuffer(
  18186. flatbuffers::FlatBufferBuilder &fbb,
  18187. flatbuffers::Offset<tflite::Model> root) {
  18188. fbb.FinishSizePrefixed(root, ModelIdentifier());
  18189. }
  18190. inline std::unique_ptr<tflite::ModelT> UnPackModel(
  18191. const void *buf,
  18192. const flatbuffers::resolver_function_t *res = nullptr) {
  18193. return std::unique_ptr<tflite::ModelT>(GetModel(buf)->UnPack(res));
  18194. }
  18195. inline std::unique_ptr<tflite::ModelT> UnPackSizePrefixedModel(
  18196. const void *buf,
  18197. const flatbuffers::resolver_function_t *res = nullptr) {
  18198. return std::unique_ptr<tflite::ModelT>(GetSizePrefixedModel(buf)->UnPack(res));
  18199. }
  18200. } // namespace tflite
  18201. #endif // FLATBUFFERS_GENERATED_SCHEMA_TFLITE_H_