schema_generated.h 820 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086160871608816089160901609116092160931609416095160961609716098160991610016101161021610316104161051610616107161081610916110161111611216113161141611516116161171611816119161201612116122161231612416125161261612716128161291613016131161321613316134161351613616137161381613916140161411614216143161441614516146161471614816149161501615116152161531615416155161561615716158161591616016161161621616316164161651616616167161681616916170161711617216173161741617516176161771617816179161801618116182161831618416185161861618716188161891619016191161921619316194161951619616197161981619916200162011620216203162041620516206162071620816209162101621116212162131621416215162161621716218162191622016221162221622316224162251622616227162281622916230162311623216233162341623516236162371623816239162401624116242162431624416245162461624716248162491625016251162521625316254162551625616257162581625916260162611626216263162641626516266162671626816269162701627116272162731627416275162761627716278162791628016281162821628316284162851628616287162881628916290162911629216293162941629516296162971629816299163001630116302163031630416305163061630716308163091631016311163121631316314163151631616317163181631916320163211632216323163241632516326163271632816329163301633116332163331633416335163361633716338163391634016341163421634316344163451634616347163481634916350163511635216353163541635516356163571635816359163601636116362163631636416365163661636716368163691637016371163721637316374163751637616377163781637916380163811638216383163841638516386163871638816389163901639116392163931639416395163961639716398163991640016401164021640316404164051640616407164081640916410164111641216413164141641516416164171641816419164201642116422164231642416425164261642716428164291643016431164321643316434164351643616437164381643916440164411644216443164441644516446164471644816449164501645116452164531645416455164561645716458164591646016461164621646316464164651646616467164681646916470164711647216473164741647516476164771647816479164801648116482164831648416485164861648716488164891649016491164921649316494164951649616497164981649916500165011650216503165041650516506165071650816509165101651116512165131651416515165161651716518165191652016521165221652316524165251652616527165281652916530165311653216533165341653516536165371653816539165401654116542165431654416545165461654716548165491655016551165521655316554165551655616557165581655916560165611656216563165641656516566165671656816569165701657116572165731657416575165761657716578165791658016581165821658316584165851658616587165881658916590165911659216593165941659516596165971659816599166001660116602166031660416605166061660716608166091661016611166121661316614166151661616617166181661916620166211662216623166241662516626166271662816629166301663116632166331663416635166361663716638166391664016641166421664316644166451664616647166481664916650166511665216653166541665516656166571665816659166601666116662166631666416665166661666716668166691667016671166721667316674166751667616677166781667916680166811668216683166841668516686166871668816689166901669116692166931669416695166961669716698166991670016701167021670316704167051670616707167081670916710167111671216713167141671516716167171671816719167201672116722167231672416725167261672716728167291673016731167321673316734167351673616737167381673916740167411674216743167441674516746167471674816749167501675116752167531675416755167561675716758167591676016761167621676316764167651676616767167681676916770167711677216773167741677516776167771677816779167801678116782167831678416785167861678716788167891679016791167921679316794167951679616797167981679916800168011680216803168041680516806168071680816809168101681116812168131681416815168161681716818168191682016821168221682316824168251682616827168281682916830168311683216833168341683516836168371683816839168401684116842168431684416845168461684716848168491685016851168521685316854168551685616857168581685916860168611686216863168641686516866168671686816869168701687116872168731687416875168761687716878168791688016881168821688316884168851688616887168881688916890168911689216893168941689516896168971689816899169001690116902169031690416905169061690716908169091691016911169121691316914169151691616917169181691916920169211692216923169241692516926169271692816929169301693116932169331693416935169361693716938169391694016941169421694316944169451694616947169481694916950169511695216953169541695516956169571695816959169601696116962169631696416965169661696716968169691697016971169721697316974169751697616977169781697916980169811698216983169841698516986169871698816989169901699116992169931699416995169961699716998169991700017001170021700317004170051700617007170081700917010170111701217013170141701517016170171701817019170201702117022170231702417025170261702717028170291703017031170321703317034170351703617037170381703917040170411704217043170441704517046170471704817049170501705117052170531705417055170561705717058170591706017061170621706317064170651706617067170681706917070170711707217073170741707517076170771707817079170801708117082170831708417085170861708717088170891709017091170921709317094170951709617097170981709917100171011710217103171041710517106171071710817109171101711117112171131711417115171161711717118171191712017121171221712317124171251712617127171281712917130171311713217133171341713517136171371713817139171401714117142171431714417145171461714717148171491715017151171521715317154171551715617157171581715917160171611716217163171641716517166171671716817169171701717117172171731717417175171761717717178171791718017181171821718317184171851718617187171881718917190171911719217193171941719517196171971719817199172001720117202172031720417205172061720717208172091721017211172121721317214172151721617217172181721917220172211722217223172241722517226172271722817229172301723117232172331723417235172361723717238172391724017241172421724317244172451724617247172481724917250172511725217253172541725517256172571725817259172601726117262172631726417265172661726717268172691727017271172721727317274172751727617277172781727917280172811728217283172841728517286172871728817289172901729117292172931729417295172961729717298172991730017301173021730317304173051730617307173081730917310173111731217313173141731517316173171731817319173201732117322173231732417325173261732717328173291733017331173321733317334173351733617337173381733917340173411734217343173441734517346173471734817349173501735117352173531735417355173561735717358173591736017361173621736317364173651736617367173681736917370173711737217373173741737517376173771737817379173801738117382173831738417385173861738717388173891739017391173921739317394173951739617397173981739917400174011740217403174041740517406174071740817409174101741117412174131741417415174161741717418174191742017421174221742317424174251742617427174281742917430174311743217433174341743517436174371743817439174401744117442174431744417445174461744717448174491745017451174521745317454174551745617457174581745917460174611746217463174641746517466174671746817469174701747117472174731747417475174761747717478174791748017481174821748317484174851748617487174881748917490174911749217493174941749517496174971749817499175001750117502175031750417505175061750717508175091751017511175121751317514175151751617517175181751917520175211752217523175241752517526175271752817529175301753117532175331753417535175361753717538175391754017541175421754317544175451754617547175481754917550175511755217553175541755517556175571755817559175601756117562175631756417565175661756717568175691757017571175721757317574175751757617577175781757917580175811758217583175841758517586175871758817589175901759117592175931759417595175961759717598175991760017601176021760317604176051760617607176081760917610176111761217613176141761517616176171761817619176201762117622176231762417625176261762717628176291763017631176321763317634176351763617637176381763917640176411764217643176441764517646176471764817649176501765117652176531765417655176561765717658176591766017661176621766317664176651766617667176681766917670176711767217673176741767517676176771767817679176801768117682176831768417685176861768717688176891769017691176921769317694176951769617697176981769917700177011770217703177041770517706177071770817709177101771117712177131771417715177161771717718177191772017721177221772317724177251772617727177281772917730177311773217733177341773517736177371773817739177401774117742177431774417745177461774717748177491775017751177521775317754177551775617757177581775917760177611776217763177641776517766177671776817769177701777117772177731777417775177761777717778177791778017781177821778317784177851778617787177881778917790177911779217793177941779517796177971779817799178001780117802178031780417805178061780717808178091781017811178121781317814178151781617817178181781917820178211782217823178241782517826178271782817829178301783117832178331783417835178361783717838178391784017841178421784317844178451784617847178481784917850178511785217853178541785517856178571785817859178601786117862178631786417865178661786717868178691787017871178721787317874178751787617877178781787917880178811788217883178841788517886178871788817889178901789117892178931789417895178961789717898178991790017901179021790317904179051790617907179081790917910179111791217913179141791517916179171791817919179201792117922179231792417925179261792717928179291793017931179321793317934179351793617937179381793917940179411794217943179441794517946179471794817949179501795117952179531795417955179561795717958179591796017961179621796317964179651796617967179681796917970179711797217973179741797517976179771797817979179801798117982179831798417985179861798717988179891799017991179921799317994179951799617997179981799918000180011800218003180041800518006180071800818009180101801118012180131801418015180161801718018180191802018021180221802318024180251802618027180281802918030180311803218033180341803518036180371803818039180401804118042180431804418045180461804718048180491805018051180521805318054180551805618057180581805918060180611806218063180641806518066180671806818069180701807118072180731807418075180761807718078180791808018081180821808318084180851808618087180881808918090180911809218093180941809518096180971809818099181001810118102181031810418105181061810718108181091811018111181121811318114181151811618117181181811918120181211812218123181241812518126181271812818129181301813118132181331813418135181361813718138181391814018141181421814318144181451814618147181481814918150181511815218153181541815518156181571815818159181601816118162181631816418165181661816718168181691817018171181721817318174181751817618177181781817918180181811818218183181841818518186181871818818189181901819118192181931819418195181961819718198181991820018201182021820318204182051820618207182081820918210182111821218213182141821518216182171821818219182201822118222182231822418225182261822718228182291823018231182321823318234182351823618237182381823918240182411824218243182441824518246182471824818249182501825118252182531825418255182561825718258182591826018261182621826318264182651826618267182681826918270182711827218273182741827518276182771827818279182801828118282182831828418285182861828718288182891829018291182921829318294182951829618297182981829918300183011830218303183041830518306183071830818309183101831118312183131831418315183161831718318183191832018321183221832318324183251832618327183281832918330183311833218333183341833518336183371833818339183401834118342183431834418345183461834718348183491835018351183521835318354183551835618357183581835918360183611836218363183641836518366183671836818369183701837118372183731837418375183761837718378183791838018381183821838318384183851838618387183881838918390183911839218393183941839518396183971839818399184001840118402184031840418405184061840718408184091841018411184121841318414184151841618417184181841918420184211842218423184241842518426184271842818429184301843118432184331843418435184361843718438184391844018441184421844318444184451844618447184481844918450184511845218453184541845518456184571845818459184601846118462184631846418465184661846718468184691847018471184721847318474184751847618477184781847918480184811848218483184841848518486184871848818489184901849118492184931849418495184961849718498184991850018501185021850318504185051850618507185081850918510185111851218513185141851518516185171851818519185201852118522185231852418525185261852718528185291853018531185321853318534185351853618537185381853918540185411854218543185441854518546185471854818549185501855118552185531855418555185561855718558185591856018561185621856318564185651856618567185681856918570185711857218573185741857518576185771857818579185801858118582185831858418585185861858718588185891859018591185921859318594185951859618597185981859918600186011860218603186041860518606186071860818609186101861118612186131861418615186161861718618186191862018621186221862318624186251862618627186281862918630186311863218633186341863518636186371863818639186401864118642186431864418645186461864718648186491865018651186521865318654186551865618657186581865918660186611866218663186641866518666186671866818669186701867118672186731867418675186761867718678186791868018681186821868318684186851868618687186881868918690186911869218693186941869518696186971869818699187001870118702187031870418705187061870718708187091871018711187121871318714187151871618717187181871918720187211872218723187241872518726187271872818729187301873118732187331873418735187361873718738187391874018741187421874318744187451874618747187481874918750187511875218753187541875518756187571875818759187601876118762187631876418765187661876718768187691877018771187721877318774187751877618777187781877918780187811878218783187841878518786187871878818789187901879118792187931879418795187961879718798187991880018801188021880318804188051880618807188081880918810188111881218813188141881518816188171881818819188201882118822188231882418825188261882718828188291883018831188321883318834188351883618837188381883918840188411884218843188441884518846188471884818849188501885118852188531885418855188561885718858188591886018861188621886318864188651886618867188681886918870188711887218873188741887518876188771887818879188801888118882188831888418885188861888718888188891889018891188921889318894188951889618897188981889918900189011890218903189041890518906189071890818909189101891118912189131891418915189161891718918189191892018921189221892318924189251892618927189281892918930189311893218933189341893518936189371893818939189401894118942189431894418945189461894718948189491895018951189521895318954189551895618957189581895918960189611896218963189641896518966189671896818969189701897118972189731897418975189761897718978189791898018981189821898318984189851898618987189881898918990189911899218993189941899518996189971899818999190001900119002190031900419005190061900719008190091901019011190121901319014190151901619017190181901919020190211902219023190241902519026190271902819029190301903119032190331903419035190361903719038190391904019041190421904319044190451904619047190481904919050190511905219053190541905519056190571905819059190601906119062190631906419065190661906719068190691907019071190721907319074190751907619077190781907919080190811908219083190841908519086190871908819089190901909119092190931909419095190961909719098190991910019101191021910319104191051910619107191081910919110191111911219113191141911519116191171911819119191201912119122191231912419125191261912719128191291913019131191321913319134191351913619137191381913919140191411914219143191441914519146191471914819149191501915119152191531915419155191561915719158191591916019161191621916319164191651916619167191681916919170191711917219173191741917519176191771917819179191801918119182191831918419185191861918719188191891919019191191921919319194191951919619197191981919919200192011920219203192041920519206192071920819209192101921119212192131921419215192161921719218192191922019221192221922319224192251922619227192281922919230192311923219233192341923519236192371923819239192401924119242192431924419245192461924719248192491925019251192521925319254192551925619257192581925919260192611926219263192641926519266192671926819269192701927119272192731927419275192761927719278192791928019281192821928319284192851928619287192881928919290192911929219293192941929519296192971929819299193001930119302193031930419305193061930719308193091931019311193121931319314193151931619317193181931919320193211932219323193241932519326193271932819329193301933119332193331933419335193361933719338193391934019341193421934319344193451934619347193481934919350193511935219353193541935519356193571935819359193601936119362193631936419365193661936719368193691937019371193721937319374193751937619377193781937919380193811938219383193841938519386193871938819389193901939119392193931939419395193961939719398193991940019401194021940319404194051940619407194081940919410194111941219413194141941519416194171941819419194201942119422194231942419425194261942719428194291943019431194321943319434194351943619437194381943919440194411944219443194441944519446194471944819449194501945119452194531945419455194561945719458194591946019461194621946319464194651946619467194681946919470194711947219473194741947519476194771947819479194801948119482194831948419485194861948719488194891949019491194921949319494194951949619497194981949919500195011950219503195041950519506195071950819509195101951119512195131951419515195161951719518195191952019521195221952319524195251952619527195281952919530195311953219533195341953519536195371953819539195401954119542195431954419545195461954719548195491955019551195521955319554195551955619557195581955919560195611956219563195641956519566195671956819569195701957119572195731957419575195761957719578195791958019581195821958319584195851958619587195881958919590195911959219593195941959519596195971959819599196001960119602196031960419605196061960719608196091961019611196121961319614196151961619617196181961919620196211962219623196241962519626196271962819629196301963119632196331963419635196361963719638196391964019641196421964319644196451964619647196481964919650196511965219653196541965519656196571965819659196601966119662196631966419665196661966719668196691967019671196721967319674196751967619677196781967919680196811968219683196841968519686196871968819689196901969119692196931969419695196961969719698196991970019701197021970319704197051970619707197081970919710197111971219713197141971519716197171971819719197201972119722197231972419725197261972719728197291973019731197321973319734197351973619737197381973919740197411974219743197441974519746197471974819749197501975119752197531975419755197561975719758197591976019761197621976319764197651976619767197681976919770197711977219773197741977519776197771977819779197801978119782197831978419785197861978719788
  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. namespace tflite {
  6. struct CustomQuantization;
  7. struct CustomQuantizationBuilder;
  8. struct CustomQuantizationT;
  9. struct QuantizationParameters;
  10. struct QuantizationParametersBuilder;
  11. struct QuantizationParametersT;
  12. struct Int32Vector;
  13. struct Int32VectorBuilder;
  14. struct Int32VectorT;
  15. struct Uint16Vector;
  16. struct Uint16VectorBuilder;
  17. struct Uint16VectorT;
  18. struct Uint8Vector;
  19. struct Uint8VectorBuilder;
  20. struct Uint8VectorT;
  21. struct DimensionMetadata;
  22. struct DimensionMetadataBuilder;
  23. struct DimensionMetadataT;
  24. struct SparsityParameters;
  25. struct SparsityParametersBuilder;
  26. struct SparsityParametersT;
  27. struct Tensor;
  28. struct TensorBuilder;
  29. struct TensorT;
  30. struct Conv2DOptions;
  31. struct Conv2DOptionsBuilder;
  32. struct Conv2DOptionsT;
  33. struct Conv3DOptions;
  34. struct Conv3DOptionsBuilder;
  35. struct Conv3DOptionsT;
  36. struct Pool2DOptions;
  37. struct Pool2DOptionsBuilder;
  38. struct Pool2DOptionsT;
  39. struct DepthwiseConv2DOptions;
  40. struct DepthwiseConv2DOptionsBuilder;
  41. struct DepthwiseConv2DOptionsT;
  42. struct ConcatEmbeddingsOptions;
  43. struct ConcatEmbeddingsOptionsBuilder;
  44. struct ConcatEmbeddingsOptionsT;
  45. struct LSHProjectionOptions;
  46. struct LSHProjectionOptionsBuilder;
  47. struct LSHProjectionOptionsT;
  48. struct SVDFOptions;
  49. struct SVDFOptionsBuilder;
  50. struct SVDFOptionsT;
  51. struct RNNOptions;
  52. struct RNNOptionsBuilder;
  53. struct RNNOptionsT;
  54. struct SequenceRNNOptions;
  55. struct SequenceRNNOptionsBuilder;
  56. struct SequenceRNNOptionsT;
  57. struct BidirectionalSequenceRNNOptions;
  58. struct BidirectionalSequenceRNNOptionsBuilder;
  59. struct BidirectionalSequenceRNNOptionsT;
  60. struct FullyConnectedOptions;
  61. struct FullyConnectedOptionsBuilder;
  62. struct FullyConnectedOptionsT;
  63. struct SoftmaxOptions;
  64. struct SoftmaxOptionsBuilder;
  65. struct SoftmaxOptionsT;
  66. struct ConcatenationOptions;
  67. struct ConcatenationOptionsBuilder;
  68. struct ConcatenationOptionsT;
  69. struct AddOptions;
  70. struct AddOptionsBuilder;
  71. struct AddOptionsT;
  72. struct MulOptions;
  73. struct MulOptionsBuilder;
  74. struct MulOptionsT;
  75. struct L2NormOptions;
  76. struct L2NormOptionsBuilder;
  77. struct L2NormOptionsT;
  78. struct LocalResponseNormalizationOptions;
  79. struct LocalResponseNormalizationOptionsBuilder;
  80. struct LocalResponseNormalizationOptionsT;
  81. struct LSTMOptions;
  82. struct LSTMOptionsBuilder;
  83. struct LSTMOptionsT;
  84. struct UnidirectionalSequenceLSTMOptions;
  85. struct UnidirectionalSequenceLSTMOptionsBuilder;
  86. struct UnidirectionalSequenceLSTMOptionsT;
  87. struct BidirectionalSequenceLSTMOptions;
  88. struct BidirectionalSequenceLSTMOptionsBuilder;
  89. struct BidirectionalSequenceLSTMOptionsT;
  90. struct ResizeBilinearOptions;
  91. struct ResizeBilinearOptionsBuilder;
  92. struct ResizeBilinearOptionsT;
  93. struct ResizeNearestNeighborOptions;
  94. struct ResizeNearestNeighborOptionsBuilder;
  95. struct ResizeNearestNeighborOptionsT;
  96. struct CallOptions;
  97. struct CallOptionsBuilder;
  98. struct CallOptionsT;
  99. struct PadOptions;
  100. struct PadOptionsBuilder;
  101. struct PadOptionsT;
  102. struct PadV2Options;
  103. struct PadV2OptionsBuilder;
  104. struct PadV2OptionsT;
  105. struct ReshapeOptions;
  106. struct ReshapeOptionsBuilder;
  107. struct ReshapeOptionsT;
  108. struct SpaceToBatchNDOptions;
  109. struct SpaceToBatchNDOptionsBuilder;
  110. struct SpaceToBatchNDOptionsT;
  111. struct BatchToSpaceNDOptions;
  112. struct BatchToSpaceNDOptionsBuilder;
  113. struct BatchToSpaceNDOptionsT;
  114. struct SkipGramOptions;
  115. struct SkipGramOptionsBuilder;
  116. struct SkipGramOptionsT;
  117. struct SpaceToDepthOptions;
  118. struct SpaceToDepthOptionsBuilder;
  119. struct SpaceToDepthOptionsT;
  120. struct DepthToSpaceOptions;
  121. struct DepthToSpaceOptionsBuilder;
  122. struct DepthToSpaceOptionsT;
  123. struct SubOptions;
  124. struct SubOptionsBuilder;
  125. struct SubOptionsT;
  126. struct DivOptions;
  127. struct DivOptionsBuilder;
  128. struct DivOptionsT;
  129. struct TopKV2Options;
  130. struct TopKV2OptionsBuilder;
  131. struct TopKV2OptionsT;
  132. struct EmbeddingLookupSparseOptions;
  133. struct EmbeddingLookupSparseOptionsBuilder;
  134. struct EmbeddingLookupSparseOptionsT;
  135. struct GatherOptions;
  136. struct GatherOptionsBuilder;
  137. struct GatherOptionsT;
  138. struct TransposeOptions;
  139. struct TransposeOptionsBuilder;
  140. struct TransposeOptionsT;
  141. struct ExpOptions;
  142. struct ExpOptionsBuilder;
  143. struct ExpOptionsT;
  144. struct CosOptions;
  145. struct CosOptionsBuilder;
  146. struct CosOptionsT;
  147. struct ReducerOptions;
  148. struct ReducerOptionsBuilder;
  149. struct ReducerOptionsT;
  150. struct SqueezeOptions;
  151. struct SqueezeOptionsBuilder;
  152. struct SqueezeOptionsT;
  153. struct SplitOptions;
  154. struct SplitOptionsBuilder;
  155. struct SplitOptionsT;
  156. struct SplitVOptions;
  157. struct SplitVOptionsBuilder;
  158. struct SplitVOptionsT;
  159. struct StridedSliceOptions;
  160. struct StridedSliceOptionsBuilder;
  161. struct StridedSliceOptionsT;
  162. struct LogSoftmaxOptions;
  163. struct LogSoftmaxOptionsBuilder;
  164. struct LogSoftmaxOptionsT;
  165. struct CastOptions;
  166. struct CastOptionsBuilder;
  167. struct CastOptionsT;
  168. struct DequantizeOptions;
  169. struct DequantizeOptionsBuilder;
  170. struct DequantizeOptionsT;
  171. struct MaximumMinimumOptions;
  172. struct MaximumMinimumOptionsBuilder;
  173. struct MaximumMinimumOptionsT;
  174. struct TileOptions;
  175. struct TileOptionsBuilder;
  176. struct TileOptionsT;
  177. struct ArgMaxOptions;
  178. struct ArgMaxOptionsBuilder;
  179. struct ArgMaxOptionsT;
  180. struct ArgMinOptions;
  181. struct ArgMinOptionsBuilder;
  182. struct ArgMinOptionsT;
  183. struct GreaterOptions;
  184. struct GreaterOptionsBuilder;
  185. struct GreaterOptionsT;
  186. struct GreaterEqualOptions;
  187. struct GreaterEqualOptionsBuilder;
  188. struct GreaterEqualOptionsT;
  189. struct LessOptions;
  190. struct LessOptionsBuilder;
  191. struct LessOptionsT;
  192. struct LessEqualOptions;
  193. struct LessEqualOptionsBuilder;
  194. struct LessEqualOptionsT;
  195. struct NegOptions;
  196. struct NegOptionsBuilder;
  197. struct NegOptionsT;
  198. struct SelectOptions;
  199. struct SelectOptionsBuilder;
  200. struct SelectOptionsT;
  201. struct SliceOptions;
  202. struct SliceOptionsBuilder;
  203. struct SliceOptionsT;
  204. struct TransposeConvOptions;
  205. struct TransposeConvOptionsBuilder;
  206. struct TransposeConvOptionsT;
  207. struct ExpandDimsOptions;
  208. struct ExpandDimsOptionsBuilder;
  209. struct ExpandDimsOptionsT;
  210. struct SparseToDenseOptions;
  211. struct SparseToDenseOptionsBuilder;
  212. struct SparseToDenseOptionsT;
  213. struct EqualOptions;
  214. struct EqualOptionsBuilder;
  215. struct EqualOptionsT;
  216. struct NotEqualOptions;
  217. struct NotEqualOptionsBuilder;
  218. struct NotEqualOptionsT;
  219. struct ShapeOptions;
  220. struct ShapeOptionsBuilder;
  221. struct ShapeOptionsT;
  222. struct RankOptions;
  223. struct RankOptionsBuilder;
  224. struct RankOptionsT;
  225. struct PowOptions;
  226. struct PowOptionsBuilder;
  227. struct PowOptionsT;
  228. struct FakeQuantOptions;
  229. struct FakeQuantOptionsBuilder;
  230. struct FakeQuantOptionsT;
  231. struct PackOptions;
  232. struct PackOptionsBuilder;
  233. struct PackOptionsT;
  234. struct LogicalOrOptions;
  235. struct LogicalOrOptionsBuilder;
  236. struct LogicalOrOptionsT;
  237. struct OneHotOptions;
  238. struct OneHotOptionsBuilder;
  239. struct OneHotOptionsT;
  240. struct AbsOptions;
  241. struct AbsOptionsBuilder;
  242. struct AbsOptionsT;
  243. struct HardSwishOptions;
  244. struct HardSwishOptionsBuilder;
  245. struct HardSwishOptionsT;
  246. struct LogicalAndOptions;
  247. struct LogicalAndOptionsBuilder;
  248. struct LogicalAndOptionsT;
  249. struct LogicalNotOptions;
  250. struct LogicalNotOptionsBuilder;
  251. struct LogicalNotOptionsT;
  252. struct UnpackOptions;
  253. struct UnpackOptionsBuilder;
  254. struct UnpackOptionsT;
  255. struct FloorDivOptions;
  256. struct FloorDivOptionsBuilder;
  257. struct FloorDivOptionsT;
  258. struct SquareOptions;
  259. struct SquareOptionsBuilder;
  260. struct SquareOptionsT;
  261. struct ZerosLikeOptions;
  262. struct ZerosLikeOptionsBuilder;
  263. struct ZerosLikeOptionsT;
  264. struct FillOptions;
  265. struct FillOptionsBuilder;
  266. struct FillOptionsT;
  267. struct FloorModOptions;
  268. struct FloorModOptionsBuilder;
  269. struct FloorModOptionsT;
  270. struct RangeOptions;
  271. struct RangeOptionsBuilder;
  272. struct RangeOptionsT;
  273. struct LeakyReluOptions;
  274. struct LeakyReluOptionsBuilder;
  275. struct LeakyReluOptionsT;
  276. struct SquaredDifferenceOptions;
  277. struct SquaredDifferenceOptionsBuilder;
  278. struct SquaredDifferenceOptionsT;
  279. struct MirrorPadOptions;
  280. struct MirrorPadOptionsBuilder;
  281. struct MirrorPadOptionsT;
  282. struct UniqueOptions;
  283. struct UniqueOptionsBuilder;
  284. struct UniqueOptionsT;
  285. struct ReverseV2Options;
  286. struct ReverseV2OptionsBuilder;
  287. struct ReverseV2OptionsT;
  288. struct AddNOptions;
  289. struct AddNOptionsBuilder;
  290. struct AddNOptionsT;
  291. struct GatherNdOptions;
  292. struct GatherNdOptionsBuilder;
  293. struct GatherNdOptionsT;
  294. struct WhereOptions;
  295. struct WhereOptionsBuilder;
  296. struct WhereOptionsT;
  297. struct ReverseSequenceOptions;
  298. struct ReverseSequenceOptionsBuilder;
  299. struct ReverseSequenceOptionsT;
  300. struct MatrixDiagOptions;
  301. struct MatrixDiagOptionsBuilder;
  302. struct MatrixDiagOptionsT;
  303. struct QuantizeOptions;
  304. struct QuantizeOptionsBuilder;
  305. struct QuantizeOptionsT;
  306. struct MatrixSetDiagOptions;
  307. struct MatrixSetDiagOptionsBuilder;
  308. struct MatrixSetDiagOptionsT;
  309. struct IfOptions;
  310. struct IfOptionsBuilder;
  311. struct IfOptionsT;
  312. struct CallOnceOptions;
  313. struct CallOnceOptionsBuilder;
  314. struct CallOnceOptionsT;
  315. struct WhileOptions;
  316. struct WhileOptionsBuilder;
  317. struct WhileOptionsT;
  318. struct NonMaxSuppressionV4Options;
  319. struct NonMaxSuppressionV4OptionsBuilder;
  320. struct NonMaxSuppressionV4OptionsT;
  321. struct NonMaxSuppressionV5Options;
  322. struct NonMaxSuppressionV5OptionsBuilder;
  323. struct NonMaxSuppressionV5OptionsT;
  324. struct ScatterNdOptions;
  325. struct ScatterNdOptionsBuilder;
  326. struct ScatterNdOptionsT;
  327. struct SelectV2Options;
  328. struct SelectV2OptionsBuilder;
  329. struct SelectV2OptionsT;
  330. struct DensifyOptions;
  331. struct DensifyOptionsBuilder;
  332. struct DensifyOptionsT;
  333. struct SegmentSumOptions;
  334. struct SegmentSumOptionsBuilder;
  335. struct SegmentSumOptionsT;
  336. struct BatchMatMulOptions;
  337. struct BatchMatMulOptionsBuilder;
  338. struct BatchMatMulOptionsT;
  339. struct CumsumOptions;
  340. struct CumsumOptionsBuilder;
  341. struct CumsumOptionsT;
  342. struct BroadcastToOptions;
  343. struct BroadcastToOptionsBuilder;
  344. struct BroadcastToOptionsT;
  345. struct Rfft2dOptions;
  346. struct Rfft2dOptionsBuilder;
  347. struct Rfft2dOptionsT;
  348. struct HashtableOptions;
  349. struct HashtableOptionsBuilder;
  350. struct HashtableOptionsT;
  351. struct HashtableFindOptions;
  352. struct HashtableFindOptionsBuilder;
  353. struct HashtableFindOptionsT;
  354. struct HashtableImportOptions;
  355. struct HashtableImportOptionsBuilder;
  356. struct HashtableImportOptionsT;
  357. struct HashtableSizeOptions;
  358. struct HashtableSizeOptionsBuilder;
  359. struct HashtableSizeOptionsT;
  360. struct VarHandleOptions;
  361. struct VarHandleOptionsBuilder;
  362. struct VarHandleOptionsT;
  363. struct ReadVariableOptions;
  364. struct ReadVariableOptionsBuilder;
  365. struct ReadVariableOptionsT;
  366. struct AssignVariableOptions;
  367. struct AssignVariableOptionsBuilder;
  368. struct AssignVariableOptionsT;
  369. struct RandomOptions;
  370. struct RandomOptionsBuilder;
  371. struct RandomOptionsT;
  372. struct BucketizeOptions;
  373. struct BucketizeOptionsBuilder;
  374. struct BucketizeOptionsT;
  375. struct GeluOptions;
  376. struct GeluOptionsBuilder;
  377. struct GeluOptionsT;
  378. struct DynamicUpdateSliceOptions;
  379. struct DynamicUpdateSliceOptionsBuilder;
  380. struct DynamicUpdateSliceOptionsT;
  381. struct UnsortedSegmentProdOptions;
  382. struct UnsortedSegmentProdOptionsBuilder;
  383. struct UnsortedSegmentProdOptionsT;
  384. struct UnsortedSegmentMaxOptions;
  385. struct UnsortedSegmentMaxOptionsBuilder;
  386. struct UnsortedSegmentMaxOptionsT;
  387. struct UnsortedSegmentSumOptions;
  388. struct UnsortedSegmentSumOptionsBuilder;
  389. struct UnsortedSegmentSumOptionsT;
  390. struct ATan2Options;
  391. struct ATan2OptionsBuilder;
  392. struct ATan2OptionsT;
  393. struct UnsortedSegmentMinOptions;
  394. struct UnsortedSegmentMinOptionsBuilder;
  395. struct UnsortedSegmentMinOptionsT;
  396. struct OperatorCode;
  397. struct OperatorCodeBuilder;
  398. struct OperatorCodeT;
  399. struct Operator;
  400. struct OperatorBuilder;
  401. struct OperatorT;
  402. struct SubGraph;
  403. struct SubGraphBuilder;
  404. struct SubGraphT;
  405. struct Buffer;
  406. struct BufferBuilder;
  407. struct BufferT;
  408. struct Metadata;
  409. struct MetadataBuilder;
  410. struct MetadataT;
  411. struct TensorMap;
  412. struct TensorMapBuilder;
  413. struct TensorMapT;
  414. struct SignatureDef;
  415. struct SignatureDefBuilder;
  416. struct SignatureDefT;
  417. struct Model;
  418. struct ModelBuilder;
  419. struct ModelT;
  420. enum TensorType {
  421. TensorType_FLOAT32 = 0,
  422. TensorType_FLOAT16 = 1,
  423. TensorType_INT32 = 2,
  424. TensorType_UINT8 = 3,
  425. TensorType_INT64 = 4,
  426. TensorType_STRING = 5,
  427. TensorType_BOOL = 6,
  428. TensorType_INT16 = 7,
  429. TensorType_COMPLEX64 = 8,
  430. TensorType_INT8 = 9,
  431. TensorType_FLOAT64 = 10,
  432. TensorType_COMPLEX128 = 11,
  433. TensorType_UINT64 = 12,
  434. TensorType_RESOURCE = 13,
  435. TensorType_VARIANT = 14,
  436. TensorType_UINT32 = 15,
  437. TensorType_UINT16 = 16,
  438. TensorType_MIN = TensorType_FLOAT32,
  439. TensorType_MAX = TensorType_UINT16
  440. };
  441. inline const TensorType (&EnumValuesTensorType())[17] {
  442. static const TensorType values[] = {
  443. TensorType_FLOAT32,
  444. TensorType_FLOAT16,
  445. TensorType_INT32,
  446. TensorType_UINT8,
  447. TensorType_INT64,
  448. TensorType_STRING,
  449. TensorType_BOOL,
  450. TensorType_INT16,
  451. TensorType_COMPLEX64,
  452. TensorType_INT8,
  453. TensorType_FLOAT64,
  454. TensorType_COMPLEX128,
  455. TensorType_UINT64,
  456. TensorType_RESOURCE,
  457. TensorType_VARIANT,
  458. TensorType_UINT32,
  459. TensorType_UINT16
  460. };
  461. return values;
  462. }
  463. inline const char * const *EnumNamesTensorType() {
  464. static const char * const names[18] = {
  465. "FLOAT32",
  466. "FLOAT16",
  467. "INT32",
  468. "UINT8",
  469. "INT64",
  470. "STRING",
  471. "BOOL",
  472. "INT16",
  473. "COMPLEX64",
  474. "INT8",
  475. "FLOAT64",
  476. "COMPLEX128",
  477. "UINT64",
  478. "RESOURCE",
  479. "VARIANT",
  480. "UINT32",
  481. "UINT16",
  482. nullptr
  483. };
  484. return names;
  485. }
  486. inline const char *EnumNameTensorType(TensorType e) {
  487. if (flatbuffers::IsOutRange(e, TensorType_FLOAT32, TensorType_UINT16)) return "";
  488. const size_t index = static_cast<size_t>(e);
  489. return EnumNamesTensorType()[index];
  490. }
  491. enum QuantizationDetails {
  492. QuantizationDetails_NONE = 0,
  493. QuantizationDetails_CustomQuantization = 1,
  494. QuantizationDetails_MIN = QuantizationDetails_NONE,
  495. QuantizationDetails_MAX = QuantizationDetails_CustomQuantization
  496. };
  497. inline const QuantizationDetails (&EnumValuesQuantizationDetails())[2] {
  498. static const QuantizationDetails values[] = {
  499. QuantizationDetails_NONE,
  500. QuantizationDetails_CustomQuantization
  501. };
  502. return values;
  503. }
  504. inline const char * const *EnumNamesQuantizationDetails() {
  505. static const char * const names[3] = {
  506. "NONE",
  507. "CustomQuantization",
  508. nullptr
  509. };
  510. return names;
  511. }
  512. inline const char *EnumNameQuantizationDetails(QuantizationDetails e) {
  513. if (flatbuffers::IsOutRange(e, QuantizationDetails_NONE, QuantizationDetails_CustomQuantization)) return "";
  514. const size_t index = static_cast<size_t>(e);
  515. return EnumNamesQuantizationDetails()[index];
  516. }
  517. template<typename T> struct QuantizationDetailsTraits {
  518. static const QuantizationDetails enum_value = QuantizationDetails_NONE;
  519. };
  520. template<> struct QuantizationDetailsTraits<tflite::CustomQuantization> {
  521. static const QuantizationDetails enum_value = QuantizationDetails_CustomQuantization;
  522. };
  523. struct QuantizationDetailsUnion {
  524. QuantizationDetails type;
  525. void *value;
  526. QuantizationDetailsUnion() : type(QuantizationDetails_NONE), value(nullptr) {}
  527. QuantizationDetailsUnion(QuantizationDetailsUnion&& u) FLATBUFFERS_NOEXCEPT :
  528. type(QuantizationDetails_NONE), value(nullptr)
  529. { std::swap(type, u.type); std::swap(value, u.value); }
  530. QuantizationDetailsUnion(const QuantizationDetailsUnion &);
  531. QuantizationDetailsUnion &operator=(const QuantizationDetailsUnion &u)
  532. { QuantizationDetailsUnion t(u); std::swap(type, t.type); std::swap(value, t.value); return *this; }
  533. QuantizationDetailsUnion &operator=(QuantizationDetailsUnion &&u) FLATBUFFERS_NOEXCEPT
  534. { std::swap(type, u.type); std::swap(value, u.value); return *this; }
  535. ~QuantizationDetailsUnion() { Reset(); }
  536. void Reset();
  537. #ifndef FLATBUFFERS_CPP98_STL
  538. template <typename T>
  539. void Set(T&& val) {
  540. using RT = typename std::remove_reference<T>::type;
  541. Reset();
  542. type = QuantizationDetailsTraits<typename RT::TableType>::enum_value;
  543. if (type != QuantizationDetails_NONE) {
  544. value = new RT(std::forward<T>(val));
  545. }
  546. }
  547. #endif // FLATBUFFERS_CPP98_STL
  548. static void *UnPack(const void *obj, QuantizationDetails type, const flatbuffers::resolver_function_t *resolver);
  549. flatbuffers::Offset<void> Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher = nullptr) const;
  550. tflite::CustomQuantizationT *AsCustomQuantization() {
  551. return type == QuantizationDetails_CustomQuantization ?
  552. reinterpret_cast<tflite::CustomQuantizationT *>(value) : nullptr;
  553. }
  554. const tflite::CustomQuantizationT *AsCustomQuantization() const {
  555. return type == QuantizationDetails_CustomQuantization ?
  556. reinterpret_cast<const tflite::CustomQuantizationT *>(value) : nullptr;
  557. }
  558. };
  559. bool VerifyQuantizationDetails(flatbuffers::Verifier &verifier, const void *obj, QuantizationDetails type);
  560. bool VerifyQuantizationDetailsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types);
  561. enum DimensionType {
  562. DimensionType_DENSE = 0,
  563. DimensionType_SPARSE_CSR = 1,
  564. DimensionType_MIN = DimensionType_DENSE,
  565. DimensionType_MAX = DimensionType_SPARSE_CSR
  566. };
  567. inline const DimensionType (&EnumValuesDimensionType())[2] {
  568. static const DimensionType values[] = {
  569. DimensionType_DENSE,
  570. DimensionType_SPARSE_CSR
  571. };
  572. return values;
  573. }
  574. inline const char * const *EnumNamesDimensionType() {
  575. static const char * const names[3] = {
  576. "DENSE",
  577. "SPARSE_CSR",
  578. nullptr
  579. };
  580. return names;
  581. }
  582. inline const char *EnumNameDimensionType(DimensionType e) {
  583. if (flatbuffers::IsOutRange(e, DimensionType_DENSE, DimensionType_SPARSE_CSR)) return "";
  584. const size_t index = static_cast<size_t>(e);
  585. return EnumNamesDimensionType()[index];
  586. }
  587. enum SparseIndexVector {
  588. SparseIndexVector_NONE = 0,
  589. SparseIndexVector_Int32Vector = 1,
  590. SparseIndexVector_Uint16Vector = 2,
  591. SparseIndexVector_Uint8Vector = 3,
  592. SparseIndexVector_MIN = SparseIndexVector_NONE,
  593. SparseIndexVector_MAX = SparseIndexVector_Uint8Vector
  594. };
  595. inline const SparseIndexVector (&EnumValuesSparseIndexVector())[4] {
  596. static const SparseIndexVector values[] = {
  597. SparseIndexVector_NONE,
  598. SparseIndexVector_Int32Vector,
  599. SparseIndexVector_Uint16Vector,
  600. SparseIndexVector_Uint8Vector
  601. };
  602. return values;
  603. }
  604. inline const char * const *EnumNamesSparseIndexVector() {
  605. static const char * const names[5] = {
  606. "NONE",
  607. "Int32Vector",
  608. "Uint16Vector",
  609. "Uint8Vector",
  610. nullptr
  611. };
  612. return names;
  613. }
  614. inline const char *EnumNameSparseIndexVector(SparseIndexVector e) {
  615. if (flatbuffers::IsOutRange(e, SparseIndexVector_NONE, SparseIndexVector_Uint8Vector)) return "";
  616. const size_t index = static_cast<size_t>(e);
  617. return EnumNamesSparseIndexVector()[index];
  618. }
  619. template<typename T> struct SparseIndexVectorTraits {
  620. static const SparseIndexVector enum_value = SparseIndexVector_NONE;
  621. };
  622. template<> struct SparseIndexVectorTraits<tflite::Int32Vector> {
  623. static const SparseIndexVector enum_value = SparseIndexVector_Int32Vector;
  624. };
  625. template<> struct SparseIndexVectorTraits<tflite::Uint16Vector> {
  626. static const SparseIndexVector enum_value = SparseIndexVector_Uint16Vector;
  627. };
  628. template<> struct SparseIndexVectorTraits<tflite::Uint8Vector> {
  629. static const SparseIndexVector enum_value = SparseIndexVector_Uint8Vector;
  630. };
  631. struct SparseIndexVectorUnion {
  632. SparseIndexVector type;
  633. void *value;
  634. SparseIndexVectorUnion() : type(SparseIndexVector_NONE), value(nullptr) {}
  635. SparseIndexVectorUnion(SparseIndexVectorUnion&& u) FLATBUFFERS_NOEXCEPT :
  636. type(SparseIndexVector_NONE), value(nullptr)
  637. { std::swap(type, u.type); std::swap(value, u.value); }
  638. SparseIndexVectorUnion(const SparseIndexVectorUnion &);
  639. SparseIndexVectorUnion &operator=(const SparseIndexVectorUnion &u)
  640. { SparseIndexVectorUnion t(u); std::swap(type, t.type); std::swap(value, t.value); return *this; }
  641. SparseIndexVectorUnion &operator=(SparseIndexVectorUnion &&u) FLATBUFFERS_NOEXCEPT
  642. { std::swap(type, u.type); std::swap(value, u.value); return *this; }
  643. ~SparseIndexVectorUnion() { Reset(); }
  644. void Reset();
  645. #ifndef FLATBUFFERS_CPP98_STL
  646. template <typename T>
  647. void Set(T&& val) {
  648. using RT = typename std::remove_reference<T>::type;
  649. Reset();
  650. type = SparseIndexVectorTraits<typename RT::TableType>::enum_value;
  651. if (type != SparseIndexVector_NONE) {
  652. value = new RT(std::forward<T>(val));
  653. }
  654. }
  655. #endif // FLATBUFFERS_CPP98_STL
  656. static void *UnPack(const void *obj, SparseIndexVector type, const flatbuffers::resolver_function_t *resolver);
  657. flatbuffers::Offset<void> Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher = nullptr) const;
  658. tflite::Int32VectorT *AsInt32Vector() {
  659. return type == SparseIndexVector_Int32Vector ?
  660. reinterpret_cast<tflite::Int32VectorT *>(value) : nullptr;
  661. }
  662. const tflite::Int32VectorT *AsInt32Vector() const {
  663. return type == SparseIndexVector_Int32Vector ?
  664. reinterpret_cast<const tflite::Int32VectorT *>(value) : nullptr;
  665. }
  666. tflite::Uint16VectorT *AsUint16Vector() {
  667. return type == SparseIndexVector_Uint16Vector ?
  668. reinterpret_cast<tflite::Uint16VectorT *>(value) : nullptr;
  669. }
  670. const tflite::Uint16VectorT *AsUint16Vector() const {
  671. return type == SparseIndexVector_Uint16Vector ?
  672. reinterpret_cast<const tflite::Uint16VectorT *>(value) : nullptr;
  673. }
  674. tflite::Uint8VectorT *AsUint8Vector() {
  675. return type == SparseIndexVector_Uint8Vector ?
  676. reinterpret_cast<tflite::Uint8VectorT *>(value) : nullptr;
  677. }
  678. const tflite::Uint8VectorT *AsUint8Vector() const {
  679. return type == SparseIndexVector_Uint8Vector ?
  680. reinterpret_cast<const tflite::Uint8VectorT *>(value) : nullptr;
  681. }
  682. };
  683. bool VerifySparseIndexVector(flatbuffers::Verifier &verifier, const void *obj, SparseIndexVector type);
  684. bool VerifySparseIndexVectorVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types);
  685. enum BuiltinOperator {
  686. BuiltinOperator_ADD = 0,
  687. BuiltinOperator_AVERAGE_POOL_2D = 1,
  688. BuiltinOperator_CONCATENATION = 2,
  689. BuiltinOperator_CONV_2D = 3,
  690. BuiltinOperator_DEPTHWISE_CONV_2D = 4,
  691. BuiltinOperator_DEPTH_TO_SPACE = 5,
  692. BuiltinOperator_DEQUANTIZE = 6,
  693. BuiltinOperator_EMBEDDING_LOOKUP = 7,
  694. BuiltinOperator_FLOOR = 8,
  695. BuiltinOperator_FULLY_CONNECTED = 9,
  696. BuiltinOperator_HASHTABLE_LOOKUP = 10,
  697. BuiltinOperator_L2_NORMALIZATION = 11,
  698. BuiltinOperator_L2_POOL_2D = 12,
  699. BuiltinOperator_LOCAL_RESPONSE_NORMALIZATION = 13,
  700. BuiltinOperator_LOGISTIC = 14,
  701. BuiltinOperator_LSH_PROJECTION = 15,
  702. BuiltinOperator_LSTM = 16,
  703. BuiltinOperator_MAX_POOL_2D = 17,
  704. BuiltinOperator_MUL = 18,
  705. BuiltinOperator_RELU = 19,
  706. BuiltinOperator_RELU_N1_TO_1 = 20,
  707. BuiltinOperator_RELU6 = 21,
  708. BuiltinOperator_RESHAPE = 22,
  709. BuiltinOperator_RESIZE_BILINEAR = 23,
  710. BuiltinOperator_RNN = 24,
  711. BuiltinOperator_SOFTMAX = 25,
  712. BuiltinOperator_SPACE_TO_DEPTH = 26,
  713. BuiltinOperator_SVDF = 27,
  714. BuiltinOperator_TANH = 28,
  715. BuiltinOperator_CONCAT_EMBEDDINGS = 29,
  716. BuiltinOperator_SKIP_GRAM = 30,
  717. BuiltinOperator_CALL = 31,
  718. BuiltinOperator_CUSTOM = 32,
  719. BuiltinOperator_EMBEDDING_LOOKUP_SPARSE = 33,
  720. BuiltinOperator_PAD = 34,
  721. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_RNN = 35,
  722. BuiltinOperator_GATHER = 36,
  723. BuiltinOperator_BATCH_TO_SPACE_ND = 37,
  724. BuiltinOperator_SPACE_TO_BATCH_ND = 38,
  725. BuiltinOperator_TRANSPOSE = 39,
  726. BuiltinOperator_MEAN = 40,
  727. BuiltinOperator_SUB = 41,
  728. BuiltinOperator_DIV = 42,
  729. BuiltinOperator_SQUEEZE = 43,
  730. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_LSTM = 44,
  731. BuiltinOperator_STRIDED_SLICE = 45,
  732. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_RNN = 46,
  733. BuiltinOperator_EXP = 47,
  734. BuiltinOperator_TOPK_V2 = 48,
  735. BuiltinOperator_SPLIT = 49,
  736. BuiltinOperator_LOG_SOFTMAX = 50,
  737. BuiltinOperator_DELEGATE = 51,
  738. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_LSTM = 52,
  739. BuiltinOperator_CAST = 53,
  740. BuiltinOperator_PRELU = 54,
  741. BuiltinOperator_MAXIMUM = 55,
  742. BuiltinOperator_ARG_MAX = 56,
  743. BuiltinOperator_MINIMUM = 57,
  744. BuiltinOperator_LESS = 58,
  745. BuiltinOperator_NEG = 59,
  746. BuiltinOperator_PADV2 = 60,
  747. BuiltinOperator_GREATER = 61,
  748. BuiltinOperator_GREATER_EQUAL = 62,
  749. BuiltinOperator_LESS_EQUAL = 63,
  750. BuiltinOperator_SELECT = 64,
  751. BuiltinOperator_SLICE = 65,
  752. BuiltinOperator_SIN = 66,
  753. BuiltinOperator_TRANSPOSE_CONV = 67,
  754. BuiltinOperator_SPARSE_TO_DENSE = 68,
  755. BuiltinOperator_TILE = 69,
  756. BuiltinOperator_EXPAND_DIMS = 70,
  757. BuiltinOperator_EQUAL = 71,
  758. BuiltinOperator_NOT_EQUAL = 72,
  759. BuiltinOperator_LOG = 73,
  760. BuiltinOperator_SUM = 74,
  761. BuiltinOperator_SQRT = 75,
  762. BuiltinOperator_RSQRT = 76,
  763. BuiltinOperator_SHAPE = 77,
  764. BuiltinOperator_POW = 78,
  765. BuiltinOperator_ARG_MIN = 79,
  766. BuiltinOperator_FAKE_QUANT = 80,
  767. BuiltinOperator_REDUCE_PROD = 81,
  768. BuiltinOperator_REDUCE_MAX = 82,
  769. BuiltinOperator_PACK = 83,
  770. BuiltinOperator_LOGICAL_OR = 84,
  771. BuiltinOperator_ONE_HOT = 85,
  772. BuiltinOperator_LOGICAL_AND = 86,
  773. BuiltinOperator_LOGICAL_NOT = 87,
  774. BuiltinOperator_UNPACK = 88,
  775. BuiltinOperator_REDUCE_MIN = 89,
  776. BuiltinOperator_FLOOR_DIV = 90,
  777. BuiltinOperator_REDUCE_ANY = 91,
  778. BuiltinOperator_SQUARE = 92,
  779. BuiltinOperator_ZEROS_LIKE = 93,
  780. BuiltinOperator_FILL = 94,
  781. BuiltinOperator_FLOOR_MOD = 95,
  782. BuiltinOperator_RANGE = 96,
  783. BuiltinOperator_RESIZE_NEAREST_NEIGHBOR = 97,
  784. BuiltinOperator_LEAKY_RELU = 98,
  785. BuiltinOperator_SQUARED_DIFFERENCE = 99,
  786. BuiltinOperator_MIRROR_PAD = 100,
  787. BuiltinOperator_ABS = 101,
  788. BuiltinOperator_SPLIT_V = 102,
  789. BuiltinOperator_UNIQUE = 103,
  790. BuiltinOperator_CEIL = 104,
  791. BuiltinOperator_REVERSE_V2 = 105,
  792. BuiltinOperator_ADD_N = 106,
  793. BuiltinOperator_GATHER_ND = 107,
  794. BuiltinOperator_COS = 108,
  795. BuiltinOperator_WHERE = 109,
  796. BuiltinOperator_RANK = 110,
  797. BuiltinOperator_ELU = 111,
  798. BuiltinOperator_REVERSE_SEQUENCE = 112,
  799. BuiltinOperator_MATRIX_DIAG = 113,
  800. BuiltinOperator_QUANTIZE = 114,
  801. BuiltinOperator_MATRIX_SET_DIAG = 115,
  802. BuiltinOperator_ROUND = 116,
  803. BuiltinOperator_HARD_SWISH = 117,
  804. BuiltinOperator_IF = 118,
  805. BuiltinOperator_WHILE = 119,
  806. BuiltinOperator_NON_MAX_SUPPRESSION_V4 = 120,
  807. BuiltinOperator_NON_MAX_SUPPRESSION_V5 = 121,
  808. BuiltinOperator_SCATTER_ND = 122,
  809. BuiltinOperator_SELECT_V2 = 123,
  810. BuiltinOperator_DENSIFY = 124,
  811. BuiltinOperator_SEGMENT_SUM = 125,
  812. BuiltinOperator_BATCH_MATMUL = 126,
  813. BuiltinOperator_PLACEHOLDER_FOR_GREATER_OP_CODES = 127,
  814. BuiltinOperator_CUMSUM = 128,
  815. BuiltinOperator_CALL_ONCE = 129,
  816. BuiltinOperator_BROADCAST_TO = 130,
  817. BuiltinOperator_RFFT2D = 131,
  818. BuiltinOperator_CONV_3D = 132,
  819. BuiltinOperator_IMAG = 133,
  820. BuiltinOperator_REAL = 134,
  821. BuiltinOperator_COMPLEX_ABS = 135,
  822. BuiltinOperator_HASHTABLE = 136,
  823. BuiltinOperator_HASHTABLE_FIND = 137,
  824. BuiltinOperator_HASHTABLE_IMPORT = 138,
  825. BuiltinOperator_HASHTABLE_SIZE = 139,
  826. BuiltinOperator_REDUCE_ALL = 140,
  827. BuiltinOperator_CONV_3D_TRANSPOSE = 141,
  828. BuiltinOperator_VAR_HANDLE = 142,
  829. BuiltinOperator_READ_VARIABLE = 143,
  830. BuiltinOperator_ASSIGN_VARIABLE = 144,
  831. BuiltinOperator_BROADCAST_ARGS = 145,
  832. BuiltinOperator_RANDOM_STANDARD_NORMAL = 146,
  833. BuiltinOperator_BUCKETIZE = 147,
  834. BuiltinOperator_RANDOM_UNIFORM = 148,
  835. BuiltinOperator_MULTINOMIAL = 149,
  836. BuiltinOperator_GELU = 150,
  837. BuiltinOperator_DYNAMIC_UPDATE_SLICE = 151,
  838. BuiltinOperator_RELU_0_TO_1 = 152,
  839. BuiltinOperator_UNSORTED_SEGMENT_PROD = 153,
  840. BuiltinOperator_UNSORTED_SEGMENT_MAX = 154,
  841. BuiltinOperator_UNSORTED_SEGMENT_SUM = 155,
  842. BuiltinOperator_ATAN2 = 156,
  843. BuiltinOperator_UNSORTED_SEGMENT_MIN = 157,
  844. BuiltinOperator_MIN = BuiltinOperator_ADD,
  845. BuiltinOperator_MAX = BuiltinOperator_UNSORTED_SEGMENT_MIN
  846. };
  847. inline const BuiltinOperator (&EnumValuesBuiltinOperator())[158] {
  848. static const BuiltinOperator values[] = {
  849. BuiltinOperator_ADD,
  850. BuiltinOperator_AVERAGE_POOL_2D,
  851. BuiltinOperator_CONCATENATION,
  852. BuiltinOperator_CONV_2D,
  853. BuiltinOperator_DEPTHWISE_CONV_2D,
  854. BuiltinOperator_DEPTH_TO_SPACE,
  855. BuiltinOperator_DEQUANTIZE,
  856. BuiltinOperator_EMBEDDING_LOOKUP,
  857. BuiltinOperator_FLOOR,
  858. BuiltinOperator_FULLY_CONNECTED,
  859. BuiltinOperator_HASHTABLE_LOOKUP,
  860. BuiltinOperator_L2_NORMALIZATION,
  861. BuiltinOperator_L2_POOL_2D,
  862. BuiltinOperator_LOCAL_RESPONSE_NORMALIZATION,
  863. BuiltinOperator_LOGISTIC,
  864. BuiltinOperator_LSH_PROJECTION,
  865. BuiltinOperator_LSTM,
  866. BuiltinOperator_MAX_POOL_2D,
  867. BuiltinOperator_MUL,
  868. BuiltinOperator_RELU,
  869. BuiltinOperator_RELU_N1_TO_1,
  870. BuiltinOperator_RELU6,
  871. BuiltinOperator_RESHAPE,
  872. BuiltinOperator_RESIZE_BILINEAR,
  873. BuiltinOperator_RNN,
  874. BuiltinOperator_SOFTMAX,
  875. BuiltinOperator_SPACE_TO_DEPTH,
  876. BuiltinOperator_SVDF,
  877. BuiltinOperator_TANH,
  878. BuiltinOperator_CONCAT_EMBEDDINGS,
  879. BuiltinOperator_SKIP_GRAM,
  880. BuiltinOperator_CALL,
  881. BuiltinOperator_CUSTOM,
  882. BuiltinOperator_EMBEDDING_LOOKUP_SPARSE,
  883. BuiltinOperator_PAD,
  884. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_RNN,
  885. BuiltinOperator_GATHER,
  886. BuiltinOperator_BATCH_TO_SPACE_ND,
  887. BuiltinOperator_SPACE_TO_BATCH_ND,
  888. BuiltinOperator_TRANSPOSE,
  889. BuiltinOperator_MEAN,
  890. BuiltinOperator_SUB,
  891. BuiltinOperator_DIV,
  892. BuiltinOperator_SQUEEZE,
  893. BuiltinOperator_UNIDIRECTIONAL_SEQUENCE_LSTM,
  894. BuiltinOperator_STRIDED_SLICE,
  895. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_RNN,
  896. BuiltinOperator_EXP,
  897. BuiltinOperator_TOPK_V2,
  898. BuiltinOperator_SPLIT,
  899. BuiltinOperator_LOG_SOFTMAX,
  900. BuiltinOperator_DELEGATE,
  901. BuiltinOperator_BIDIRECTIONAL_SEQUENCE_LSTM,
  902. BuiltinOperator_CAST,
  903. BuiltinOperator_PRELU,
  904. BuiltinOperator_MAXIMUM,
  905. BuiltinOperator_ARG_MAX,
  906. BuiltinOperator_MINIMUM,
  907. BuiltinOperator_LESS,
  908. BuiltinOperator_NEG,
  909. BuiltinOperator_PADV2,
  910. BuiltinOperator_GREATER,
  911. BuiltinOperator_GREATER_EQUAL,
  912. BuiltinOperator_LESS_EQUAL,
  913. BuiltinOperator_SELECT,
  914. BuiltinOperator_SLICE,
  915. BuiltinOperator_SIN,
  916. BuiltinOperator_TRANSPOSE_CONV,
  917. BuiltinOperator_SPARSE_TO_DENSE,
  918. BuiltinOperator_TILE,
  919. BuiltinOperator_EXPAND_DIMS,
  920. BuiltinOperator_EQUAL,
  921. BuiltinOperator_NOT_EQUAL,
  922. BuiltinOperator_LOG,
  923. BuiltinOperator_SUM,
  924. BuiltinOperator_SQRT,
  925. BuiltinOperator_RSQRT,
  926. BuiltinOperator_SHAPE,
  927. BuiltinOperator_POW,
  928. BuiltinOperator_ARG_MIN,
  929. BuiltinOperator_FAKE_QUANT,
  930. BuiltinOperator_REDUCE_PROD,
  931. BuiltinOperator_REDUCE_MAX,
  932. BuiltinOperator_PACK,
  933. BuiltinOperator_LOGICAL_OR,
  934. BuiltinOperator_ONE_HOT,
  935. BuiltinOperator_LOGICAL_AND,
  936. BuiltinOperator_LOGICAL_NOT,
  937. BuiltinOperator_UNPACK,
  938. BuiltinOperator_REDUCE_MIN,
  939. BuiltinOperator_FLOOR_DIV,
  940. BuiltinOperator_REDUCE_ANY,
  941. BuiltinOperator_SQUARE,
  942. BuiltinOperator_ZEROS_LIKE,
  943. BuiltinOperator_FILL,
  944. BuiltinOperator_FLOOR_MOD,
  945. BuiltinOperator_RANGE,
  946. BuiltinOperator_RESIZE_NEAREST_NEIGHBOR,
  947. BuiltinOperator_LEAKY_RELU,
  948. BuiltinOperator_SQUARED_DIFFERENCE,
  949. BuiltinOperator_MIRROR_PAD,
  950. BuiltinOperator_ABS,
  951. BuiltinOperator_SPLIT_V,
  952. BuiltinOperator_UNIQUE,
  953. BuiltinOperator_CEIL,
  954. BuiltinOperator_REVERSE_V2,
  955. BuiltinOperator_ADD_N,
  956. BuiltinOperator_GATHER_ND,
  957. BuiltinOperator_COS,
  958. BuiltinOperator_WHERE,
  959. BuiltinOperator_RANK,
  960. BuiltinOperator_ELU,
  961. BuiltinOperator_REVERSE_SEQUENCE,
  962. BuiltinOperator_MATRIX_DIAG,
  963. BuiltinOperator_QUANTIZE,
  964. BuiltinOperator_MATRIX_SET_DIAG,
  965. BuiltinOperator_ROUND,
  966. BuiltinOperator_HARD_SWISH,
  967. BuiltinOperator_IF,
  968. BuiltinOperator_WHILE,
  969. BuiltinOperator_NON_MAX_SUPPRESSION_V4,
  970. BuiltinOperator_NON_MAX_SUPPRESSION_V5,
  971. BuiltinOperator_SCATTER_ND,
  972. BuiltinOperator_SELECT_V2,
  973. BuiltinOperator_DENSIFY,
  974. BuiltinOperator_SEGMENT_SUM,
  975. BuiltinOperator_BATCH_MATMUL,
  976. BuiltinOperator_PLACEHOLDER_FOR_GREATER_OP_CODES,
  977. BuiltinOperator_CUMSUM,
  978. BuiltinOperator_CALL_ONCE,
  979. BuiltinOperator_BROADCAST_TO,
  980. BuiltinOperator_RFFT2D,
  981. BuiltinOperator_CONV_3D,
  982. BuiltinOperator_IMAG,
  983. BuiltinOperator_REAL,
  984. BuiltinOperator_COMPLEX_ABS,
  985. BuiltinOperator_HASHTABLE,
  986. BuiltinOperator_HASHTABLE_FIND,
  987. BuiltinOperator_HASHTABLE_IMPORT,
  988. BuiltinOperator_HASHTABLE_SIZE,
  989. BuiltinOperator_REDUCE_ALL,
  990. BuiltinOperator_CONV_3D_TRANSPOSE,
  991. BuiltinOperator_VAR_HANDLE,
  992. BuiltinOperator_READ_VARIABLE,
  993. BuiltinOperator_ASSIGN_VARIABLE,
  994. BuiltinOperator_BROADCAST_ARGS,
  995. BuiltinOperator_RANDOM_STANDARD_NORMAL,
  996. BuiltinOperator_BUCKETIZE,
  997. BuiltinOperator_RANDOM_UNIFORM,
  998. BuiltinOperator_MULTINOMIAL,
  999. BuiltinOperator_GELU,
  1000. BuiltinOperator_DYNAMIC_UPDATE_SLICE,
  1001. BuiltinOperator_RELU_0_TO_1,
  1002. BuiltinOperator_UNSORTED_SEGMENT_PROD,
  1003. BuiltinOperator_UNSORTED_SEGMENT_MAX,
  1004. BuiltinOperator_UNSORTED_SEGMENT_SUM,
  1005. BuiltinOperator_ATAN2,
  1006. BuiltinOperator_UNSORTED_SEGMENT_MIN
  1007. };
  1008. return values;
  1009. }
  1010. inline const char * const *EnumNamesBuiltinOperator() {
  1011. static const char * const names[159] = {
  1012. "ADD",
  1013. "AVERAGE_POOL_2D",
  1014. "CONCATENATION",
  1015. "CONV_2D",
  1016. "DEPTHWISE_CONV_2D",
  1017. "DEPTH_TO_SPACE",
  1018. "DEQUANTIZE",
  1019. "EMBEDDING_LOOKUP",
  1020. "FLOOR",
  1021. "FULLY_CONNECTED",
  1022. "HASHTABLE_LOOKUP",
  1023. "L2_NORMALIZATION",
  1024. "L2_POOL_2D",
  1025. "LOCAL_RESPONSE_NORMALIZATION",
  1026. "LOGISTIC",
  1027. "LSH_PROJECTION",
  1028. "LSTM",
  1029. "MAX_POOL_2D",
  1030. "MUL",
  1031. "RELU",
  1032. "RELU_N1_TO_1",
  1033. "RELU6",
  1034. "RESHAPE",
  1035. "RESIZE_BILINEAR",
  1036. "RNN",
  1037. "SOFTMAX",
  1038. "SPACE_TO_DEPTH",
  1039. "SVDF",
  1040. "TANH",
  1041. "CONCAT_EMBEDDINGS",
  1042. "SKIP_GRAM",
  1043. "CALL",
  1044. "CUSTOM",
  1045. "EMBEDDING_LOOKUP_SPARSE",
  1046. "PAD",
  1047. "UNIDIRECTIONAL_SEQUENCE_RNN",
  1048. "GATHER",
  1049. "BATCH_TO_SPACE_ND",
  1050. "SPACE_TO_BATCH_ND",
  1051. "TRANSPOSE",
  1052. "MEAN",
  1053. "SUB",
  1054. "DIV",
  1055. "SQUEEZE",
  1056. "UNIDIRECTIONAL_SEQUENCE_LSTM",
  1057. "STRIDED_SLICE",
  1058. "BIDIRECTIONAL_SEQUENCE_RNN",
  1059. "EXP",
  1060. "TOPK_V2",
  1061. "SPLIT",
  1062. "LOG_SOFTMAX",
  1063. "DELEGATE",
  1064. "BIDIRECTIONAL_SEQUENCE_LSTM",
  1065. "CAST",
  1066. "PRELU",
  1067. "MAXIMUM",
  1068. "ARG_MAX",
  1069. "MINIMUM",
  1070. "LESS",
  1071. "NEG",
  1072. "PADV2",
  1073. "GREATER",
  1074. "GREATER_EQUAL",
  1075. "LESS_EQUAL",
  1076. "SELECT",
  1077. "SLICE",
  1078. "SIN",
  1079. "TRANSPOSE_CONV",
  1080. "SPARSE_TO_DENSE",
  1081. "TILE",
  1082. "EXPAND_DIMS",
  1083. "EQUAL",
  1084. "NOT_EQUAL",
  1085. "LOG",
  1086. "SUM",
  1087. "SQRT",
  1088. "RSQRT",
  1089. "SHAPE",
  1090. "POW",
  1091. "ARG_MIN",
  1092. "FAKE_QUANT",
  1093. "REDUCE_PROD",
  1094. "REDUCE_MAX",
  1095. "PACK",
  1096. "LOGICAL_OR",
  1097. "ONE_HOT",
  1098. "LOGICAL_AND",
  1099. "LOGICAL_NOT",
  1100. "UNPACK",
  1101. "REDUCE_MIN",
  1102. "FLOOR_DIV",
  1103. "REDUCE_ANY",
  1104. "SQUARE",
  1105. "ZEROS_LIKE",
  1106. "FILL",
  1107. "FLOOR_MOD",
  1108. "RANGE",
  1109. "RESIZE_NEAREST_NEIGHBOR",
  1110. "LEAKY_RELU",
  1111. "SQUARED_DIFFERENCE",
  1112. "MIRROR_PAD",
  1113. "ABS",
  1114. "SPLIT_V",
  1115. "UNIQUE",
  1116. "CEIL",
  1117. "REVERSE_V2",
  1118. "ADD_N",
  1119. "GATHER_ND",
  1120. "COS",
  1121. "WHERE",
  1122. "RANK",
  1123. "ELU",
  1124. "REVERSE_SEQUENCE",
  1125. "MATRIX_DIAG",
  1126. "QUANTIZE",
  1127. "MATRIX_SET_DIAG",
  1128. "ROUND",
  1129. "HARD_SWISH",
  1130. "IF",
  1131. "WHILE",
  1132. "NON_MAX_SUPPRESSION_V4",
  1133. "NON_MAX_SUPPRESSION_V5",
  1134. "SCATTER_ND",
  1135. "SELECT_V2",
  1136. "DENSIFY",
  1137. "SEGMENT_SUM",
  1138. "BATCH_MATMUL",
  1139. "PLACEHOLDER_FOR_GREATER_OP_CODES",
  1140. "CUMSUM",
  1141. "CALL_ONCE",
  1142. "BROADCAST_TO",
  1143. "RFFT2D",
  1144. "CONV_3D",
  1145. "IMAG",
  1146. "REAL",
  1147. "COMPLEX_ABS",
  1148. "HASHTABLE",
  1149. "HASHTABLE_FIND",
  1150. "HASHTABLE_IMPORT",
  1151. "HASHTABLE_SIZE",
  1152. "REDUCE_ALL",
  1153. "CONV_3D_TRANSPOSE",
  1154. "VAR_HANDLE",
  1155. "READ_VARIABLE",
  1156. "ASSIGN_VARIABLE",
  1157. "BROADCAST_ARGS",
  1158. "RANDOM_STANDARD_NORMAL",
  1159. "BUCKETIZE",
  1160. "RANDOM_UNIFORM",
  1161. "MULTINOMIAL",
  1162. "GELU",
  1163. "DYNAMIC_UPDATE_SLICE",
  1164. "RELU_0_TO_1",
  1165. "UNSORTED_SEGMENT_PROD",
  1166. "UNSORTED_SEGMENT_MAX",
  1167. "UNSORTED_SEGMENT_SUM",
  1168. "ATAN2",
  1169. "UNSORTED_SEGMENT_MIN",
  1170. nullptr
  1171. };
  1172. return names;
  1173. }
  1174. inline const char *EnumNameBuiltinOperator(BuiltinOperator e) {
  1175. if (flatbuffers::IsOutRange(e, BuiltinOperator_ADD, BuiltinOperator_UNSORTED_SEGMENT_MIN)) return "";
  1176. const size_t index = static_cast<size_t>(e);
  1177. return EnumNamesBuiltinOperator()[index];
  1178. }
  1179. enum BuiltinOptions {
  1180. BuiltinOptions_NONE = 0,
  1181. BuiltinOptions_Conv2DOptions = 1,
  1182. BuiltinOptions_DepthwiseConv2DOptions = 2,
  1183. BuiltinOptions_ConcatEmbeddingsOptions = 3,
  1184. BuiltinOptions_LSHProjectionOptions = 4,
  1185. BuiltinOptions_Pool2DOptions = 5,
  1186. BuiltinOptions_SVDFOptions = 6,
  1187. BuiltinOptions_RNNOptions = 7,
  1188. BuiltinOptions_FullyConnectedOptions = 8,
  1189. BuiltinOptions_SoftmaxOptions = 9,
  1190. BuiltinOptions_ConcatenationOptions = 10,
  1191. BuiltinOptions_AddOptions = 11,
  1192. BuiltinOptions_L2NormOptions = 12,
  1193. BuiltinOptions_LocalResponseNormalizationOptions = 13,
  1194. BuiltinOptions_LSTMOptions = 14,
  1195. BuiltinOptions_ResizeBilinearOptions = 15,
  1196. BuiltinOptions_CallOptions = 16,
  1197. BuiltinOptions_ReshapeOptions = 17,
  1198. BuiltinOptions_SkipGramOptions = 18,
  1199. BuiltinOptions_SpaceToDepthOptions = 19,
  1200. BuiltinOptions_EmbeddingLookupSparseOptions = 20,
  1201. BuiltinOptions_MulOptions = 21,
  1202. BuiltinOptions_PadOptions = 22,
  1203. BuiltinOptions_GatherOptions = 23,
  1204. BuiltinOptions_BatchToSpaceNDOptions = 24,
  1205. BuiltinOptions_SpaceToBatchNDOptions = 25,
  1206. BuiltinOptions_TransposeOptions = 26,
  1207. BuiltinOptions_ReducerOptions = 27,
  1208. BuiltinOptions_SubOptions = 28,
  1209. BuiltinOptions_DivOptions = 29,
  1210. BuiltinOptions_SqueezeOptions = 30,
  1211. BuiltinOptions_SequenceRNNOptions = 31,
  1212. BuiltinOptions_StridedSliceOptions = 32,
  1213. BuiltinOptions_ExpOptions = 33,
  1214. BuiltinOptions_TopKV2Options = 34,
  1215. BuiltinOptions_SplitOptions = 35,
  1216. BuiltinOptions_LogSoftmaxOptions = 36,
  1217. BuiltinOptions_CastOptions = 37,
  1218. BuiltinOptions_DequantizeOptions = 38,
  1219. BuiltinOptions_MaximumMinimumOptions = 39,
  1220. BuiltinOptions_ArgMaxOptions = 40,
  1221. BuiltinOptions_LessOptions = 41,
  1222. BuiltinOptions_NegOptions = 42,
  1223. BuiltinOptions_PadV2Options = 43,
  1224. BuiltinOptions_GreaterOptions = 44,
  1225. BuiltinOptions_GreaterEqualOptions = 45,
  1226. BuiltinOptions_LessEqualOptions = 46,
  1227. BuiltinOptions_SelectOptions = 47,
  1228. BuiltinOptions_SliceOptions = 48,
  1229. BuiltinOptions_TransposeConvOptions = 49,
  1230. BuiltinOptions_SparseToDenseOptions = 50,
  1231. BuiltinOptions_TileOptions = 51,
  1232. BuiltinOptions_ExpandDimsOptions = 52,
  1233. BuiltinOptions_EqualOptions = 53,
  1234. BuiltinOptions_NotEqualOptions = 54,
  1235. BuiltinOptions_ShapeOptions = 55,
  1236. BuiltinOptions_PowOptions = 56,
  1237. BuiltinOptions_ArgMinOptions = 57,
  1238. BuiltinOptions_FakeQuantOptions = 58,
  1239. BuiltinOptions_PackOptions = 59,
  1240. BuiltinOptions_LogicalOrOptions = 60,
  1241. BuiltinOptions_OneHotOptions = 61,
  1242. BuiltinOptions_LogicalAndOptions = 62,
  1243. BuiltinOptions_LogicalNotOptions = 63,
  1244. BuiltinOptions_UnpackOptions = 64,
  1245. BuiltinOptions_FloorDivOptions = 65,
  1246. BuiltinOptions_SquareOptions = 66,
  1247. BuiltinOptions_ZerosLikeOptions = 67,
  1248. BuiltinOptions_FillOptions = 68,
  1249. BuiltinOptions_BidirectionalSequenceLSTMOptions = 69,
  1250. BuiltinOptions_BidirectionalSequenceRNNOptions = 70,
  1251. BuiltinOptions_UnidirectionalSequenceLSTMOptions = 71,
  1252. BuiltinOptions_FloorModOptions = 72,
  1253. BuiltinOptions_RangeOptions = 73,
  1254. BuiltinOptions_ResizeNearestNeighborOptions = 74,
  1255. BuiltinOptions_LeakyReluOptions = 75,
  1256. BuiltinOptions_SquaredDifferenceOptions = 76,
  1257. BuiltinOptions_MirrorPadOptions = 77,
  1258. BuiltinOptions_AbsOptions = 78,
  1259. BuiltinOptions_SplitVOptions = 79,
  1260. BuiltinOptions_UniqueOptions = 80,
  1261. BuiltinOptions_ReverseV2Options = 81,
  1262. BuiltinOptions_AddNOptions = 82,
  1263. BuiltinOptions_GatherNdOptions = 83,
  1264. BuiltinOptions_CosOptions = 84,
  1265. BuiltinOptions_WhereOptions = 85,
  1266. BuiltinOptions_RankOptions = 86,
  1267. BuiltinOptions_ReverseSequenceOptions = 87,
  1268. BuiltinOptions_MatrixDiagOptions = 88,
  1269. BuiltinOptions_QuantizeOptions = 89,
  1270. BuiltinOptions_MatrixSetDiagOptions = 90,
  1271. BuiltinOptions_HardSwishOptions = 91,
  1272. BuiltinOptions_IfOptions = 92,
  1273. BuiltinOptions_WhileOptions = 93,
  1274. BuiltinOptions_DepthToSpaceOptions = 94,
  1275. BuiltinOptions_NonMaxSuppressionV4Options = 95,
  1276. BuiltinOptions_NonMaxSuppressionV5Options = 96,
  1277. BuiltinOptions_ScatterNdOptions = 97,
  1278. BuiltinOptions_SelectV2Options = 98,
  1279. BuiltinOptions_DensifyOptions = 99,
  1280. BuiltinOptions_SegmentSumOptions = 100,
  1281. BuiltinOptions_BatchMatMulOptions = 101,
  1282. BuiltinOptions_CumsumOptions = 102,
  1283. BuiltinOptions_CallOnceOptions = 103,
  1284. BuiltinOptions_BroadcastToOptions = 104,
  1285. BuiltinOptions_Rfft2dOptions = 105,
  1286. BuiltinOptions_Conv3DOptions = 106,
  1287. BuiltinOptions_HashtableOptions = 107,
  1288. BuiltinOptions_HashtableFindOptions = 108,
  1289. BuiltinOptions_HashtableImportOptions = 109,
  1290. BuiltinOptions_HashtableSizeOptions = 110,
  1291. BuiltinOptions_VarHandleOptions = 111,
  1292. BuiltinOptions_ReadVariableOptions = 112,
  1293. BuiltinOptions_AssignVariableOptions = 113,
  1294. BuiltinOptions_RandomOptions = 114,
  1295. BuiltinOptions_BucketizeOptions = 115,
  1296. BuiltinOptions_GeluOptions = 116,
  1297. BuiltinOptions_DynamicUpdateSliceOptions = 117,
  1298. BuiltinOptions_UnsortedSegmentProdOptions = 118,
  1299. BuiltinOptions_UnsortedSegmentMaxOptions = 119,
  1300. BuiltinOptions_UnsortedSegmentMinOptions = 120,
  1301. BuiltinOptions_UnsortedSegmentSumOptions = 121,
  1302. BuiltinOptions_ATan2Options = 122,
  1303. BuiltinOptions_MIN = BuiltinOptions_NONE,
  1304. BuiltinOptions_MAX = BuiltinOptions_ATan2Options
  1305. };
  1306. inline const BuiltinOptions (&EnumValuesBuiltinOptions())[123] {
  1307. static const BuiltinOptions values[] = {
  1308. BuiltinOptions_NONE,
  1309. BuiltinOptions_Conv2DOptions,
  1310. BuiltinOptions_DepthwiseConv2DOptions,
  1311. BuiltinOptions_ConcatEmbeddingsOptions,
  1312. BuiltinOptions_LSHProjectionOptions,
  1313. BuiltinOptions_Pool2DOptions,
  1314. BuiltinOptions_SVDFOptions,
  1315. BuiltinOptions_RNNOptions,
  1316. BuiltinOptions_FullyConnectedOptions,
  1317. BuiltinOptions_SoftmaxOptions,
  1318. BuiltinOptions_ConcatenationOptions,
  1319. BuiltinOptions_AddOptions,
  1320. BuiltinOptions_L2NormOptions,
  1321. BuiltinOptions_LocalResponseNormalizationOptions,
  1322. BuiltinOptions_LSTMOptions,
  1323. BuiltinOptions_ResizeBilinearOptions,
  1324. BuiltinOptions_CallOptions,
  1325. BuiltinOptions_ReshapeOptions,
  1326. BuiltinOptions_SkipGramOptions,
  1327. BuiltinOptions_SpaceToDepthOptions,
  1328. BuiltinOptions_EmbeddingLookupSparseOptions,
  1329. BuiltinOptions_MulOptions,
  1330. BuiltinOptions_PadOptions,
  1331. BuiltinOptions_GatherOptions,
  1332. BuiltinOptions_BatchToSpaceNDOptions,
  1333. BuiltinOptions_SpaceToBatchNDOptions,
  1334. BuiltinOptions_TransposeOptions,
  1335. BuiltinOptions_ReducerOptions,
  1336. BuiltinOptions_SubOptions,
  1337. BuiltinOptions_DivOptions,
  1338. BuiltinOptions_SqueezeOptions,
  1339. BuiltinOptions_SequenceRNNOptions,
  1340. BuiltinOptions_StridedSliceOptions,
  1341. BuiltinOptions_ExpOptions,
  1342. BuiltinOptions_TopKV2Options,
  1343. BuiltinOptions_SplitOptions,
  1344. BuiltinOptions_LogSoftmaxOptions,
  1345. BuiltinOptions_CastOptions,
  1346. BuiltinOptions_DequantizeOptions,
  1347. BuiltinOptions_MaximumMinimumOptions,
  1348. BuiltinOptions_ArgMaxOptions,
  1349. BuiltinOptions_LessOptions,
  1350. BuiltinOptions_NegOptions,
  1351. BuiltinOptions_PadV2Options,
  1352. BuiltinOptions_GreaterOptions,
  1353. BuiltinOptions_GreaterEqualOptions,
  1354. BuiltinOptions_LessEqualOptions,
  1355. BuiltinOptions_SelectOptions,
  1356. BuiltinOptions_SliceOptions,
  1357. BuiltinOptions_TransposeConvOptions,
  1358. BuiltinOptions_SparseToDenseOptions,
  1359. BuiltinOptions_TileOptions,
  1360. BuiltinOptions_ExpandDimsOptions,
  1361. BuiltinOptions_EqualOptions,
  1362. BuiltinOptions_NotEqualOptions,
  1363. BuiltinOptions_ShapeOptions,
  1364. BuiltinOptions_PowOptions,
  1365. BuiltinOptions_ArgMinOptions,
  1366. BuiltinOptions_FakeQuantOptions,
  1367. BuiltinOptions_PackOptions,
  1368. BuiltinOptions_LogicalOrOptions,
  1369. BuiltinOptions_OneHotOptions,
  1370. BuiltinOptions_LogicalAndOptions,
  1371. BuiltinOptions_LogicalNotOptions,
  1372. BuiltinOptions_UnpackOptions,
  1373. BuiltinOptions_FloorDivOptions,
  1374. BuiltinOptions_SquareOptions,
  1375. BuiltinOptions_ZerosLikeOptions,
  1376. BuiltinOptions_FillOptions,
  1377. BuiltinOptions_BidirectionalSequenceLSTMOptions,
  1378. BuiltinOptions_BidirectionalSequenceRNNOptions,
  1379. BuiltinOptions_UnidirectionalSequenceLSTMOptions,
  1380. BuiltinOptions_FloorModOptions,
  1381. BuiltinOptions_RangeOptions,
  1382. BuiltinOptions_ResizeNearestNeighborOptions,
  1383. BuiltinOptions_LeakyReluOptions,
  1384. BuiltinOptions_SquaredDifferenceOptions,
  1385. BuiltinOptions_MirrorPadOptions,
  1386. BuiltinOptions_AbsOptions,
  1387. BuiltinOptions_SplitVOptions,
  1388. BuiltinOptions_UniqueOptions,
  1389. BuiltinOptions_ReverseV2Options,
  1390. BuiltinOptions_AddNOptions,
  1391. BuiltinOptions_GatherNdOptions,
  1392. BuiltinOptions_CosOptions,
  1393. BuiltinOptions_WhereOptions,
  1394. BuiltinOptions_RankOptions,
  1395. BuiltinOptions_ReverseSequenceOptions,
  1396. BuiltinOptions_MatrixDiagOptions,
  1397. BuiltinOptions_QuantizeOptions,
  1398. BuiltinOptions_MatrixSetDiagOptions,
  1399. BuiltinOptions_HardSwishOptions,
  1400. BuiltinOptions_IfOptions,
  1401. BuiltinOptions_WhileOptions,
  1402. BuiltinOptions_DepthToSpaceOptions,
  1403. BuiltinOptions_NonMaxSuppressionV4Options,
  1404. BuiltinOptions_NonMaxSuppressionV5Options,
  1405. BuiltinOptions_ScatterNdOptions,
  1406. BuiltinOptions_SelectV2Options,
  1407. BuiltinOptions_DensifyOptions,
  1408. BuiltinOptions_SegmentSumOptions,
  1409. BuiltinOptions_BatchMatMulOptions,
  1410. BuiltinOptions_CumsumOptions,
  1411. BuiltinOptions_CallOnceOptions,
  1412. BuiltinOptions_BroadcastToOptions,
  1413. BuiltinOptions_Rfft2dOptions,
  1414. BuiltinOptions_Conv3DOptions,
  1415. BuiltinOptions_HashtableOptions,
  1416. BuiltinOptions_HashtableFindOptions,
  1417. BuiltinOptions_HashtableImportOptions,
  1418. BuiltinOptions_HashtableSizeOptions,
  1419. BuiltinOptions_VarHandleOptions,
  1420. BuiltinOptions_ReadVariableOptions,
  1421. BuiltinOptions_AssignVariableOptions,
  1422. BuiltinOptions_RandomOptions,
  1423. BuiltinOptions_BucketizeOptions,
  1424. BuiltinOptions_GeluOptions,
  1425. BuiltinOptions_DynamicUpdateSliceOptions,
  1426. BuiltinOptions_UnsortedSegmentProdOptions,
  1427. BuiltinOptions_UnsortedSegmentMaxOptions,
  1428. BuiltinOptions_UnsortedSegmentMinOptions,
  1429. BuiltinOptions_UnsortedSegmentSumOptions,
  1430. BuiltinOptions_ATan2Options
  1431. };
  1432. return values;
  1433. }
  1434. inline const char * const *EnumNamesBuiltinOptions() {
  1435. static const char * const names[124] = {
  1436. "NONE",
  1437. "Conv2DOptions",
  1438. "DepthwiseConv2DOptions",
  1439. "ConcatEmbeddingsOptions",
  1440. "LSHProjectionOptions",
  1441. "Pool2DOptions",
  1442. "SVDFOptions",
  1443. "RNNOptions",
  1444. "FullyConnectedOptions",
  1445. "SoftmaxOptions",
  1446. "ConcatenationOptions",
  1447. "AddOptions",
  1448. "L2NormOptions",
  1449. "LocalResponseNormalizationOptions",
  1450. "LSTMOptions",
  1451. "ResizeBilinearOptions",
  1452. "CallOptions",
  1453. "ReshapeOptions",
  1454. "SkipGramOptions",
  1455. "SpaceToDepthOptions",
  1456. "EmbeddingLookupSparseOptions",
  1457. "MulOptions",
  1458. "PadOptions",
  1459. "GatherOptions",
  1460. "BatchToSpaceNDOptions",
  1461. "SpaceToBatchNDOptions",
  1462. "TransposeOptions",
  1463. "ReducerOptions",
  1464. "SubOptions",
  1465. "DivOptions",
  1466. "SqueezeOptions",
  1467. "SequenceRNNOptions",
  1468. "StridedSliceOptions",
  1469. "ExpOptions",
  1470. "TopKV2Options",
  1471. "SplitOptions",
  1472. "LogSoftmaxOptions",
  1473. "CastOptions",
  1474. "DequantizeOptions",
  1475. "MaximumMinimumOptions",
  1476. "ArgMaxOptions",
  1477. "LessOptions",
  1478. "NegOptions",
  1479. "PadV2Options",
  1480. "GreaterOptions",
  1481. "GreaterEqualOptions",
  1482. "LessEqualOptions",
  1483. "SelectOptions",
  1484. "SliceOptions",
  1485. "TransposeConvOptions",
  1486. "SparseToDenseOptions",
  1487. "TileOptions",
  1488. "ExpandDimsOptions",
  1489. "EqualOptions",
  1490. "NotEqualOptions",
  1491. "ShapeOptions",
  1492. "PowOptions",
  1493. "ArgMinOptions",
  1494. "FakeQuantOptions",
  1495. "PackOptions",
  1496. "LogicalOrOptions",
  1497. "OneHotOptions",
  1498. "LogicalAndOptions",
  1499. "LogicalNotOptions",
  1500. "UnpackOptions",
  1501. "FloorDivOptions",
  1502. "SquareOptions",
  1503. "ZerosLikeOptions",
  1504. "FillOptions",
  1505. "BidirectionalSequenceLSTMOptions",
  1506. "BidirectionalSequenceRNNOptions",
  1507. "UnidirectionalSequenceLSTMOptions",
  1508. "FloorModOptions",
  1509. "RangeOptions",
  1510. "ResizeNearestNeighborOptions",
  1511. "LeakyReluOptions",
  1512. "SquaredDifferenceOptions",
  1513. "MirrorPadOptions",
  1514. "AbsOptions",
  1515. "SplitVOptions",
  1516. "UniqueOptions",
  1517. "ReverseV2Options",
  1518. "AddNOptions",
  1519. "GatherNdOptions",
  1520. "CosOptions",
  1521. "WhereOptions",
  1522. "RankOptions",
  1523. "ReverseSequenceOptions",
  1524. "MatrixDiagOptions",
  1525. "QuantizeOptions",
  1526. "MatrixSetDiagOptions",
  1527. "HardSwishOptions",
  1528. "IfOptions",
  1529. "WhileOptions",
  1530. "DepthToSpaceOptions",
  1531. "NonMaxSuppressionV4Options",
  1532. "NonMaxSuppressionV5Options",
  1533. "ScatterNdOptions",
  1534. "SelectV2Options",
  1535. "DensifyOptions",
  1536. "SegmentSumOptions",
  1537. "BatchMatMulOptions",
  1538. "CumsumOptions",
  1539. "CallOnceOptions",
  1540. "BroadcastToOptions",
  1541. "Rfft2dOptions",
  1542. "Conv3DOptions",
  1543. "HashtableOptions",
  1544. "HashtableFindOptions",
  1545. "HashtableImportOptions",
  1546. "HashtableSizeOptions",
  1547. "VarHandleOptions",
  1548. "ReadVariableOptions",
  1549. "AssignVariableOptions",
  1550. "RandomOptions",
  1551. "BucketizeOptions",
  1552. "GeluOptions",
  1553. "DynamicUpdateSliceOptions",
  1554. "UnsortedSegmentProdOptions",
  1555. "UnsortedSegmentMaxOptions",
  1556. "UnsortedSegmentMinOptions",
  1557. "UnsortedSegmentSumOptions",
  1558. "ATan2Options",
  1559. nullptr
  1560. };
  1561. return names;
  1562. }
  1563. inline const char *EnumNameBuiltinOptions(BuiltinOptions e) {
  1564. if (flatbuffers::IsOutRange(e, BuiltinOptions_NONE, BuiltinOptions_ATan2Options)) return "";
  1565. const size_t index = static_cast<size_t>(e);
  1566. return EnumNamesBuiltinOptions()[index];
  1567. }
  1568. template<typename T> struct BuiltinOptionsTraits {
  1569. static const BuiltinOptions enum_value = BuiltinOptions_NONE;
  1570. };
  1571. template<> struct BuiltinOptionsTraits<tflite::Conv2DOptions> {
  1572. static const BuiltinOptions enum_value = BuiltinOptions_Conv2DOptions;
  1573. };
  1574. template<> struct BuiltinOptionsTraits<tflite::DepthwiseConv2DOptions> {
  1575. static const BuiltinOptions enum_value = BuiltinOptions_DepthwiseConv2DOptions;
  1576. };
  1577. template<> struct BuiltinOptionsTraits<tflite::ConcatEmbeddingsOptions> {
  1578. static const BuiltinOptions enum_value = BuiltinOptions_ConcatEmbeddingsOptions;
  1579. };
  1580. template<> struct BuiltinOptionsTraits<tflite::LSHProjectionOptions> {
  1581. static const BuiltinOptions enum_value = BuiltinOptions_LSHProjectionOptions;
  1582. };
  1583. template<> struct BuiltinOptionsTraits<tflite::Pool2DOptions> {
  1584. static const BuiltinOptions enum_value = BuiltinOptions_Pool2DOptions;
  1585. };
  1586. template<> struct BuiltinOptionsTraits<tflite::SVDFOptions> {
  1587. static const BuiltinOptions enum_value = BuiltinOptions_SVDFOptions;
  1588. };
  1589. template<> struct BuiltinOptionsTraits<tflite::RNNOptions> {
  1590. static const BuiltinOptions enum_value = BuiltinOptions_RNNOptions;
  1591. };
  1592. template<> struct BuiltinOptionsTraits<tflite::FullyConnectedOptions> {
  1593. static const BuiltinOptions enum_value = BuiltinOptions_FullyConnectedOptions;
  1594. };
  1595. template<> struct BuiltinOptionsTraits<tflite::SoftmaxOptions> {
  1596. static const BuiltinOptions enum_value = BuiltinOptions_SoftmaxOptions;
  1597. };
  1598. template<> struct BuiltinOptionsTraits<tflite::ConcatenationOptions> {
  1599. static const BuiltinOptions enum_value = BuiltinOptions_ConcatenationOptions;
  1600. };
  1601. template<> struct BuiltinOptionsTraits<tflite::AddOptions> {
  1602. static const BuiltinOptions enum_value = BuiltinOptions_AddOptions;
  1603. };
  1604. template<> struct BuiltinOptionsTraits<tflite::L2NormOptions> {
  1605. static const BuiltinOptions enum_value = BuiltinOptions_L2NormOptions;
  1606. };
  1607. template<> struct BuiltinOptionsTraits<tflite::LocalResponseNormalizationOptions> {
  1608. static const BuiltinOptions enum_value = BuiltinOptions_LocalResponseNormalizationOptions;
  1609. };
  1610. template<> struct BuiltinOptionsTraits<tflite::LSTMOptions> {
  1611. static const BuiltinOptions enum_value = BuiltinOptions_LSTMOptions;
  1612. };
  1613. template<> struct BuiltinOptionsTraits<tflite::ResizeBilinearOptions> {
  1614. static const BuiltinOptions enum_value = BuiltinOptions_ResizeBilinearOptions;
  1615. };
  1616. template<> struct BuiltinOptionsTraits<tflite::CallOptions> {
  1617. static const BuiltinOptions enum_value = BuiltinOptions_CallOptions;
  1618. };
  1619. template<> struct BuiltinOptionsTraits<tflite::ReshapeOptions> {
  1620. static const BuiltinOptions enum_value = BuiltinOptions_ReshapeOptions;
  1621. };
  1622. template<> struct BuiltinOptionsTraits<tflite::SkipGramOptions> {
  1623. static const BuiltinOptions enum_value = BuiltinOptions_SkipGramOptions;
  1624. };
  1625. template<> struct BuiltinOptionsTraits<tflite::SpaceToDepthOptions> {
  1626. static const BuiltinOptions enum_value = BuiltinOptions_SpaceToDepthOptions;
  1627. };
  1628. template<> struct BuiltinOptionsTraits<tflite::EmbeddingLookupSparseOptions> {
  1629. static const BuiltinOptions enum_value = BuiltinOptions_EmbeddingLookupSparseOptions;
  1630. };
  1631. template<> struct BuiltinOptionsTraits<tflite::MulOptions> {
  1632. static const BuiltinOptions enum_value = BuiltinOptions_MulOptions;
  1633. };
  1634. template<> struct BuiltinOptionsTraits<tflite::PadOptions> {
  1635. static const BuiltinOptions enum_value = BuiltinOptions_PadOptions;
  1636. };
  1637. template<> struct BuiltinOptionsTraits<tflite::GatherOptions> {
  1638. static const BuiltinOptions enum_value = BuiltinOptions_GatherOptions;
  1639. };
  1640. template<> struct BuiltinOptionsTraits<tflite::BatchToSpaceNDOptions> {
  1641. static const BuiltinOptions enum_value = BuiltinOptions_BatchToSpaceNDOptions;
  1642. };
  1643. template<> struct BuiltinOptionsTraits<tflite::SpaceToBatchNDOptions> {
  1644. static const BuiltinOptions enum_value = BuiltinOptions_SpaceToBatchNDOptions;
  1645. };
  1646. template<> struct BuiltinOptionsTraits<tflite::TransposeOptions> {
  1647. static const BuiltinOptions enum_value = BuiltinOptions_TransposeOptions;
  1648. };
  1649. template<> struct BuiltinOptionsTraits<tflite::ReducerOptions> {
  1650. static const BuiltinOptions enum_value = BuiltinOptions_ReducerOptions;
  1651. };
  1652. template<> struct BuiltinOptionsTraits<tflite::SubOptions> {
  1653. static const BuiltinOptions enum_value = BuiltinOptions_SubOptions;
  1654. };
  1655. template<> struct BuiltinOptionsTraits<tflite::DivOptions> {
  1656. static const BuiltinOptions enum_value = BuiltinOptions_DivOptions;
  1657. };
  1658. template<> struct BuiltinOptionsTraits<tflite::SqueezeOptions> {
  1659. static const BuiltinOptions enum_value = BuiltinOptions_SqueezeOptions;
  1660. };
  1661. template<> struct BuiltinOptionsTraits<tflite::SequenceRNNOptions> {
  1662. static const BuiltinOptions enum_value = BuiltinOptions_SequenceRNNOptions;
  1663. };
  1664. template<> struct BuiltinOptionsTraits<tflite::StridedSliceOptions> {
  1665. static const BuiltinOptions enum_value = BuiltinOptions_StridedSliceOptions;
  1666. };
  1667. template<> struct BuiltinOptionsTraits<tflite::ExpOptions> {
  1668. static const BuiltinOptions enum_value = BuiltinOptions_ExpOptions;
  1669. };
  1670. template<> struct BuiltinOptionsTraits<tflite::TopKV2Options> {
  1671. static const BuiltinOptions enum_value = BuiltinOptions_TopKV2Options;
  1672. };
  1673. template<> struct BuiltinOptionsTraits<tflite::SplitOptions> {
  1674. static const BuiltinOptions enum_value = BuiltinOptions_SplitOptions;
  1675. };
  1676. template<> struct BuiltinOptionsTraits<tflite::LogSoftmaxOptions> {
  1677. static const BuiltinOptions enum_value = BuiltinOptions_LogSoftmaxOptions;
  1678. };
  1679. template<> struct BuiltinOptionsTraits<tflite::CastOptions> {
  1680. static const BuiltinOptions enum_value = BuiltinOptions_CastOptions;
  1681. };
  1682. template<> struct BuiltinOptionsTraits<tflite::DequantizeOptions> {
  1683. static const BuiltinOptions enum_value = BuiltinOptions_DequantizeOptions;
  1684. };
  1685. template<> struct BuiltinOptionsTraits<tflite::MaximumMinimumOptions> {
  1686. static const BuiltinOptions enum_value = BuiltinOptions_MaximumMinimumOptions;
  1687. };
  1688. template<> struct BuiltinOptionsTraits<tflite::ArgMaxOptions> {
  1689. static const BuiltinOptions enum_value = BuiltinOptions_ArgMaxOptions;
  1690. };
  1691. template<> struct BuiltinOptionsTraits<tflite::LessOptions> {
  1692. static const BuiltinOptions enum_value = BuiltinOptions_LessOptions;
  1693. };
  1694. template<> struct BuiltinOptionsTraits<tflite::NegOptions> {
  1695. static const BuiltinOptions enum_value = BuiltinOptions_NegOptions;
  1696. };
  1697. template<> struct BuiltinOptionsTraits<tflite::PadV2Options> {
  1698. static const BuiltinOptions enum_value = BuiltinOptions_PadV2Options;
  1699. };
  1700. template<> struct BuiltinOptionsTraits<tflite::GreaterOptions> {
  1701. static const BuiltinOptions enum_value = BuiltinOptions_GreaterOptions;
  1702. };
  1703. template<> struct BuiltinOptionsTraits<tflite::GreaterEqualOptions> {
  1704. static const BuiltinOptions enum_value = BuiltinOptions_GreaterEqualOptions;
  1705. };
  1706. template<> struct BuiltinOptionsTraits<tflite::LessEqualOptions> {
  1707. static const BuiltinOptions enum_value = BuiltinOptions_LessEqualOptions;
  1708. };
  1709. template<> struct BuiltinOptionsTraits<tflite::SelectOptions> {
  1710. static const BuiltinOptions enum_value = BuiltinOptions_SelectOptions;
  1711. };
  1712. template<> struct BuiltinOptionsTraits<tflite::SliceOptions> {
  1713. static const BuiltinOptions enum_value = BuiltinOptions_SliceOptions;
  1714. };
  1715. template<> struct BuiltinOptionsTraits<tflite::TransposeConvOptions> {
  1716. static const BuiltinOptions enum_value = BuiltinOptions_TransposeConvOptions;
  1717. };
  1718. template<> struct BuiltinOptionsTraits<tflite::SparseToDenseOptions> {
  1719. static const BuiltinOptions enum_value = BuiltinOptions_SparseToDenseOptions;
  1720. };
  1721. template<> struct BuiltinOptionsTraits<tflite::TileOptions> {
  1722. static const BuiltinOptions enum_value = BuiltinOptions_TileOptions;
  1723. };
  1724. template<> struct BuiltinOptionsTraits<tflite::ExpandDimsOptions> {
  1725. static const BuiltinOptions enum_value = BuiltinOptions_ExpandDimsOptions;
  1726. };
  1727. template<> struct BuiltinOptionsTraits<tflite::EqualOptions> {
  1728. static const BuiltinOptions enum_value = BuiltinOptions_EqualOptions;
  1729. };
  1730. template<> struct BuiltinOptionsTraits<tflite::NotEqualOptions> {
  1731. static const BuiltinOptions enum_value = BuiltinOptions_NotEqualOptions;
  1732. };
  1733. template<> struct BuiltinOptionsTraits<tflite::ShapeOptions> {
  1734. static const BuiltinOptions enum_value = BuiltinOptions_ShapeOptions;
  1735. };
  1736. template<> struct BuiltinOptionsTraits<tflite::PowOptions> {
  1737. static const BuiltinOptions enum_value = BuiltinOptions_PowOptions;
  1738. };
  1739. template<> struct BuiltinOptionsTraits<tflite::ArgMinOptions> {
  1740. static const BuiltinOptions enum_value = BuiltinOptions_ArgMinOptions;
  1741. };
  1742. template<> struct BuiltinOptionsTraits<tflite::FakeQuantOptions> {
  1743. static const BuiltinOptions enum_value = BuiltinOptions_FakeQuantOptions;
  1744. };
  1745. template<> struct BuiltinOptionsTraits<tflite::PackOptions> {
  1746. static const BuiltinOptions enum_value = BuiltinOptions_PackOptions;
  1747. };
  1748. template<> struct BuiltinOptionsTraits<tflite::LogicalOrOptions> {
  1749. static const BuiltinOptions enum_value = BuiltinOptions_LogicalOrOptions;
  1750. };
  1751. template<> struct BuiltinOptionsTraits<tflite::OneHotOptions> {
  1752. static const BuiltinOptions enum_value = BuiltinOptions_OneHotOptions;
  1753. };
  1754. template<> struct BuiltinOptionsTraits<tflite::LogicalAndOptions> {
  1755. static const BuiltinOptions enum_value = BuiltinOptions_LogicalAndOptions;
  1756. };
  1757. template<> struct BuiltinOptionsTraits<tflite::LogicalNotOptions> {
  1758. static const BuiltinOptions enum_value = BuiltinOptions_LogicalNotOptions;
  1759. };
  1760. template<> struct BuiltinOptionsTraits<tflite::UnpackOptions> {
  1761. static const BuiltinOptions enum_value = BuiltinOptions_UnpackOptions;
  1762. };
  1763. template<> struct BuiltinOptionsTraits<tflite::FloorDivOptions> {
  1764. static const BuiltinOptions enum_value = BuiltinOptions_FloorDivOptions;
  1765. };
  1766. template<> struct BuiltinOptionsTraits<tflite::SquareOptions> {
  1767. static const BuiltinOptions enum_value = BuiltinOptions_SquareOptions;
  1768. };
  1769. template<> struct BuiltinOptionsTraits<tflite::ZerosLikeOptions> {
  1770. static const BuiltinOptions enum_value = BuiltinOptions_ZerosLikeOptions;
  1771. };
  1772. template<> struct BuiltinOptionsTraits<tflite::FillOptions> {
  1773. static const BuiltinOptions enum_value = BuiltinOptions_FillOptions;
  1774. };
  1775. template<> struct BuiltinOptionsTraits<tflite::BidirectionalSequenceLSTMOptions> {
  1776. static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceLSTMOptions;
  1777. };
  1778. template<> struct BuiltinOptionsTraits<tflite::BidirectionalSequenceRNNOptions> {
  1779. static const BuiltinOptions enum_value = BuiltinOptions_BidirectionalSequenceRNNOptions;
  1780. };
  1781. template<> struct BuiltinOptionsTraits<tflite::UnidirectionalSequenceLSTMOptions> {
  1782. static const BuiltinOptions enum_value = BuiltinOptions_UnidirectionalSequenceLSTMOptions;
  1783. };
  1784. template<> struct BuiltinOptionsTraits<tflite::FloorModOptions> {
  1785. static const BuiltinOptions enum_value = BuiltinOptions_FloorModOptions;
  1786. };
  1787. template<> struct BuiltinOptionsTraits<tflite::RangeOptions> {
  1788. static const BuiltinOptions enum_value = BuiltinOptions_RangeOptions;
  1789. };
  1790. template<> struct BuiltinOptionsTraits<tflite::ResizeNearestNeighborOptions> {
  1791. static const BuiltinOptions enum_value = BuiltinOptions_ResizeNearestNeighborOptions;
  1792. };
  1793. template<> struct BuiltinOptionsTraits<tflite::LeakyReluOptions> {
  1794. static const BuiltinOptions enum_value = BuiltinOptions_LeakyReluOptions;
  1795. };
  1796. template<> struct BuiltinOptionsTraits<tflite::SquaredDifferenceOptions> {
  1797. static const BuiltinOptions enum_value = BuiltinOptions_SquaredDifferenceOptions;
  1798. };
  1799. template<> struct BuiltinOptionsTraits<tflite::MirrorPadOptions> {
  1800. static const BuiltinOptions enum_value = BuiltinOptions_MirrorPadOptions;
  1801. };
  1802. template<> struct BuiltinOptionsTraits<tflite::AbsOptions> {
  1803. static const BuiltinOptions enum_value = BuiltinOptions_AbsOptions;
  1804. };
  1805. template<> struct BuiltinOptionsTraits<tflite::SplitVOptions> {
  1806. static const BuiltinOptions enum_value = BuiltinOptions_SplitVOptions;
  1807. };
  1808. template<> struct BuiltinOptionsTraits<tflite::UniqueOptions> {
  1809. static const BuiltinOptions enum_value = BuiltinOptions_UniqueOptions;
  1810. };
  1811. template<> struct BuiltinOptionsTraits<tflite::ReverseV2Options> {
  1812. static const BuiltinOptions enum_value = BuiltinOptions_ReverseV2Options;
  1813. };
  1814. template<> struct BuiltinOptionsTraits<tflite::AddNOptions> {
  1815. static const BuiltinOptions enum_value = BuiltinOptions_AddNOptions;
  1816. };
  1817. template<> struct BuiltinOptionsTraits<tflite::GatherNdOptions> {
  1818. static const BuiltinOptions enum_value = BuiltinOptions_GatherNdOptions;
  1819. };
  1820. template<> struct BuiltinOptionsTraits<tflite::CosOptions> {
  1821. static const BuiltinOptions enum_value = BuiltinOptions_CosOptions;
  1822. };
  1823. template<> struct BuiltinOptionsTraits<tflite::WhereOptions> {
  1824. static const BuiltinOptions enum_value = BuiltinOptions_WhereOptions;
  1825. };
  1826. template<> struct BuiltinOptionsTraits<tflite::RankOptions> {
  1827. static const BuiltinOptions enum_value = BuiltinOptions_RankOptions;
  1828. };
  1829. template<> struct BuiltinOptionsTraits<tflite::ReverseSequenceOptions> {
  1830. static const BuiltinOptions enum_value = BuiltinOptions_ReverseSequenceOptions;
  1831. };
  1832. template<> struct BuiltinOptionsTraits<tflite::MatrixDiagOptions> {
  1833. static const BuiltinOptions enum_value = BuiltinOptions_MatrixDiagOptions;
  1834. };
  1835. template<> struct BuiltinOptionsTraits<tflite::QuantizeOptions> {
  1836. static const BuiltinOptions enum_value = BuiltinOptions_QuantizeOptions;
  1837. };
  1838. template<> struct BuiltinOptionsTraits<tflite::MatrixSetDiagOptions> {
  1839. static const BuiltinOptions enum_value = BuiltinOptions_MatrixSetDiagOptions;
  1840. };
  1841. template<> struct BuiltinOptionsTraits<tflite::HardSwishOptions> {
  1842. static const BuiltinOptions enum_value = BuiltinOptions_HardSwishOptions;
  1843. };
  1844. template<> struct BuiltinOptionsTraits<tflite::IfOptions> {
  1845. static const BuiltinOptions enum_value = BuiltinOptions_IfOptions;
  1846. };
  1847. template<> struct BuiltinOptionsTraits<tflite::WhileOptions> {
  1848. static const BuiltinOptions enum_value = BuiltinOptions_WhileOptions;
  1849. };
  1850. template<> struct BuiltinOptionsTraits<tflite::DepthToSpaceOptions> {
  1851. static const BuiltinOptions enum_value = BuiltinOptions_DepthToSpaceOptions;
  1852. };
  1853. template<> struct BuiltinOptionsTraits<tflite::NonMaxSuppressionV4Options> {
  1854. static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV4Options;
  1855. };
  1856. template<> struct BuiltinOptionsTraits<tflite::NonMaxSuppressionV5Options> {
  1857. static const BuiltinOptions enum_value = BuiltinOptions_NonMaxSuppressionV5Options;
  1858. };
  1859. template<> struct BuiltinOptionsTraits<tflite::ScatterNdOptions> {
  1860. static const BuiltinOptions enum_value = BuiltinOptions_ScatterNdOptions;
  1861. };
  1862. template<> struct BuiltinOptionsTraits<tflite::SelectV2Options> {
  1863. static const BuiltinOptions enum_value = BuiltinOptions_SelectV2Options;
  1864. };
  1865. template<> struct BuiltinOptionsTraits<tflite::DensifyOptions> {
  1866. static const BuiltinOptions enum_value = BuiltinOptions_DensifyOptions;
  1867. };
  1868. template<> struct BuiltinOptionsTraits<tflite::SegmentSumOptions> {
  1869. static const BuiltinOptions enum_value = BuiltinOptions_SegmentSumOptions;
  1870. };
  1871. template<> struct BuiltinOptionsTraits<tflite::BatchMatMulOptions> {
  1872. static const BuiltinOptions enum_value = BuiltinOptions_BatchMatMulOptions;
  1873. };
  1874. template<> struct BuiltinOptionsTraits<tflite::CumsumOptions> {
  1875. static const BuiltinOptions enum_value = BuiltinOptions_CumsumOptions;
  1876. };
  1877. template<> struct BuiltinOptionsTraits<tflite::CallOnceOptions> {
  1878. static const BuiltinOptions enum_value = BuiltinOptions_CallOnceOptions;
  1879. };
  1880. template<> struct BuiltinOptionsTraits<tflite::BroadcastToOptions> {
  1881. static const BuiltinOptions enum_value = BuiltinOptions_BroadcastToOptions;
  1882. };
  1883. template<> struct BuiltinOptionsTraits<tflite::Rfft2dOptions> {
  1884. static const BuiltinOptions enum_value = BuiltinOptions_Rfft2dOptions;
  1885. };
  1886. template<> struct BuiltinOptionsTraits<tflite::Conv3DOptions> {
  1887. static const BuiltinOptions enum_value = BuiltinOptions_Conv3DOptions;
  1888. };
  1889. template<> struct BuiltinOptionsTraits<tflite::HashtableOptions> {
  1890. static const BuiltinOptions enum_value = BuiltinOptions_HashtableOptions;
  1891. };
  1892. template<> struct BuiltinOptionsTraits<tflite::HashtableFindOptions> {
  1893. static const BuiltinOptions enum_value = BuiltinOptions_HashtableFindOptions;
  1894. };
  1895. template<> struct BuiltinOptionsTraits<tflite::HashtableImportOptions> {
  1896. static const BuiltinOptions enum_value = BuiltinOptions_HashtableImportOptions;
  1897. };
  1898. template<> struct BuiltinOptionsTraits<tflite::HashtableSizeOptions> {
  1899. static const BuiltinOptions enum_value = BuiltinOptions_HashtableSizeOptions;
  1900. };
  1901. template<> struct BuiltinOptionsTraits<tflite::VarHandleOptions> {
  1902. static const BuiltinOptions enum_value = BuiltinOptions_VarHandleOptions;
  1903. };
  1904. template<> struct BuiltinOptionsTraits<tflite::ReadVariableOptions> {
  1905. static const BuiltinOptions enum_value = BuiltinOptions_ReadVariableOptions;
  1906. };
  1907. template<> struct BuiltinOptionsTraits<tflite::AssignVariableOptions> {
  1908. static const BuiltinOptions enum_value = BuiltinOptions_AssignVariableOptions;
  1909. };
  1910. template<> struct BuiltinOptionsTraits<tflite::RandomOptions> {
  1911. static const BuiltinOptions enum_value = BuiltinOptions_RandomOptions;
  1912. };
  1913. template<> struct BuiltinOptionsTraits<tflite::BucketizeOptions> {
  1914. static const BuiltinOptions enum_value = BuiltinOptions_BucketizeOptions;
  1915. };
  1916. template<> struct BuiltinOptionsTraits<tflite::GeluOptions> {
  1917. static const BuiltinOptions enum_value = BuiltinOptions_GeluOptions;
  1918. };
  1919. template<> struct BuiltinOptionsTraits<tflite::DynamicUpdateSliceOptions> {
  1920. static const BuiltinOptions enum_value = BuiltinOptions_DynamicUpdateSliceOptions;
  1921. };
  1922. template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentProdOptions> {
  1923. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentProdOptions;
  1924. };
  1925. template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentMaxOptions> {
  1926. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMaxOptions;
  1927. };
  1928. template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentMinOptions> {
  1929. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentMinOptions;
  1930. };
  1931. template<> struct BuiltinOptionsTraits<tflite::UnsortedSegmentSumOptions> {
  1932. static const BuiltinOptions enum_value = BuiltinOptions_UnsortedSegmentSumOptions;
  1933. };
  1934. template<> struct BuiltinOptionsTraits<tflite::ATan2Options> {
  1935. static const BuiltinOptions enum_value = BuiltinOptions_ATan2Options;
  1936. };
  1937. struct BuiltinOptionsUnion {
  1938. BuiltinOptions type;
  1939. void *value;
  1940. BuiltinOptionsUnion() : type(BuiltinOptions_NONE), value(nullptr) {}
  1941. BuiltinOptionsUnion(BuiltinOptionsUnion&& u) FLATBUFFERS_NOEXCEPT :
  1942. type(BuiltinOptions_NONE), value(nullptr)
  1943. { std::swap(type, u.type); std::swap(value, u.value); }
  1944. BuiltinOptionsUnion(const BuiltinOptionsUnion &);
  1945. BuiltinOptionsUnion &operator=(const BuiltinOptionsUnion &u)
  1946. { BuiltinOptionsUnion t(u); std::swap(type, t.type); std::swap(value, t.value); return *this; }
  1947. BuiltinOptionsUnion &operator=(BuiltinOptionsUnion &&u) FLATBUFFERS_NOEXCEPT
  1948. { std::swap(type, u.type); std::swap(value, u.value); return *this; }
  1949. ~BuiltinOptionsUnion() { Reset(); }
  1950. void Reset();
  1951. #ifndef FLATBUFFERS_CPP98_STL
  1952. template <typename T>
  1953. void Set(T&& val) {
  1954. using RT = typename std::remove_reference<T>::type;
  1955. Reset();
  1956. type = BuiltinOptionsTraits<typename RT::TableType>::enum_value;
  1957. if (type != BuiltinOptions_NONE) {
  1958. value = new RT(std::forward<T>(val));
  1959. }
  1960. }
  1961. #endif // FLATBUFFERS_CPP98_STL
  1962. static void *UnPack(const void *obj, BuiltinOptions type, const flatbuffers::resolver_function_t *resolver);
  1963. flatbuffers::Offset<void> Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher = nullptr) const;
  1964. tflite::Conv2DOptionsT *AsConv2DOptions() {
  1965. return type == BuiltinOptions_Conv2DOptions ?
  1966. reinterpret_cast<tflite::Conv2DOptionsT *>(value) : nullptr;
  1967. }
  1968. const tflite::Conv2DOptionsT *AsConv2DOptions() const {
  1969. return type == BuiltinOptions_Conv2DOptions ?
  1970. reinterpret_cast<const tflite::Conv2DOptionsT *>(value) : nullptr;
  1971. }
  1972. tflite::DepthwiseConv2DOptionsT *AsDepthwiseConv2DOptions() {
  1973. return type == BuiltinOptions_DepthwiseConv2DOptions ?
  1974. reinterpret_cast<tflite::DepthwiseConv2DOptionsT *>(value) : nullptr;
  1975. }
  1976. const tflite::DepthwiseConv2DOptionsT *AsDepthwiseConv2DOptions() const {
  1977. return type == BuiltinOptions_DepthwiseConv2DOptions ?
  1978. reinterpret_cast<const tflite::DepthwiseConv2DOptionsT *>(value) : nullptr;
  1979. }
  1980. tflite::ConcatEmbeddingsOptionsT *AsConcatEmbeddingsOptions() {
  1981. return type == BuiltinOptions_ConcatEmbeddingsOptions ?
  1982. reinterpret_cast<tflite::ConcatEmbeddingsOptionsT *>(value) : nullptr;
  1983. }
  1984. const tflite::ConcatEmbeddingsOptionsT *AsConcatEmbeddingsOptions() const {
  1985. return type == BuiltinOptions_ConcatEmbeddingsOptions ?
  1986. reinterpret_cast<const tflite::ConcatEmbeddingsOptionsT *>(value) : nullptr;
  1987. }
  1988. tflite::LSHProjectionOptionsT *AsLSHProjectionOptions() {
  1989. return type == BuiltinOptions_LSHProjectionOptions ?
  1990. reinterpret_cast<tflite::LSHProjectionOptionsT *>(value) : nullptr;
  1991. }
  1992. const tflite::LSHProjectionOptionsT *AsLSHProjectionOptions() const {
  1993. return type == BuiltinOptions_LSHProjectionOptions ?
  1994. reinterpret_cast<const tflite::LSHProjectionOptionsT *>(value) : nullptr;
  1995. }
  1996. tflite::Pool2DOptionsT *AsPool2DOptions() {
  1997. return type == BuiltinOptions_Pool2DOptions ?
  1998. reinterpret_cast<tflite::Pool2DOptionsT *>(value) : nullptr;
  1999. }
  2000. const tflite::Pool2DOptionsT *AsPool2DOptions() const {
  2001. return type == BuiltinOptions_Pool2DOptions ?
  2002. reinterpret_cast<const tflite::Pool2DOptionsT *>(value) : nullptr;
  2003. }
  2004. tflite::SVDFOptionsT *AsSVDFOptions() {
  2005. return type == BuiltinOptions_SVDFOptions ?
  2006. reinterpret_cast<tflite::SVDFOptionsT *>(value) : nullptr;
  2007. }
  2008. const tflite::SVDFOptionsT *AsSVDFOptions() const {
  2009. return type == BuiltinOptions_SVDFOptions ?
  2010. reinterpret_cast<const tflite::SVDFOptionsT *>(value) : nullptr;
  2011. }
  2012. tflite::RNNOptionsT *AsRNNOptions() {
  2013. return type == BuiltinOptions_RNNOptions ?
  2014. reinterpret_cast<tflite::RNNOptionsT *>(value) : nullptr;
  2015. }
  2016. const tflite::RNNOptionsT *AsRNNOptions() const {
  2017. return type == BuiltinOptions_RNNOptions ?
  2018. reinterpret_cast<const tflite::RNNOptionsT *>(value) : nullptr;
  2019. }
  2020. tflite::FullyConnectedOptionsT *AsFullyConnectedOptions() {
  2021. return type == BuiltinOptions_FullyConnectedOptions ?
  2022. reinterpret_cast<tflite::FullyConnectedOptionsT *>(value) : nullptr;
  2023. }
  2024. const tflite::FullyConnectedOptionsT *AsFullyConnectedOptions() const {
  2025. return type == BuiltinOptions_FullyConnectedOptions ?
  2026. reinterpret_cast<const tflite::FullyConnectedOptionsT *>(value) : nullptr;
  2027. }
  2028. tflite::SoftmaxOptionsT *AsSoftmaxOptions() {
  2029. return type == BuiltinOptions_SoftmaxOptions ?
  2030. reinterpret_cast<tflite::SoftmaxOptionsT *>(value) : nullptr;
  2031. }
  2032. const tflite::SoftmaxOptionsT *AsSoftmaxOptions() const {
  2033. return type == BuiltinOptions_SoftmaxOptions ?
  2034. reinterpret_cast<const tflite::SoftmaxOptionsT *>(value) : nullptr;
  2035. }
  2036. tflite::ConcatenationOptionsT *AsConcatenationOptions() {
  2037. return type == BuiltinOptions_ConcatenationOptions ?
  2038. reinterpret_cast<tflite::ConcatenationOptionsT *>(value) : nullptr;
  2039. }
  2040. const tflite::ConcatenationOptionsT *AsConcatenationOptions() const {
  2041. return type == BuiltinOptions_ConcatenationOptions ?
  2042. reinterpret_cast<const tflite::ConcatenationOptionsT *>(value) : nullptr;
  2043. }
  2044. tflite::AddOptionsT *AsAddOptions() {
  2045. return type == BuiltinOptions_AddOptions ?
  2046. reinterpret_cast<tflite::AddOptionsT *>(value) : nullptr;
  2047. }
  2048. const tflite::AddOptionsT *AsAddOptions() const {
  2049. return type == BuiltinOptions_AddOptions ?
  2050. reinterpret_cast<const tflite::AddOptionsT *>(value) : nullptr;
  2051. }
  2052. tflite::L2NormOptionsT *AsL2NormOptions() {
  2053. return type == BuiltinOptions_L2NormOptions ?
  2054. reinterpret_cast<tflite::L2NormOptionsT *>(value) : nullptr;
  2055. }
  2056. const tflite::L2NormOptionsT *AsL2NormOptions() const {
  2057. return type == BuiltinOptions_L2NormOptions ?
  2058. reinterpret_cast<const tflite::L2NormOptionsT *>(value) : nullptr;
  2059. }
  2060. tflite::LocalResponseNormalizationOptionsT *AsLocalResponseNormalizationOptions() {
  2061. return type == BuiltinOptions_LocalResponseNormalizationOptions ?
  2062. reinterpret_cast<tflite::LocalResponseNormalizationOptionsT *>(value) : nullptr;
  2063. }
  2064. const tflite::LocalResponseNormalizationOptionsT *AsLocalResponseNormalizationOptions() const {
  2065. return type == BuiltinOptions_LocalResponseNormalizationOptions ?
  2066. reinterpret_cast<const tflite::LocalResponseNormalizationOptionsT *>(value) : nullptr;
  2067. }
  2068. tflite::LSTMOptionsT *AsLSTMOptions() {
  2069. return type == BuiltinOptions_LSTMOptions ?
  2070. reinterpret_cast<tflite::LSTMOptionsT *>(value) : nullptr;
  2071. }
  2072. const tflite::LSTMOptionsT *AsLSTMOptions() const {
  2073. return type == BuiltinOptions_LSTMOptions ?
  2074. reinterpret_cast<const tflite::LSTMOptionsT *>(value) : nullptr;
  2075. }
  2076. tflite::ResizeBilinearOptionsT *AsResizeBilinearOptions() {
  2077. return type == BuiltinOptions_ResizeBilinearOptions ?
  2078. reinterpret_cast<tflite::ResizeBilinearOptionsT *>(value) : nullptr;
  2079. }
  2080. const tflite::ResizeBilinearOptionsT *AsResizeBilinearOptions() const {
  2081. return type == BuiltinOptions_ResizeBilinearOptions ?
  2082. reinterpret_cast<const tflite::ResizeBilinearOptionsT *>(value) : nullptr;
  2083. }
  2084. tflite::CallOptionsT *AsCallOptions() {
  2085. return type == BuiltinOptions_CallOptions ?
  2086. reinterpret_cast<tflite::CallOptionsT *>(value) : nullptr;
  2087. }
  2088. const tflite::CallOptionsT *AsCallOptions() const {
  2089. return type == BuiltinOptions_CallOptions ?
  2090. reinterpret_cast<const tflite::CallOptionsT *>(value) : nullptr;
  2091. }
  2092. tflite::ReshapeOptionsT *AsReshapeOptions() {
  2093. return type == BuiltinOptions_ReshapeOptions ?
  2094. reinterpret_cast<tflite::ReshapeOptionsT *>(value) : nullptr;
  2095. }
  2096. const tflite::ReshapeOptionsT *AsReshapeOptions() const {
  2097. return type == BuiltinOptions_ReshapeOptions ?
  2098. reinterpret_cast<const tflite::ReshapeOptionsT *>(value) : nullptr;
  2099. }
  2100. tflite::SkipGramOptionsT *AsSkipGramOptions() {
  2101. return type == BuiltinOptions_SkipGramOptions ?
  2102. reinterpret_cast<tflite::SkipGramOptionsT *>(value) : nullptr;
  2103. }
  2104. const tflite::SkipGramOptionsT *AsSkipGramOptions() const {
  2105. return type == BuiltinOptions_SkipGramOptions ?
  2106. reinterpret_cast<const tflite::SkipGramOptionsT *>(value) : nullptr;
  2107. }
  2108. tflite::SpaceToDepthOptionsT *AsSpaceToDepthOptions() {
  2109. return type == BuiltinOptions_SpaceToDepthOptions ?
  2110. reinterpret_cast<tflite::SpaceToDepthOptionsT *>(value) : nullptr;
  2111. }
  2112. const tflite::SpaceToDepthOptionsT *AsSpaceToDepthOptions() const {
  2113. return type == BuiltinOptions_SpaceToDepthOptions ?
  2114. reinterpret_cast<const tflite::SpaceToDepthOptionsT *>(value) : nullptr;
  2115. }
  2116. tflite::EmbeddingLookupSparseOptionsT *AsEmbeddingLookupSparseOptions() {
  2117. return type == BuiltinOptions_EmbeddingLookupSparseOptions ?
  2118. reinterpret_cast<tflite::EmbeddingLookupSparseOptionsT *>(value) : nullptr;
  2119. }
  2120. const tflite::EmbeddingLookupSparseOptionsT *AsEmbeddingLookupSparseOptions() const {
  2121. return type == BuiltinOptions_EmbeddingLookupSparseOptions ?
  2122. reinterpret_cast<const tflite::EmbeddingLookupSparseOptionsT *>(value) : nullptr;
  2123. }
  2124. tflite::MulOptionsT *AsMulOptions() {
  2125. return type == BuiltinOptions_MulOptions ?
  2126. reinterpret_cast<tflite::MulOptionsT *>(value) : nullptr;
  2127. }
  2128. const tflite::MulOptionsT *AsMulOptions() const {
  2129. return type == BuiltinOptions_MulOptions ?
  2130. reinterpret_cast<const tflite::MulOptionsT *>(value) : nullptr;
  2131. }
  2132. tflite::PadOptionsT *AsPadOptions() {
  2133. return type == BuiltinOptions_PadOptions ?
  2134. reinterpret_cast<tflite::PadOptionsT *>(value) : nullptr;
  2135. }
  2136. const tflite::PadOptionsT *AsPadOptions() const {
  2137. return type == BuiltinOptions_PadOptions ?
  2138. reinterpret_cast<const tflite::PadOptionsT *>(value) : nullptr;
  2139. }
  2140. tflite::GatherOptionsT *AsGatherOptions() {
  2141. return type == BuiltinOptions_GatherOptions ?
  2142. reinterpret_cast<tflite::GatherOptionsT *>(value) : nullptr;
  2143. }
  2144. const tflite::GatherOptionsT *AsGatherOptions() const {
  2145. return type == BuiltinOptions_GatherOptions ?
  2146. reinterpret_cast<const tflite::GatherOptionsT *>(value) : nullptr;
  2147. }
  2148. tflite::BatchToSpaceNDOptionsT *AsBatchToSpaceNDOptions() {
  2149. return type == BuiltinOptions_BatchToSpaceNDOptions ?
  2150. reinterpret_cast<tflite::BatchToSpaceNDOptionsT *>(value) : nullptr;
  2151. }
  2152. const tflite::BatchToSpaceNDOptionsT *AsBatchToSpaceNDOptions() const {
  2153. return type == BuiltinOptions_BatchToSpaceNDOptions ?
  2154. reinterpret_cast<const tflite::BatchToSpaceNDOptionsT *>(value) : nullptr;
  2155. }
  2156. tflite::SpaceToBatchNDOptionsT *AsSpaceToBatchNDOptions() {
  2157. return type == BuiltinOptions_SpaceToBatchNDOptions ?
  2158. reinterpret_cast<tflite::SpaceToBatchNDOptionsT *>(value) : nullptr;
  2159. }
  2160. const tflite::SpaceToBatchNDOptionsT *AsSpaceToBatchNDOptions() const {
  2161. return type == BuiltinOptions_SpaceToBatchNDOptions ?
  2162. reinterpret_cast<const tflite::SpaceToBatchNDOptionsT *>(value) : nullptr;
  2163. }
  2164. tflite::TransposeOptionsT *AsTransposeOptions() {
  2165. return type == BuiltinOptions_TransposeOptions ?
  2166. reinterpret_cast<tflite::TransposeOptionsT *>(value) : nullptr;
  2167. }
  2168. const tflite::TransposeOptionsT *AsTransposeOptions() const {
  2169. return type == BuiltinOptions_TransposeOptions ?
  2170. reinterpret_cast<const tflite::TransposeOptionsT *>(value) : nullptr;
  2171. }
  2172. tflite::ReducerOptionsT *AsReducerOptions() {
  2173. return type == BuiltinOptions_ReducerOptions ?
  2174. reinterpret_cast<tflite::ReducerOptionsT *>(value) : nullptr;
  2175. }
  2176. const tflite::ReducerOptionsT *AsReducerOptions() const {
  2177. return type == BuiltinOptions_ReducerOptions ?
  2178. reinterpret_cast<const tflite::ReducerOptionsT *>(value) : nullptr;
  2179. }
  2180. tflite::SubOptionsT *AsSubOptions() {
  2181. return type == BuiltinOptions_SubOptions ?
  2182. reinterpret_cast<tflite::SubOptionsT *>(value) : nullptr;
  2183. }
  2184. const tflite::SubOptionsT *AsSubOptions() const {
  2185. return type == BuiltinOptions_SubOptions ?
  2186. reinterpret_cast<const tflite::SubOptionsT *>(value) : nullptr;
  2187. }
  2188. tflite::DivOptionsT *AsDivOptions() {
  2189. return type == BuiltinOptions_DivOptions ?
  2190. reinterpret_cast<tflite::DivOptionsT *>(value) : nullptr;
  2191. }
  2192. const tflite::DivOptionsT *AsDivOptions() const {
  2193. return type == BuiltinOptions_DivOptions ?
  2194. reinterpret_cast<const tflite::DivOptionsT *>(value) : nullptr;
  2195. }
  2196. tflite::SqueezeOptionsT *AsSqueezeOptions() {
  2197. return type == BuiltinOptions_SqueezeOptions ?
  2198. reinterpret_cast<tflite::SqueezeOptionsT *>(value) : nullptr;
  2199. }
  2200. const tflite::SqueezeOptionsT *AsSqueezeOptions() const {
  2201. return type == BuiltinOptions_SqueezeOptions ?
  2202. reinterpret_cast<const tflite::SqueezeOptionsT *>(value) : nullptr;
  2203. }
  2204. tflite::SequenceRNNOptionsT *AsSequenceRNNOptions() {
  2205. return type == BuiltinOptions_SequenceRNNOptions ?
  2206. reinterpret_cast<tflite::SequenceRNNOptionsT *>(value) : nullptr;
  2207. }
  2208. const tflite::SequenceRNNOptionsT *AsSequenceRNNOptions() const {
  2209. return type == BuiltinOptions_SequenceRNNOptions ?
  2210. reinterpret_cast<const tflite::SequenceRNNOptionsT *>(value) : nullptr;
  2211. }
  2212. tflite::StridedSliceOptionsT *AsStridedSliceOptions() {
  2213. return type == BuiltinOptions_StridedSliceOptions ?
  2214. reinterpret_cast<tflite::StridedSliceOptionsT *>(value) : nullptr;
  2215. }
  2216. const tflite::StridedSliceOptionsT *AsStridedSliceOptions() const {
  2217. return type == BuiltinOptions_StridedSliceOptions ?
  2218. reinterpret_cast<const tflite::StridedSliceOptionsT *>(value) : nullptr;
  2219. }
  2220. tflite::ExpOptionsT *AsExpOptions() {
  2221. return type == BuiltinOptions_ExpOptions ?
  2222. reinterpret_cast<tflite::ExpOptionsT *>(value) : nullptr;
  2223. }
  2224. const tflite::ExpOptionsT *AsExpOptions() const {
  2225. return type == BuiltinOptions_ExpOptions ?
  2226. reinterpret_cast<const tflite::ExpOptionsT *>(value) : nullptr;
  2227. }
  2228. tflite::TopKV2OptionsT *AsTopKV2Options() {
  2229. return type == BuiltinOptions_TopKV2Options ?
  2230. reinterpret_cast<tflite::TopKV2OptionsT *>(value) : nullptr;
  2231. }
  2232. const tflite::TopKV2OptionsT *AsTopKV2Options() const {
  2233. return type == BuiltinOptions_TopKV2Options ?
  2234. reinterpret_cast<const tflite::TopKV2OptionsT *>(value) : nullptr;
  2235. }
  2236. tflite::SplitOptionsT *AsSplitOptions() {
  2237. return type == BuiltinOptions_SplitOptions ?
  2238. reinterpret_cast<tflite::SplitOptionsT *>(value) : nullptr;
  2239. }
  2240. const tflite::SplitOptionsT *AsSplitOptions() const {
  2241. return type == BuiltinOptions_SplitOptions ?
  2242. reinterpret_cast<const tflite::SplitOptionsT *>(value) : nullptr;
  2243. }
  2244. tflite::LogSoftmaxOptionsT *AsLogSoftmaxOptions() {
  2245. return type == BuiltinOptions_LogSoftmaxOptions ?
  2246. reinterpret_cast<tflite::LogSoftmaxOptionsT *>(value) : nullptr;
  2247. }
  2248. const tflite::LogSoftmaxOptionsT *AsLogSoftmaxOptions() const {
  2249. return type == BuiltinOptions_LogSoftmaxOptions ?
  2250. reinterpret_cast<const tflite::LogSoftmaxOptionsT *>(value) : nullptr;
  2251. }
  2252. tflite::CastOptionsT *AsCastOptions() {
  2253. return type == BuiltinOptions_CastOptions ?
  2254. reinterpret_cast<tflite::CastOptionsT *>(value) : nullptr;
  2255. }
  2256. const tflite::CastOptionsT *AsCastOptions() const {
  2257. return type == BuiltinOptions_CastOptions ?
  2258. reinterpret_cast<const tflite::CastOptionsT *>(value) : nullptr;
  2259. }
  2260. tflite::DequantizeOptionsT *AsDequantizeOptions() {
  2261. return type == BuiltinOptions_DequantizeOptions ?
  2262. reinterpret_cast<tflite::DequantizeOptionsT *>(value) : nullptr;
  2263. }
  2264. const tflite::DequantizeOptionsT *AsDequantizeOptions() const {
  2265. return type == BuiltinOptions_DequantizeOptions ?
  2266. reinterpret_cast<const tflite::DequantizeOptionsT *>(value) : nullptr;
  2267. }
  2268. tflite::MaximumMinimumOptionsT *AsMaximumMinimumOptions() {
  2269. return type == BuiltinOptions_MaximumMinimumOptions ?
  2270. reinterpret_cast<tflite::MaximumMinimumOptionsT *>(value) : nullptr;
  2271. }
  2272. const tflite::MaximumMinimumOptionsT *AsMaximumMinimumOptions() const {
  2273. return type == BuiltinOptions_MaximumMinimumOptions ?
  2274. reinterpret_cast<const tflite::MaximumMinimumOptionsT *>(value) : nullptr;
  2275. }
  2276. tflite::ArgMaxOptionsT *AsArgMaxOptions() {
  2277. return type == BuiltinOptions_ArgMaxOptions ?
  2278. reinterpret_cast<tflite::ArgMaxOptionsT *>(value) : nullptr;
  2279. }
  2280. const tflite::ArgMaxOptionsT *AsArgMaxOptions() const {
  2281. return type == BuiltinOptions_ArgMaxOptions ?
  2282. reinterpret_cast<const tflite::ArgMaxOptionsT *>(value) : nullptr;
  2283. }
  2284. tflite::LessOptionsT *AsLessOptions() {
  2285. return type == BuiltinOptions_LessOptions ?
  2286. reinterpret_cast<tflite::LessOptionsT *>(value) : nullptr;
  2287. }
  2288. const tflite::LessOptionsT *AsLessOptions() const {
  2289. return type == BuiltinOptions_LessOptions ?
  2290. reinterpret_cast<const tflite::LessOptionsT *>(value) : nullptr;
  2291. }
  2292. tflite::NegOptionsT *AsNegOptions() {
  2293. return type == BuiltinOptions_NegOptions ?
  2294. reinterpret_cast<tflite::NegOptionsT *>(value) : nullptr;
  2295. }
  2296. const tflite::NegOptionsT *AsNegOptions() const {
  2297. return type == BuiltinOptions_NegOptions ?
  2298. reinterpret_cast<const tflite::NegOptionsT *>(value) : nullptr;
  2299. }
  2300. tflite::PadV2OptionsT *AsPadV2Options() {
  2301. return type == BuiltinOptions_PadV2Options ?
  2302. reinterpret_cast<tflite::PadV2OptionsT *>(value) : nullptr;
  2303. }
  2304. const tflite::PadV2OptionsT *AsPadV2Options() const {
  2305. return type == BuiltinOptions_PadV2Options ?
  2306. reinterpret_cast<const tflite::PadV2OptionsT *>(value) : nullptr;
  2307. }
  2308. tflite::GreaterOptionsT *AsGreaterOptions() {
  2309. return type == BuiltinOptions_GreaterOptions ?
  2310. reinterpret_cast<tflite::GreaterOptionsT *>(value) : nullptr;
  2311. }
  2312. const tflite::GreaterOptionsT *AsGreaterOptions() const {
  2313. return type == BuiltinOptions_GreaterOptions ?
  2314. reinterpret_cast<const tflite::GreaterOptionsT *>(value) : nullptr;
  2315. }
  2316. tflite::GreaterEqualOptionsT *AsGreaterEqualOptions() {
  2317. return type == BuiltinOptions_GreaterEqualOptions ?
  2318. reinterpret_cast<tflite::GreaterEqualOptionsT *>(value) : nullptr;
  2319. }
  2320. const tflite::GreaterEqualOptionsT *AsGreaterEqualOptions() const {
  2321. return type == BuiltinOptions_GreaterEqualOptions ?
  2322. reinterpret_cast<const tflite::GreaterEqualOptionsT *>(value) : nullptr;
  2323. }
  2324. tflite::LessEqualOptionsT *AsLessEqualOptions() {
  2325. return type == BuiltinOptions_LessEqualOptions ?
  2326. reinterpret_cast<tflite::LessEqualOptionsT *>(value) : nullptr;
  2327. }
  2328. const tflite::LessEqualOptionsT *AsLessEqualOptions() const {
  2329. return type == BuiltinOptions_LessEqualOptions ?
  2330. reinterpret_cast<const tflite::LessEqualOptionsT *>(value) : nullptr;
  2331. }
  2332. tflite::SelectOptionsT *AsSelectOptions() {
  2333. return type == BuiltinOptions_SelectOptions ?
  2334. reinterpret_cast<tflite::SelectOptionsT *>(value) : nullptr;
  2335. }
  2336. const tflite::SelectOptionsT *AsSelectOptions() const {
  2337. return type == BuiltinOptions_SelectOptions ?
  2338. reinterpret_cast<const tflite::SelectOptionsT *>(value) : nullptr;
  2339. }
  2340. tflite::SliceOptionsT *AsSliceOptions() {
  2341. return type == BuiltinOptions_SliceOptions ?
  2342. reinterpret_cast<tflite::SliceOptionsT *>(value) : nullptr;
  2343. }
  2344. const tflite::SliceOptionsT *AsSliceOptions() const {
  2345. return type == BuiltinOptions_SliceOptions ?
  2346. reinterpret_cast<const tflite::SliceOptionsT *>(value) : nullptr;
  2347. }
  2348. tflite::TransposeConvOptionsT *AsTransposeConvOptions() {
  2349. return type == BuiltinOptions_TransposeConvOptions ?
  2350. reinterpret_cast<tflite::TransposeConvOptionsT *>(value) : nullptr;
  2351. }
  2352. const tflite::TransposeConvOptionsT *AsTransposeConvOptions() const {
  2353. return type == BuiltinOptions_TransposeConvOptions ?
  2354. reinterpret_cast<const tflite::TransposeConvOptionsT *>(value) : nullptr;
  2355. }
  2356. tflite::SparseToDenseOptionsT *AsSparseToDenseOptions() {
  2357. return type == BuiltinOptions_SparseToDenseOptions ?
  2358. reinterpret_cast<tflite::SparseToDenseOptionsT *>(value) : nullptr;
  2359. }
  2360. const tflite::SparseToDenseOptionsT *AsSparseToDenseOptions() const {
  2361. return type == BuiltinOptions_SparseToDenseOptions ?
  2362. reinterpret_cast<const tflite::SparseToDenseOptionsT *>(value) : nullptr;
  2363. }
  2364. tflite::TileOptionsT *AsTileOptions() {
  2365. return type == BuiltinOptions_TileOptions ?
  2366. reinterpret_cast<tflite::TileOptionsT *>(value) : nullptr;
  2367. }
  2368. const tflite::TileOptionsT *AsTileOptions() const {
  2369. return type == BuiltinOptions_TileOptions ?
  2370. reinterpret_cast<const tflite::TileOptionsT *>(value) : nullptr;
  2371. }
  2372. tflite::ExpandDimsOptionsT *AsExpandDimsOptions() {
  2373. return type == BuiltinOptions_ExpandDimsOptions ?
  2374. reinterpret_cast<tflite::ExpandDimsOptionsT *>(value) : nullptr;
  2375. }
  2376. const tflite::ExpandDimsOptionsT *AsExpandDimsOptions() const {
  2377. return type == BuiltinOptions_ExpandDimsOptions ?
  2378. reinterpret_cast<const tflite::ExpandDimsOptionsT *>(value) : nullptr;
  2379. }
  2380. tflite::EqualOptionsT *AsEqualOptions() {
  2381. return type == BuiltinOptions_EqualOptions ?
  2382. reinterpret_cast<tflite::EqualOptionsT *>(value) : nullptr;
  2383. }
  2384. const tflite::EqualOptionsT *AsEqualOptions() const {
  2385. return type == BuiltinOptions_EqualOptions ?
  2386. reinterpret_cast<const tflite::EqualOptionsT *>(value) : nullptr;
  2387. }
  2388. tflite::NotEqualOptionsT *AsNotEqualOptions() {
  2389. return type == BuiltinOptions_NotEqualOptions ?
  2390. reinterpret_cast<tflite::NotEqualOptionsT *>(value) : nullptr;
  2391. }
  2392. const tflite::NotEqualOptionsT *AsNotEqualOptions() const {
  2393. return type == BuiltinOptions_NotEqualOptions ?
  2394. reinterpret_cast<const tflite::NotEqualOptionsT *>(value) : nullptr;
  2395. }
  2396. tflite::ShapeOptionsT *AsShapeOptions() {
  2397. return type == BuiltinOptions_ShapeOptions ?
  2398. reinterpret_cast<tflite::ShapeOptionsT *>(value) : nullptr;
  2399. }
  2400. const tflite::ShapeOptionsT *AsShapeOptions() const {
  2401. return type == BuiltinOptions_ShapeOptions ?
  2402. reinterpret_cast<const tflite::ShapeOptionsT *>(value) : nullptr;
  2403. }
  2404. tflite::PowOptionsT *AsPowOptions() {
  2405. return type == BuiltinOptions_PowOptions ?
  2406. reinterpret_cast<tflite::PowOptionsT *>(value) : nullptr;
  2407. }
  2408. const tflite::PowOptionsT *AsPowOptions() const {
  2409. return type == BuiltinOptions_PowOptions ?
  2410. reinterpret_cast<const tflite::PowOptionsT *>(value) : nullptr;
  2411. }
  2412. tflite::ArgMinOptionsT *AsArgMinOptions() {
  2413. return type == BuiltinOptions_ArgMinOptions ?
  2414. reinterpret_cast<tflite::ArgMinOptionsT *>(value) : nullptr;
  2415. }
  2416. const tflite::ArgMinOptionsT *AsArgMinOptions() const {
  2417. return type == BuiltinOptions_ArgMinOptions ?
  2418. reinterpret_cast<const tflite::ArgMinOptionsT *>(value) : nullptr;
  2419. }
  2420. tflite::FakeQuantOptionsT *AsFakeQuantOptions() {
  2421. return type == BuiltinOptions_FakeQuantOptions ?
  2422. reinterpret_cast<tflite::FakeQuantOptionsT *>(value) : nullptr;
  2423. }
  2424. const tflite::FakeQuantOptionsT *AsFakeQuantOptions() const {
  2425. return type == BuiltinOptions_FakeQuantOptions ?
  2426. reinterpret_cast<const tflite::FakeQuantOptionsT *>(value) : nullptr;
  2427. }
  2428. tflite::PackOptionsT *AsPackOptions() {
  2429. return type == BuiltinOptions_PackOptions ?
  2430. reinterpret_cast<tflite::PackOptionsT *>(value) : nullptr;
  2431. }
  2432. const tflite::PackOptionsT *AsPackOptions() const {
  2433. return type == BuiltinOptions_PackOptions ?
  2434. reinterpret_cast<const tflite::PackOptionsT *>(value) : nullptr;
  2435. }
  2436. tflite::LogicalOrOptionsT *AsLogicalOrOptions() {
  2437. return type == BuiltinOptions_LogicalOrOptions ?
  2438. reinterpret_cast<tflite::LogicalOrOptionsT *>(value) : nullptr;
  2439. }
  2440. const tflite::LogicalOrOptionsT *AsLogicalOrOptions() const {
  2441. return type == BuiltinOptions_LogicalOrOptions ?
  2442. reinterpret_cast<const tflite::LogicalOrOptionsT *>(value) : nullptr;
  2443. }
  2444. tflite::OneHotOptionsT *AsOneHotOptions() {
  2445. return type == BuiltinOptions_OneHotOptions ?
  2446. reinterpret_cast<tflite::OneHotOptionsT *>(value) : nullptr;
  2447. }
  2448. const tflite::OneHotOptionsT *AsOneHotOptions() const {
  2449. return type == BuiltinOptions_OneHotOptions ?
  2450. reinterpret_cast<const tflite::OneHotOptionsT *>(value) : nullptr;
  2451. }
  2452. tflite::LogicalAndOptionsT *AsLogicalAndOptions() {
  2453. return type == BuiltinOptions_LogicalAndOptions ?
  2454. reinterpret_cast<tflite::LogicalAndOptionsT *>(value) : nullptr;
  2455. }
  2456. const tflite::LogicalAndOptionsT *AsLogicalAndOptions() const {
  2457. return type == BuiltinOptions_LogicalAndOptions ?
  2458. reinterpret_cast<const tflite::LogicalAndOptionsT *>(value) : nullptr;
  2459. }
  2460. tflite::LogicalNotOptionsT *AsLogicalNotOptions() {
  2461. return type == BuiltinOptions_LogicalNotOptions ?
  2462. reinterpret_cast<tflite::LogicalNotOptionsT *>(value) : nullptr;
  2463. }
  2464. const tflite::LogicalNotOptionsT *AsLogicalNotOptions() const {
  2465. return type == BuiltinOptions_LogicalNotOptions ?
  2466. reinterpret_cast<const tflite::LogicalNotOptionsT *>(value) : nullptr;
  2467. }
  2468. tflite::UnpackOptionsT *AsUnpackOptions() {
  2469. return type == BuiltinOptions_UnpackOptions ?
  2470. reinterpret_cast<tflite::UnpackOptionsT *>(value) : nullptr;
  2471. }
  2472. const tflite::UnpackOptionsT *AsUnpackOptions() const {
  2473. return type == BuiltinOptions_UnpackOptions ?
  2474. reinterpret_cast<const tflite::UnpackOptionsT *>(value) : nullptr;
  2475. }
  2476. tflite::FloorDivOptionsT *AsFloorDivOptions() {
  2477. return type == BuiltinOptions_FloorDivOptions ?
  2478. reinterpret_cast<tflite::FloorDivOptionsT *>(value) : nullptr;
  2479. }
  2480. const tflite::FloorDivOptionsT *AsFloorDivOptions() const {
  2481. return type == BuiltinOptions_FloorDivOptions ?
  2482. reinterpret_cast<const tflite::FloorDivOptionsT *>(value) : nullptr;
  2483. }
  2484. tflite::SquareOptionsT *AsSquareOptions() {
  2485. return type == BuiltinOptions_SquareOptions ?
  2486. reinterpret_cast<tflite::SquareOptionsT *>(value) : nullptr;
  2487. }
  2488. const tflite::SquareOptionsT *AsSquareOptions() const {
  2489. return type == BuiltinOptions_SquareOptions ?
  2490. reinterpret_cast<const tflite::SquareOptionsT *>(value) : nullptr;
  2491. }
  2492. tflite::ZerosLikeOptionsT *AsZerosLikeOptions() {
  2493. return type == BuiltinOptions_ZerosLikeOptions ?
  2494. reinterpret_cast<tflite::ZerosLikeOptionsT *>(value) : nullptr;
  2495. }
  2496. const tflite::ZerosLikeOptionsT *AsZerosLikeOptions() const {
  2497. return type == BuiltinOptions_ZerosLikeOptions ?
  2498. reinterpret_cast<const tflite::ZerosLikeOptionsT *>(value) : nullptr;
  2499. }
  2500. tflite::FillOptionsT *AsFillOptions() {
  2501. return type == BuiltinOptions_FillOptions ?
  2502. reinterpret_cast<tflite::FillOptionsT *>(value) : nullptr;
  2503. }
  2504. const tflite::FillOptionsT *AsFillOptions() const {
  2505. return type == BuiltinOptions_FillOptions ?
  2506. reinterpret_cast<const tflite::FillOptionsT *>(value) : nullptr;
  2507. }
  2508. tflite::BidirectionalSequenceLSTMOptionsT *AsBidirectionalSequenceLSTMOptions() {
  2509. return type == BuiltinOptions_BidirectionalSequenceLSTMOptions ?
  2510. reinterpret_cast<tflite::BidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
  2511. }
  2512. const tflite::BidirectionalSequenceLSTMOptionsT *AsBidirectionalSequenceLSTMOptions() const {
  2513. return type == BuiltinOptions_BidirectionalSequenceLSTMOptions ?
  2514. reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
  2515. }
  2516. tflite::BidirectionalSequenceRNNOptionsT *AsBidirectionalSequenceRNNOptions() {
  2517. return type == BuiltinOptions_BidirectionalSequenceRNNOptions ?
  2518. reinterpret_cast<tflite::BidirectionalSequenceRNNOptionsT *>(value) : nullptr;
  2519. }
  2520. const tflite::BidirectionalSequenceRNNOptionsT *AsBidirectionalSequenceRNNOptions() const {
  2521. return type == BuiltinOptions_BidirectionalSequenceRNNOptions ?
  2522. reinterpret_cast<const tflite::BidirectionalSequenceRNNOptionsT *>(value) : nullptr;
  2523. }
  2524. tflite::UnidirectionalSequenceLSTMOptionsT *AsUnidirectionalSequenceLSTMOptions() {
  2525. return type == BuiltinOptions_UnidirectionalSequenceLSTMOptions ?
  2526. reinterpret_cast<tflite::UnidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
  2527. }
  2528. const tflite::UnidirectionalSequenceLSTMOptionsT *AsUnidirectionalSequenceLSTMOptions() const {
  2529. return type == BuiltinOptions_UnidirectionalSequenceLSTMOptions ?
  2530. reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptionsT *>(value) : nullptr;
  2531. }
  2532. tflite::FloorModOptionsT *AsFloorModOptions() {
  2533. return type == BuiltinOptions_FloorModOptions ?
  2534. reinterpret_cast<tflite::FloorModOptionsT *>(value) : nullptr;
  2535. }
  2536. const tflite::FloorModOptionsT *AsFloorModOptions() const {
  2537. return type == BuiltinOptions_FloorModOptions ?
  2538. reinterpret_cast<const tflite::FloorModOptionsT *>(value) : nullptr;
  2539. }
  2540. tflite::RangeOptionsT *AsRangeOptions() {
  2541. return type == BuiltinOptions_RangeOptions ?
  2542. reinterpret_cast<tflite::RangeOptionsT *>(value) : nullptr;
  2543. }
  2544. const tflite::RangeOptionsT *AsRangeOptions() const {
  2545. return type == BuiltinOptions_RangeOptions ?
  2546. reinterpret_cast<const tflite::RangeOptionsT *>(value) : nullptr;
  2547. }
  2548. tflite::ResizeNearestNeighborOptionsT *AsResizeNearestNeighborOptions() {
  2549. return type == BuiltinOptions_ResizeNearestNeighborOptions ?
  2550. reinterpret_cast<tflite::ResizeNearestNeighborOptionsT *>(value) : nullptr;
  2551. }
  2552. const tflite::ResizeNearestNeighborOptionsT *AsResizeNearestNeighborOptions() const {
  2553. return type == BuiltinOptions_ResizeNearestNeighborOptions ?
  2554. reinterpret_cast<const tflite::ResizeNearestNeighborOptionsT *>(value) : nullptr;
  2555. }
  2556. tflite::LeakyReluOptionsT *AsLeakyReluOptions() {
  2557. return type == BuiltinOptions_LeakyReluOptions ?
  2558. reinterpret_cast<tflite::LeakyReluOptionsT *>(value) : nullptr;
  2559. }
  2560. const tflite::LeakyReluOptionsT *AsLeakyReluOptions() const {
  2561. return type == BuiltinOptions_LeakyReluOptions ?
  2562. reinterpret_cast<const tflite::LeakyReluOptionsT *>(value) : nullptr;
  2563. }
  2564. tflite::SquaredDifferenceOptionsT *AsSquaredDifferenceOptions() {
  2565. return type == BuiltinOptions_SquaredDifferenceOptions ?
  2566. reinterpret_cast<tflite::SquaredDifferenceOptionsT *>(value) : nullptr;
  2567. }
  2568. const tflite::SquaredDifferenceOptionsT *AsSquaredDifferenceOptions() const {
  2569. return type == BuiltinOptions_SquaredDifferenceOptions ?
  2570. reinterpret_cast<const tflite::SquaredDifferenceOptionsT *>(value) : nullptr;
  2571. }
  2572. tflite::MirrorPadOptionsT *AsMirrorPadOptions() {
  2573. return type == BuiltinOptions_MirrorPadOptions ?
  2574. reinterpret_cast<tflite::MirrorPadOptionsT *>(value) : nullptr;
  2575. }
  2576. const tflite::MirrorPadOptionsT *AsMirrorPadOptions() const {
  2577. return type == BuiltinOptions_MirrorPadOptions ?
  2578. reinterpret_cast<const tflite::MirrorPadOptionsT *>(value) : nullptr;
  2579. }
  2580. tflite::AbsOptionsT *AsAbsOptions() {
  2581. return type == BuiltinOptions_AbsOptions ?
  2582. reinterpret_cast<tflite::AbsOptionsT *>(value) : nullptr;
  2583. }
  2584. const tflite::AbsOptionsT *AsAbsOptions() const {
  2585. return type == BuiltinOptions_AbsOptions ?
  2586. reinterpret_cast<const tflite::AbsOptionsT *>(value) : nullptr;
  2587. }
  2588. tflite::SplitVOptionsT *AsSplitVOptions() {
  2589. return type == BuiltinOptions_SplitVOptions ?
  2590. reinterpret_cast<tflite::SplitVOptionsT *>(value) : nullptr;
  2591. }
  2592. const tflite::SplitVOptionsT *AsSplitVOptions() const {
  2593. return type == BuiltinOptions_SplitVOptions ?
  2594. reinterpret_cast<const tflite::SplitVOptionsT *>(value) : nullptr;
  2595. }
  2596. tflite::UniqueOptionsT *AsUniqueOptions() {
  2597. return type == BuiltinOptions_UniqueOptions ?
  2598. reinterpret_cast<tflite::UniqueOptionsT *>(value) : nullptr;
  2599. }
  2600. const tflite::UniqueOptionsT *AsUniqueOptions() const {
  2601. return type == BuiltinOptions_UniqueOptions ?
  2602. reinterpret_cast<const tflite::UniqueOptionsT *>(value) : nullptr;
  2603. }
  2604. tflite::ReverseV2OptionsT *AsReverseV2Options() {
  2605. return type == BuiltinOptions_ReverseV2Options ?
  2606. reinterpret_cast<tflite::ReverseV2OptionsT *>(value) : nullptr;
  2607. }
  2608. const tflite::ReverseV2OptionsT *AsReverseV2Options() const {
  2609. return type == BuiltinOptions_ReverseV2Options ?
  2610. reinterpret_cast<const tflite::ReverseV2OptionsT *>(value) : nullptr;
  2611. }
  2612. tflite::AddNOptionsT *AsAddNOptions() {
  2613. return type == BuiltinOptions_AddNOptions ?
  2614. reinterpret_cast<tflite::AddNOptionsT *>(value) : nullptr;
  2615. }
  2616. const tflite::AddNOptionsT *AsAddNOptions() const {
  2617. return type == BuiltinOptions_AddNOptions ?
  2618. reinterpret_cast<const tflite::AddNOptionsT *>(value) : nullptr;
  2619. }
  2620. tflite::GatherNdOptionsT *AsGatherNdOptions() {
  2621. return type == BuiltinOptions_GatherNdOptions ?
  2622. reinterpret_cast<tflite::GatherNdOptionsT *>(value) : nullptr;
  2623. }
  2624. const tflite::GatherNdOptionsT *AsGatherNdOptions() const {
  2625. return type == BuiltinOptions_GatherNdOptions ?
  2626. reinterpret_cast<const tflite::GatherNdOptionsT *>(value) : nullptr;
  2627. }
  2628. tflite::CosOptionsT *AsCosOptions() {
  2629. return type == BuiltinOptions_CosOptions ?
  2630. reinterpret_cast<tflite::CosOptionsT *>(value) : nullptr;
  2631. }
  2632. const tflite::CosOptionsT *AsCosOptions() const {
  2633. return type == BuiltinOptions_CosOptions ?
  2634. reinterpret_cast<const tflite::CosOptionsT *>(value) : nullptr;
  2635. }
  2636. tflite::WhereOptionsT *AsWhereOptions() {
  2637. return type == BuiltinOptions_WhereOptions ?
  2638. reinterpret_cast<tflite::WhereOptionsT *>(value) : nullptr;
  2639. }
  2640. const tflite::WhereOptionsT *AsWhereOptions() const {
  2641. return type == BuiltinOptions_WhereOptions ?
  2642. reinterpret_cast<const tflite::WhereOptionsT *>(value) : nullptr;
  2643. }
  2644. tflite::RankOptionsT *AsRankOptions() {
  2645. return type == BuiltinOptions_RankOptions ?
  2646. reinterpret_cast<tflite::RankOptionsT *>(value) : nullptr;
  2647. }
  2648. const tflite::RankOptionsT *AsRankOptions() const {
  2649. return type == BuiltinOptions_RankOptions ?
  2650. reinterpret_cast<const tflite::RankOptionsT *>(value) : nullptr;
  2651. }
  2652. tflite::ReverseSequenceOptionsT *AsReverseSequenceOptions() {
  2653. return type == BuiltinOptions_ReverseSequenceOptions ?
  2654. reinterpret_cast<tflite::ReverseSequenceOptionsT *>(value) : nullptr;
  2655. }
  2656. const tflite::ReverseSequenceOptionsT *AsReverseSequenceOptions() const {
  2657. return type == BuiltinOptions_ReverseSequenceOptions ?
  2658. reinterpret_cast<const tflite::ReverseSequenceOptionsT *>(value) : nullptr;
  2659. }
  2660. tflite::MatrixDiagOptionsT *AsMatrixDiagOptions() {
  2661. return type == BuiltinOptions_MatrixDiagOptions ?
  2662. reinterpret_cast<tflite::MatrixDiagOptionsT *>(value) : nullptr;
  2663. }
  2664. const tflite::MatrixDiagOptionsT *AsMatrixDiagOptions() const {
  2665. return type == BuiltinOptions_MatrixDiagOptions ?
  2666. reinterpret_cast<const tflite::MatrixDiagOptionsT *>(value) : nullptr;
  2667. }
  2668. tflite::QuantizeOptionsT *AsQuantizeOptions() {
  2669. return type == BuiltinOptions_QuantizeOptions ?
  2670. reinterpret_cast<tflite::QuantizeOptionsT *>(value) : nullptr;
  2671. }
  2672. const tflite::QuantizeOptionsT *AsQuantizeOptions() const {
  2673. return type == BuiltinOptions_QuantizeOptions ?
  2674. reinterpret_cast<const tflite::QuantizeOptionsT *>(value) : nullptr;
  2675. }
  2676. tflite::MatrixSetDiagOptionsT *AsMatrixSetDiagOptions() {
  2677. return type == BuiltinOptions_MatrixSetDiagOptions ?
  2678. reinterpret_cast<tflite::MatrixSetDiagOptionsT *>(value) : nullptr;
  2679. }
  2680. const tflite::MatrixSetDiagOptionsT *AsMatrixSetDiagOptions() const {
  2681. return type == BuiltinOptions_MatrixSetDiagOptions ?
  2682. reinterpret_cast<const tflite::MatrixSetDiagOptionsT *>(value) : nullptr;
  2683. }
  2684. tflite::HardSwishOptionsT *AsHardSwishOptions() {
  2685. return type == BuiltinOptions_HardSwishOptions ?
  2686. reinterpret_cast<tflite::HardSwishOptionsT *>(value) : nullptr;
  2687. }
  2688. const tflite::HardSwishOptionsT *AsHardSwishOptions() const {
  2689. return type == BuiltinOptions_HardSwishOptions ?
  2690. reinterpret_cast<const tflite::HardSwishOptionsT *>(value) : nullptr;
  2691. }
  2692. tflite::IfOptionsT *AsIfOptions() {
  2693. return type == BuiltinOptions_IfOptions ?
  2694. reinterpret_cast<tflite::IfOptionsT *>(value) : nullptr;
  2695. }
  2696. const tflite::IfOptionsT *AsIfOptions() const {
  2697. return type == BuiltinOptions_IfOptions ?
  2698. reinterpret_cast<const tflite::IfOptionsT *>(value) : nullptr;
  2699. }
  2700. tflite::WhileOptionsT *AsWhileOptions() {
  2701. return type == BuiltinOptions_WhileOptions ?
  2702. reinterpret_cast<tflite::WhileOptionsT *>(value) : nullptr;
  2703. }
  2704. const tflite::WhileOptionsT *AsWhileOptions() const {
  2705. return type == BuiltinOptions_WhileOptions ?
  2706. reinterpret_cast<const tflite::WhileOptionsT *>(value) : nullptr;
  2707. }
  2708. tflite::DepthToSpaceOptionsT *AsDepthToSpaceOptions() {
  2709. return type == BuiltinOptions_DepthToSpaceOptions ?
  2710. reinterpret_cast<tflite::DepthToSpaceOptionsT *>(value) : nullptr;
  2711. }
  2712. const tflite::DepthToSpaceOptionsT *AsDepthToSpaceOptions() const {
  2713. return type == BuiltinOptions_DepthToSpaceOptions ?
  2714. reinterpret_cast<const tflite::DepthToSpaceOptionsT *>(value) : nullptr;
  2715. }
  2716. tflite::NonMaxSuppressionV4OptionsT *AsNonMaxSuppressionV4Options() {
  2717. return type == BuiltinOptions_NonMaxSuppressionV4Options ?
  2718. reinterpret_cast<tflite::NonMaxSuppressionV4OptionsT *>(value) : nullptr;
  2719. }
  2720. const tflite::NonMaxSuppressionV4OptionsT *AsNonMaxSuppressionV4Options() const {
  2721. return type == BuiltinOptions_NonMaxSuppressionV4Options ?
  2722. reinterpret_cast<const tflite::NonMaxSuppressionV4OptionsT *>(value) : nullptr;
  2723. }
  2724. tflite::NonMaxSuppressionV5OptionsT *AsNonMaxSuppressionV5Options() {
  2725. return type == BuiltinOptions_NonMaxSuppressionV5Options ?
  2726. reinterpret_cast<tflite::NonMaxSuppressionV5OptionsT *>(value) : nullptr;
  2727. }
  2728. const tflite::NonMaxSuppressionV5OptionsT *AsNonMaxSuppressionV5Options() const {
  2729. return type == BuiltinOptions_NonMaxSuppressionV5Options ?
  2730. reinterpret_cast<const tflite::NonMaxSuppressionV5OptionsT *>(value) : nullptr;
  2731. }
  2732. tflite::ScatterNdOptionsT *AsScatterNdOptions() {
  2733. return type == BuiltinOptions_ScatterNdOptions ?
  2734. reinterpret_cast<tflite::ScatterNdOptionsT *>(value) : nullptr;
  2735. }
  2736. const tflite::ScatterNdOptionsT *AsScatterNdOptions() const {
  2737. return type == BuiltinOptions_ScatterNdOptions ?
  2738. reinterpret_cast<const tflite::ScatterNdOptionsT *>(value) : nullptr;
  2739. }
  2740. tflite::SelectV2OptionsT *AsSelectV2Options() {
  2741. return type == BuiltinOptions_SelectV2Options ?
  2742. reinterpret_cast<tflite::SelectV2OptionsT *>(value) : nullptr;
  2743. }
  2744. const tflite::SelectV2OptionsT *AsSelectV2Options() const {
  2745. return type == BuiltinOptions_SelectV2Options ?
  2746. reinterpret_cast<const tflite::SelectV2OptionsT *>(value) : nullptr;
  2747. }
  2748. tflite::DensifyOptionsT *AsDensifyOptions() {
  2749. return type == BuiltinOptions_DensifyOptions ?
  2750. reinterpret_cast<tflite::DensifyOptionsT *>(value) : nullptr;
  2751. }
  2752. const tflite::DensifyOptionsT *AsDensifyOptions() const {
  2753. return type == BuiltinOptions_DensifyOptions ?
  2754. reinterpret_cast<const tflite::DensifyOptionsT *>(value) : nullptr;
  2755. }
  2756. tflite::SegmentSumOptionsT *AsSegmentSumOptions() {
  2757. return type == BuiltinOptions_SegmentSumOptions ?
  2758. reinterpret_cast<tflite::SegmentSumOptionsT *>(value) : nullptr;
  2759. }
  2760. const tflite::SegmentSumOptionsT *AsSegmentSumOptions() const {
  2761. return type == BuiltinOptions_SegmentSumOptions ?
  2762. reinterpret_cast<const tflite::SegmentSumOptionsT *>(value) : nullptr;
  2763. }
  2764. tflite::BatchMatMulOptionsT *AsBatchMatMulOptions() {
  2765. return type == BuiltinOptions_BatchMatMulOptions ?
  2766. reinterpret_cast<tflite::BatchMatMulOptionsT *>(value) : nullptr;
  2767. }
  2768. const tflite::BatchMatMulOptionsT *AsBatchMatMulOptions() const {
  2769. return type == BuiltinOptions_BatchMatMulOptions ?
  2770. reinterpret_cast<const tflite::BatchMatMulOptionsT *>(value) : nullptr;
  2771. }
  2772. tflite::CumsumOptionsT *AsCumsumOptions() {
  2773. return type == BuiltinOptions_CumsumOptions ?
  2774. reinterpret_cast<tflite::CumsumOptionsT *>(value) : nullptr;
  2775. }
  2776. const tflite::CumsumOptionsT *AsCumsumOptions() const {
  2777. return type == BuiltinOptions_CumsumOptions ?
  2778. reinterpret_cast<const tflite::CumsumOptionsT *>(value) : nullptr;
  2779. }
  2780. tflite::CallOnceOptionsT *AsCallOnceOptions() {
  2781. return type == BuiltinOptions_CallOnceOptions ?
  2782. reinterpret_cast<tflite::CallOnceOptionsT *>(value) : nullptr;
  2783. }
  2784. const tflite::CallOnceOptionsT *AsCallOnceOptions() const {
  2785. return type == BuiltinOptions_CallOnceOptions ?
  2786. reinterpret_cast<const tflite::CallOnceOptionsT *>(value) : nullptr;
  2787. }
  2788. tflite::BroadcastToOptionsT *AsBroadcastToOptions() {
  2789. return type == BuiltinOptions_BroadcastToOptions ?
  2790. reinterpret_cast<tflite::BroadcastToOptionsT *>(value) : nullptr;
  2791. }
  2792. const tflite::BroadcastToOptionsT *AsBroadcastToOptions() const {
  2793. return type == BuiltinOptions_BroadcastToOptions ?
  2794. reinterpret_cast<const tflite::BroadcastToOptionsT *>(value) : nullptr;
  2795. }
  2796. tflite::Rfft2dOptionsT *AsRfft2dOptions() {
  2797. return type == BuiltinOptions_Rfft2dOptions ?
  2798. reinterpret_cast<tflite::Rfft2dOptionsT *>(value) : nullptr;
  2799. }
  2800. const tflite::Rfft2dOptionsT *AsRfft2dOptions() const {
  2801. return type == BuiltinOptions_Rfft2dOptions ?
  2802. reinterpret_cast<const tflite::Rfft2dOptionsT *>(value) : nullptr;
  2803. }
  2804. tflite::Conv3DOptionsT *AsConv3DOptions() {
  2805. return type == BuiltinOptions_Conv3DOptions ?
  2806. reinterpret_cast<tflite::Conv3DOptionsT *>(value) : nullptr;
  2807. }
  2808. const tflite::Conv3DOptionsT *AsConv3DOptions() const {
  2809. return type == BuiltinOptions_Conv3DOptions ?
  2810. reinterpret_cast<const tflite::Conv3DOptionsT *>(value) : nullptr;
  2811. }
  2812. tflite::HashtableOptionsT *AsHashtableOptions() {
  2813. return type == BuiltinOptions_HashtableOptions ?
  2814. reinterpret_cast<tflite::HashtableOptionsT *>(value) : nullptr;
  2815. }
  2816. const tflite::HashtableOptionsT *AsHashtableOptions() const {
  2817. return type == BuiltinOptions_HashtableOptions ?
  2818. reinterpret_cast<const tflite::HashtableOptionsT *>(value) : nullptr;
  2819. }
  2820. tflite::HashtableFindOptionsT *AsHashtableFindOptions() {
  2821. return type == BuiltinOptions_HashtableFindOptions ?
  2822. reinterpret_cast<tflite::HashtableFindOptionsT *>(value) : nullptr;
  2823. }
  2824. const tflite::HashtableFindOptionsT *AsHashtableFindOptions() const {
  2825. return type == BuiltinOptions_HashtableFindOptions ?
  2826. reinterpret_cast<const tflite::HashtableFindOptionsT *>(value) : nullptr;
  2827. }
  2828. tflite::HashtableImportOptionsT *AsHashtableImportOptions() {
  2829. return type == BuiltinOptions_HashtableImportOptions ?
  2830. reinterpret_cast<tflite::HashtableImportOptionsT *>(value) : nullptr;
  2831. }
  2832. const tflite::HashtableImportOptionsT *AsHashtableImportOptions() const {
  2833. return type == BuiltinOptions_HashtableImportOptions ?
  2834. reinterpret_cast<const tflite::HashtableImportOptionsT *>(value) : nullptr;
  2835. }
  2836. tflite::HashtableSizeOptionsT *AsHashtableSizeOptions() {
  2837. return type == BuiltinOptions_HashtableSizeOptions ?
  2838. reinterpret_cast<tflite::HashtableSizeOptionsT *>(value) : nullptr;
  2839. }
  2840. const tflite::HashtableSizeOptionsT *AsHashtableSizeOptions() const {
  2841. return type == BuiltinOptions_HashtableSizeOptions ?
  2842. reinterpret_cast<const tflite::HashtableSizeOptionsT *>(value) : nullptr;
  2843. }
  2844. tflite::VarHandleOptionsT *AsVarHandleOptions() {
  2845. return type == BuiltinOptions_VarHandleOptions ?
  2846. reinterpret_cast<tflite::VarHandleOptionsT *>(value) : nullptr;
  2847. }
  2848. const tflite::VarHandleOptionsT *AsVarHandleOptions() const {
  2849. return type == BuiltinOptions_VarHandleOptions ?
  2850. reinterpret_cast<const tflite::VarHandleOptionsT *>(value) : nullptr;
  2851. }
  2852. tflite::ReadVariableOptionsT *AsReadVariableOptions() {
  2853. return type == BuiltinOptions_ReadVariableOptions ?
  2854. reinterpret_cast<tflite::ReadVariableOptionsT *>(value) : nullptr;
  2855. }
  2856. const tflite::ReadVariableOptionsT *AsReadVariableOptions() const {
  2857. return type == BuiltinOptions_ReadVariableOptions ?
  2858. reinterpret_cast<const tflite::ReadVariableOptionsT *>(value) : nullptr;
  2859. }
  2860. tflite::AssignVariableOptionsT *AsAssignVariableOptions() {
  2861. return type == BuiltinOptions_AssignVariableOptions ?
  2862. reinterpret_cast<tflite::AssignVariableOptionsT *>(value) : nullptr;
  2863. }
  2864. const tflite::AssignVariableOptionsT *AsAssignVariableOptions() const {
  2865. return type == BuiltinOptions_AssignVariableOptions ?
  2866. reinterpret_cast<const tflite::AssignVariableOptionsT *>(value) : nullptr;
  2867. }
  2868. tflite::RandomOptionsT *AsRandomOptions() {
  2869. return type == BuiltinOptions_RandomOptions ?
  2870. reinterpret_cast<tflite::RandomOptionsT *>(value) : nullptr;
  2871. }
  2872. const tflite::RandomOptionsT *AsRandomOptions() const {
  2873. return type == BuiltinOptions_RandomOptions ?
  2874. reinterpret_cast<const tflite::RandomOptionsT *>(value) : nullptr;
  2875. }
  2876. tflite::BucketizeOptionsT *AsBucketizeOptions() {
  2877. return type == BuiltinOptions_BucketizeOptions ?
  2878. reinterpret_cast<tflite::BucketizeOptionsT *>(value) : nullptr;
  2879. }
  2880. const tflite::BucketizeOptionsT *AsBucketizeOptions() const {
  2881. return type == BuiltinOptions_BucketizeOptions ?
  2882. reinterpret_cast<const tflite::BucketizeOptionsT *>(value) : nullptr;
  2883. }
  2884. tflite::GeluOptionsT *AsGeluOptions() {
  2885. return type == BuiltinOptions_GeluOptions ?
  2886. reinterpret_cast<tflite::GeluOptionsT *>(value) : nullptr;
  2887. }
  2888. const tflite::GeluOptionsT *AsGeluOptions() const {
  2889. return type == BuiltinOptions_GeluOptions ?
  2890. reinterpret_cast<const tflite::GeluOptionsT *>(value) : nullptr;
  2891. }
  2892. tflite::DynamicUpdateSliceOptionsT *AsDynamicUpdateSliceOptions() {
  2893. return type == BuiltinOptions_DynamicUpdateSliceOptions ?
  2894. reinterpret_cast<tflite::DynamicUpdateSliceOptionsT *>(value) : nullptr;
  2895. }
  2896. const tflite::DynamicUpdateSliceOptionsT *AsDynamicUpdateSliceOptions() const {
  2897. return type == BuiltinOptions_DynamicUpdateSliceOptions ?
  2898. reinterpret_cast<const tflite::DynamicUpdateSliceOptionsT *>(value) : nullptr;
  2899. }
  2900. tflite::UnsortedSegmentProdOptionsT *AsUnsortedSegmentProdOptions() {
  2901. return type == BuiltinOptions_UnsortedSegmentProdOptions ?
  2902. reinterpret_cast<tflite::UnsortedSegmentProdOptionsT *>(value) : nullptr;
  2903. }
  2904. const tflite::UnsortedSegmentProdOptionsT *AsUnsortedSegmentProdOptions() const {
  2905. return type == BuiltinOptions_UnsortedSegmentProdOptions ?
  2906. reinterpret_cast<const tflite::UnsortedSegmentProdOptionsT *>(value) : nullptr;
  2907. }
  2908. tflite::UnsortedSegmentMaxOptionsT *AsUnsortedSegmentMaxOptions() {
  2909. return type == BuiltinOptions_UnsortedSegmentMaxOptions ?
  2910. reinterpret_cast<tflite::UnsortedSegmentMaxOptionsT *>(value) : nullptr;
  2911. }
  2912. const tflite::UnsortedSegmentMaxOptionsT *AsUnsortedSegmentMaxOptions() const {
  2913. return type == BuiltinOptions_UnsortedSegmentMaxOptions ?
  2914. reinterpret_cast<const tflite::UnsortedSegmentMaxOptionsT *>(value) : nullptr;
  2915. }
  2916. tflite::UnsortedSegmentMinOptionsT *AsUnsortedSegmentMinOptions() {
  2917. return type == BuiltinOptions_UnsortedSegmentMinOptions ?
  2918. reinterpret_cast<tflite::UnsortedSegmentMinOptionsT *>(value) : nullptr;
  2919. }
  2920. const tflite::UnsortedSegmentMinOptionsT *AsUnsortedSegmentMinOptions() const {
  2921. return type == BuiltinOptions_UnsortedSegmentMinOptions ?
  2922. reinterpret_cast<const tflite::UnsortedSegmentMinOptionsT *>(value) : nullptr;
  2923. }
  2924. tflite::UnsortedSegmentSumOptionsT *AsUnsortedSegmentSumOptions() {
  2925. return type == BuiltinOptions_UnsortedSegmentSumOptions ?
  2926. reinterpret_cast<tflite::UnsortedSegmentSumOptionsT *>(value) : nullptr;
  2927. }
  2928. const tflite::UnsortedSegmentSumOptionsT *AsUnsortedSegmentSumOptions() const {
  2929. return type == BuiltinOptions_UnsortedSegmentSumOptions ?
  2930. reinterpret_cast<const tflite::UnsortedSegmentSumOptionsT *>(value) : nullptr;
  2931. }
  2932. tflite::ATan2OptionsT *AsATan2Options() {
  2933. return type == BuiltinOptions_ATan2Options ?
  2934. reinterpret_cast<tflite::ATan2OptionsT *>(value) : nullptr;
  2935. }
  2936. const tflite::ATan2OptionsT *AsATan2Options() const {
  2937. return type == BuiltinOptions_ATan2Options ?
  2938. reinterpret_cast<const tflite::ATan2OptionsT *>(value) : nullptr;
  2939. }
  2940. };
  2941. bool VerifyBuiltinOptions(flatbuffers::Verifier &verifier, const void *obj, BuiltinOptions type);
  2942. bool VerifyBuiltinOptionsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types);
  2943. enum Padding {
  2944. Padding_SAME = 0,
  2945. Padding_VALID = 1,
  2946. Padding_MIN = Padding_SAME,
  2947. Padding_MAX = Padding_VALID
  2948. };
  2949. inline const Padding (&EnumValuesPadding())[2] {
  2950. static const Padding values[] = {
  2951. Padding_SAME,
  2952. Padding_VALID
  2953. };
  2954. return values;
  2955. }
  2956. inline const char * const *EnumNamesPadding() {
  2957. static const char * const names[3] = {
  2958. "SAME",
  2959. "VALID",
  2960. nullptr
  2961. };
  2962. return names;
  2963. }
  2964. inline const char *EnumNamePadding(Padding e) {
  2965. if (flatbuffers::IsOutRange(e, Padding_SAME, Padding_VALID)) return "";
  2966. const size_t index = static_cast<size_t>(e);
  2967. return EnumNamesPadding()[index];
  2968. }
  2969. enum ActivationFunctionType {
  2970. ActivationFunctionType_NONE = 0,
  2971. ActivationFunctionType_RELU = 1,
  2972. ActivationFunctionType_RELU_N1_TO_1 = 2,
  2973. ActivationFunctionType_RELU6 = 3,
  2974. ActivationFunctionType_TANH = 4,
  2975. ActivationFunctionType_SIGN_BIT = 5,
  2976. ActivationFunctionType_MIN = ActivationFunctionType_NONE,
  2977. ActivationFunctionType_MAX = ActivationFunctionType_SIGN_BIT
  2978. };
  2979. inline const ActivationFunctionType (&EnumValuesActivationFunctionType())[6] {
  2980. static const ActivationFunctionType values[] = {
  2981. ActivationFunctionType_NONE,
  2982. ActivationFunctionType_RELU,
  2983. ActivationFunctionType_RELU_N1_TO_1,
  2984. ActivationFunctionType_RELU6,
  2985. ActivationFunctionType_TANH,
  2986. ActivationFunctionType_SIGN_BIT
  2987. };
  2988. return values;
  2989. }
  2990. inline const char * const *EnumNamesActivationFunctionType() {
  2991. static const char * const names[7] = {
  2992. "NONE",
  2993. "RELU",
  2994. "RELU_N1_TO_1",
  2995. "RELU6",
  2996. "TANH",
  2997. "SIGN_BIT",
  2998. nullptr
  2999. };
  3000. return names;
  3001. }
  3002. inline const char *EnumNameActivationFunctionType(ActivationFunctionType e) {
  3003. if (flatbuffers::IsOutRange(e, ActivationFunctionType_NONE, ActivationFunctionType_SIGN_BIT)) return "";
  3004. const size_t index = static_cast<size_t>(e);
  3005. return EnumNamesActivationFunctionType()[index];
  3006. }
  3007. enum LSHProjectionType {
  3008. LSHProjectionType_UNKNOWN = 0,
  3009. LSHProjectionType_SPARSE = 1,
  3010. LSHProjectionType_DENSE = 2,
  3011. LSHProjectionType_MIN = LSHProjectionType_UNKNOWN,
  3012. LSHProjectionType_MAX = LSHProjectionType_DENSE
  3013. };
  3014. inline const LSHProjectionType (&EnumValuesLSHProjectionType())[3] {
  3015. static const LSHProjectionType values[] = {
  3016. LSHProjectionType_UNKNOWN,
  3017. LSHProjectionType_SPARSE,
  3018. LSHProjectionType_DENSE
  3019. };
  3020. return values;
  3021. }
  3022. inline const char * const *EnumNamesLSHProjectionType() {
  3023. static const char * const names[4] = {
  3024. "UNKNOWN",
  3025. "SPARSE",
  3026. "DENSE",
  3027. nullptr
  3028. };
  3029. return names;
  3030. }
  3031. inline const char *EnumNameLSHProjectionType(LSHProjectionType e) {
  3032. if (flatbuffers::IsOutRange(e, LSHProjectionType_UNKNOWN, LSHProjectionType_DENSE)) return "";
  3033. const size_t index = static_cast<size_t>(e);
  3034. return EnumNamesLSHProjectionType()[index];
  3035. }
  3036. enum FullyConnectedOptionsWeightsFormat {
  3037. FullyConnectedOptionsWeightsFormat_DEFAULT = 0,
  3038. FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8 = 1,
  3039. FullyConnectedOptionsWeightsFormat_MIN = FullyConnectedOptionsWeightsFormat_DEFAULT,
  3040. FullyConnectedOptionsWeightsFormat_MAX = FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8
  3041. };
  3042. inline const FullyConnectedOptionsWeightsFormat (&EnumValuesFullyConnectedOptionsWeightsFormat())[2] {
  3043. static const FullyConnectedOptionsWeightsFormat values[] = {
  3044. FullyConnectedOptionsWeightsFormat_DEFAULT,
  3045. FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8
  3046. };
  3047. return values;
  3048. }
  3049. inline const char * const *EnumNamesFullyConnectedOptionsWeightsFormat() {
  3050. static const char * const names[3] = {
  3051. "DEFAULT",
  3052. "SHUFFLED4x16INT8",
  3053. nullptr
  3054. };
  3055. return names;
  3056. }
  3057. inline const char *EnumNameFullyConnectedOptionsWeightsFormat(FullyConnectedOptionsWeightsFormat e) {
  3058. if (flatbuffers::IsOutRange(e, FullyConnectedOptionsWeightsFormat_DEFAULT, FullyConnectedOptionsWeightsFormat_SHUFFLED4x16INT8)) return "";
  3059. const size_t index = static_cast<size_t>(e);
  3060. return EnumNamesFullyConnectedOptionsWeightsFormat()[index];
  3061. }
  3062. enum LSTMKernelType {
  3063. LSTMKernelType_FULL = 0,
  3064. LSTMKernelType_BASIC = 1,
  3065. LSTMKernelType_MIN = LSTMKernelType_FULL,
  3066. LSTMKernelType_MAX = LSTMKernelType_BASIC
  3067. };
  3068. inline const LSTMKernelType (&EnumValuesLSTMKernelType())[2] {
  3069. static const LSTMKernelType values[] = {
  3070. LSTMKernelType_FULL,
  3071. LSTMKernelType_BASIC
  3072. };
  3073. return values;
  3074. }
  3075. inline const char * const *EnumNamesLSTMKernelType() {
  3076. static const char * const names[3] = {
  3077. "FULL",
  3078. "BASIC",
  3079. nullptr
  3080. };
  3081. return names;
  3082. }
  3083. inline const char *EnumNameLSTMKernelType(LSTMKernelType e) {
  3084. if (flatbuffers::IsOutRange(e, LSTMKernelType_FULL, LSTMKernelType_BASIC)) return "";
  3085. const size_t index = static_cast<size_t>(e);
  3086. return EnumNamesLSTMKernelType()[index];
  3087. }
  3088. enum CombinerType {
  3089. CombinerType_SUM = 0,
  3090. CombinerType_MEAN = 1,
  3091. CombinerType_SQRTN = 2,
  3092. CombinerType_MIN = CombinerType_SUM,
  3093. CombinerType_MAX = CombinerType_SQRTN
  3094. };
  3095. inline const CombinerType (&EnumValuesCombinerType())[3] {
  3096. static const CombinerType values[] = {
  3097. CombinerType_SUM,
  3098. CombinerType_MEAN,
  3099. CombinerType_SQRTN
  3100. };
  3101. return values;
  3102. }
  3103. inline const char * const *EnumNamesCombinerType() {
  3104. static const char * const names[4] = {
  3105. "SUM",
  3106. "MEAN",
  3107. "SQRTN",
  3108. nullptr
  3109. };
  3110. return names;
  3111. }
  3112. inline const char *EnumNameCombinerType(CombinerType e) {
  3113. if (flatbuffers::IsOutRange(e, CombinerType_SUM, CombinerType_SQRTN)) return "";
  3114. const size_t index = static_cast<size_t>(e);
  3115. return EnumNamesCombinerType()[index];
  3116. }
  3117. enum MirrorPadMode {
  3118. MirrorPadMode_REFLECT = 0,
  3119. MirrorPadMode_SYMMETRIC = 1,
  3120. MirrorPadMode_MIN = MirrorPadMode_REFLECT,
  3121. MirrorPadMode_MAX = MirrorPadMode_SYMMETRIC
  3122. };
  3123. inline const MirrorPadMode (&EnumValuesMirrorPadMode())[2] {
  3124. static const MirrorPadMode values[] = {
  3125. MirrorPadMode_REFLECT,
  3126. MirrorPadMode_SYMMETRIC
  3127. };
  3128. return values;
  3129. }
  3130. inline const char * const *EnumNamesMirrorPadMode() {
  3131. static const char * const names[3] = {
  3132. "REFLECT",
  3133. "SYMMETRIC",
  3134. nullptr
  3135. };
  3136. return names;
  3137. }
  3138. inline const char *EnumNameMirrorPadMode(MirrorPadMode e) {
  3139. if (flatbuffers::IsOutRange(e, MirrorPadMode_REFLECT, MirrorPadMode_SYMMETRIC)) return "";
  3140. const size_t index = static_cast<size_t>(e);
  3141. return EnumNamesMirrorPadMode()[index];
  3142. }
  3143. enum CustomOptionsFormat {
  3144. CustomOptionsFormat_FLEXBUFFERS = 0,
  3145. CustomOptionsFormat_MIN = CustomOptionsFormat_FLEXBUFFERS,
  3146. CustomOptionsFormat_MAX = CustomOptionsFormat_FLEXBUFFERS
  3147. };
  3148. inline const CustomOptionsFormat (&EnumValuesCustomOptionsFormat())[1] {
  3149. static const CustomOptionsFormat values[] = {
  3150. CustomOptionsFormat_FLEXBUFFERS
  3151. };
  3152. return values;
  3153. }
  3154. inline const char * const *EnumNamesCustomOptionsFormat() {
  3155. static const char * const names[2] = {
  3156. "FLEXBUFFERS",
  3157. nullptr
  3158. };
  3159. return names;
  3160. }
  3161. inline const char *EnumNameCustomOptionsFormat(CustomOptionsFormat e) {
  3162. if (flatbuffers::IsOutRange(e, CustomOptionsFormat_FLEXBUFFERS, CustomOptionsFormat_FLEXBUFFERS)) return "";
  3163. const size_t index = static_cast<size_t>(e);
  3164. return EnumNamesCustomOptionsFormat()[index];
  3165. }
  3166. struct CustomQuantizationT : public flatbuffers::NativeTable {
  3167. typedef CustomQuantization TableType;
  3168. std::vector<uint8_t> custom;
  3169. CustomQuantizationT() {
  3170. }
  3171. };
  3172. struct CustomQuantization FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3173. typedef CustomQuantizationT NativeTableType;
  3174. typedef CustomQuantizationBuilder Builder;
  3175. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3176. VT_CUSTOM = 4
  3177. };
  3178. const flatbuffers::Vector<uint8_t> *custom() const {
  3179. return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_CUSTOM);
  3180. }
  3181. bool Verify(flatbuffers::Verifier &verifier) const {
  3182. return VerifyTableStart(verifier) &&
  3183. VerifyOffset(verifier, VT_CUSTOM) &&
  3184. verifier.VerifyVector(custom()) &&
  3185. verifier.EndTable();
  3186. }
  3187. CustomQuantizationT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3188. void UnPackTo(CustomQuantizationT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3189. static flatbuffers::Offset<CustomQuantization> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3190. };
  3191. struct CustomQuantizationBuilder {
  3192. typedef CustomQuantization Table;
  3193. flatbuffers::FlatBufferBuilder &fbb_;
  3194. flatbuffers::uoffset_t start_;
  3195. void add_custom(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom) {
  3196. fbb_.AddOffset(CustomQuantization::VT_CUSTOM, custom);
  3197. }
  3198. explicit CustomQuantizationBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3199. : fbb_(_fbb) {
  3200. start_ = fbb_.StartTable();
  3201. }
  3202. CustomQuantizationBuilder &operator=(const CustomQuantizationBuilder &);
  3203. flatbuffers::Offset<CustomQuantization> Finish() {
  3204. const auto end = fbb_.EndTable(start_);
  3205. auto o = flatbuffers::Offset<CustomQuantization>(end);
  3206. return o;
  3207. }
  3208. };
  3209. inline flatbuffers::Offset<CustomQuantization> CreateCustomQuantization(
  3210. flatbuffers::FlatBufferBuilder &_fbb,
  3211. flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom = 0) {
  3212. CustomQuantizationBuilder builder_(_fbb);
  3213. builder_.add_custom(custom);
  3214. return builder_.Finish();
  3215. }
  3216. inline flatbuffers::Offset<CustomQuantization> CreateCustomQuantizationDirect(
  3217. flatbuffers::FlatBufferBuilder &_fbb,
  3218. const std::vector<uint8_t> *custom = nullptr) {
  3219. if (custom) { _fbb.ForceVectorAlignment(custom->size(), sizeof(uint8_t), 16); }
  3220. auto custom__ = custom ? _fbb.CreateVector<uint8_t>(*custom) : 0;
  3221. return tflite::CreateCustomQuantization(
  3222. _fbb,
  3223. custom__);
  3224. }
  3225. flatbuffers::Offset<CustomQuantization> CreateCustomQuantization(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3226. struct QuantizationParametersT : public flatbuffers::NativeTable {
  3227. typedef QuantizationParameters TableType;
  3228. std::vector<float> min;
  3229. std::vector<float> max;
  3230. std::vector<float> scale;
  3231. std::vector<int64_t> zero_point;
  3232. tflite::QuantizationDetailsUnion details;
  3233. int32_t quantized_dimension;
  3234. QuantizationParametersT()
  3235. : quantized_dimension(0) {
  3236. }
  3237. };
  3238. struct QuantizationParameters FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3239. typedef QuantizationParametersT NativeTableType;
  3240. typedef QuantizationParametersBuilder Builder;
  3241. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3242. VT_MIN = 4,
  3243. VT_MAX = 6,
  3244. VT_SCALE = 8,
  3245. VT_ZERO_POINT = 10,
  3246. VT_DETAILS_TYPE = 12,
  3247. VT_DETAILS = 14,
  3248. VT_QUANTIZED_DIMENSION = 16
  3249. };
  3250. const flatbuffers::Vector<float> *min() const {
  3251. return GetPointer<const flatbuffers::Vector<float> *>(VT_MIN);
  3252. }
  3253. const flatbuffers::Vector<float> *max() const {
  3254. return GetPointer<const flatbuffers::Vector<float> *>(VT_MAX);
  3255. }
  3256. const flatbuffers::Vector<float> *scale() const {
  3257. return GetPointer<const flatbuffers::Vector<float> *>(VT_SCALE);
  3258. }
  3259. const flatbuffers::Vector<int64_t> *zero_point() const {
  3260. return GetPointer<const flatbuffers::Vector<int64_t> *>(VT_ZERO_POINT);
  3261. }
  3262. tflite::QuantizationDetails details_type() const {
  3263. return static_cast<tflite::QuantizationDetails>(GetField<uint8_t>(VT_DETAILS_TYPE, 0));
  3264. }
  3265. const void *details() const {
  3266. return GetPointer<const void *>(VT_DETAILS);
  3267. }
  3268. template<typename T> const T *details_as() const;
  3269. const tflite::CustomQuantization *details_as_CustomQuantization() const {
  3270. return details_type() == tflite::QuantizationDetails_CustomQuantization ? static_cast<const tflite::CustomQuantization *>(details()) : nullptr;
  3271. }
  3272. int32_t quantized_dimension() const {
  3273. return GetField<int32_t>(VT_QUANTIZED_DIMENSION, 0);
  3274. }
  3275. bool Verify(flatbuffers::Verifier &verifier) const {
  3276. return VerifyTableStart(verifier) &&
  3277. VerifyOffset(verifier, VT_MIN) &&
  3278. verifier.VerifyVector(min()) &&
  3279. VerifyOffset(verifier, VT_MAX) &&
  3280. verifier.VerifyVector(max()) &&
  3281. VerifyOffset(verifier, VT_SCALE) &&
  3282. verifier.VerifyVector(scale()) &&
  3283. VerifyOffset(verifier, VT_ZERO_POINT) &&
  3284. verifier.VerifyVector(zero_point()) &&
  3285. VerifyField<uint8_t>(verifier, VT_DETAILS_TYPE) &&
  3286. VerifyOffset(verifier, VT_DETAILS) &&
  3287. VerifyQuantizationDetails(verifier, details(), details_type()) &&
  3288. VerifyField<int32_t>(verifier, VT_QUANTIZED_DIMENSION) &&
  3289. verifier.EndTable();
  3290. }
  3291. QuantizationParametersT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3292. void UnPackTo(QuantizationParametersT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3293. static flatbuffers::Offset<QuantizationParameters> Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3294. };
  3295. template<> inline const tflite::CustomQuantization *QuantizationParameters::details_as<tflite::CustomQuantization>() const {
  3296. return details_as_CustomQuantization();
  3297. }
  3298. struct QuantizationParametersBuilder {
  3299. typedef QuantizationParameters Table;
  3300. flatbuffers::FlatBufferBuilder &fbb_;
  3301. flatbuffers::uoffset_t start_;
  3302. void add_min(flatbuffers::Offset<flatbuffers::Vector<float>> min) {
  3303. fbb_.AddOffset(QuantizationParameters::VT_MIN, min);
  3304. }
  3305. void add_max(flatbuffers::Offset<flatbuffers::Vector<float>> max) {
  3306. fbb_.AddOffset(QuantizationParameters::VT_MAX, max);
  3307. }
  3308. void add_scale(flatbuffers::Offset<flatbuffers::Vector<float>> scale) {
  3309. fbb_.AddOffset(QuantizationParameters::VT_SCALE, scale);
  3310. }
  3311. void add_zero_point(flatbuffers::Offset<flatbuffers::Vector<int64_t>> zero_point) {
  3312. fbb_.AddOffset(QuantizationParameters::VT_ZERO_POINT, zero_point);
  3313. }
  3314. void add_details_type(tflite::QuantizationDetails details_type) {
  3315. fbb_.AddElement<uint8_t>(QuantizationParameters::VT_DETAILS_TYPE, static_cast<uint8_t>(details_type), 0);
  3316. }
  3317. void add_details(flatbuffers::Offset<void> details) {
  3318. fbb_.AddOffset(QuantizationParameters::VT_DETAILS, details);
  3319. }
  3320. void add_quantized_dimension(int32_t quantized_dimension) {
  3321. fbb_.AddElement<int32_t>(QuantizationParameters::VT_QUANTIZED_DIMENSION, quantized_dimension, 0);
  3322. }
  3323. explicit QuantizationParametersBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3324. : fbb_(_fbb) {
  3325. start_ = fbb_.StartTable();
  3326. }
  3327. QuantizationParametersBuilder &operator=(const QuantizationParametersBuilder &);
  3328. flatbuffers::Offset<QuantizationParameters> Finish() {
  3329. const auto end = fbb_.EndTable(start_);
  3330. auto o = flatbuffers::Offset<QuantizationParameters>(end);
  3331. return o;
  3332. }
  3333. };
  3334. inline flatbuffers::Offset<QuantizationParameters> CreateQuantizationParameters(
  3335. flatbuffers::FlatBufferBuilder &_fbb,
  3336. flatbuffers::Offset<flatbuffers::Vector<float>> min = 0,
  3337. flatbuffers::Offset<flatbuffers::Vector<float>> max = 0,
  3338. flatbuffers::Offset<flatbuffers::Vector<float>> scale = 0,
  3339. flatbuffers::Offset<flatbuffers::Vector<int64_t>> zero_point = 0,
  3340. tflite::QuantizationDetails details_type = tflite::QuantizationDetails_NONE,
  3341. flatbuffers::Offset<void> details = 0,
  3342. int32_t quantized_dimension = 0) {
  3343. QuantizationParametersBuilder builder_(_fbb);
  3344. builder_.add_quantized_dimension(quantized_dimension);
  3345. builder_.add_details(details);
  3346. builder_.add_zero_point(zero_point);
  3347. builder_.add_scale(scale);
  3348. builder_.add_max(max);
  3349. builder_.add_min(min);
  3350. builder_.add_details_type(details_type);
  3351. return builder_.Finish();
  3352. }
  3353. inline flatbuffers::Offset<QuantizationParameters> CreateQuantizationParametersDirect(
  3354. flatbuffers::FlatBufferBuilder &_fbb,
  3355. const std::vector<float> *min = nullptr,
  3356. const std::vector<float> *max = nullptr,
  3357. const std::vector<float> *scale = nullptr,
  3358. const std::vector<int64_t> *zero_point = nullptr,
  3359. tflite::QuantizationDetails details_type = tflite::QuantizationDetails_NONE,
  3360. flatbuffers::Offset<void> details = 0,
  3361. int32_t quantized_dimension = 0) {
  3362. auto min__ = min ? _fbb.CreateVector<float>(*min) : 0;
  3363. auto max__ = max ? _fbb.CreateVector<float>(*max) : 0;
  3364. auto scale__ = scale ? _fbb.CreateVector<float>(*scale) : 0;
  3365. auto zero_point__ = zero_point ? _fbb.CreateVector<int64_t>(*zero_point) : 0;
  3366. return tflite::CreateQuantizationParameters(
  3367. _fbb,
  3368. min__,
  3369. max__,
  3370. scale__,
  3371. zero_point__,
  3372. details_type,
  3373. details,
  3374. quantized_dimension);
  3375. }
  3376. flatbuffers::Offset<QuantizationParameters> CreateQuantizationParameters(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3377. struct Int32VectorT : public flatbuffers::NativeTable {
  3378. typedef Int32Vector TableType;
  3379. std::vector<int32_t> values;
  3380. Int32VectorT() {
  3381. }
  3382. };
  3383. struct Int32Vector FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3384. typedef Int32VectorT NativeTableType;
  3385. typedef Int32VectorBuilder Builder;
  3386. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3387. VT_VALUES = 4
  3388. };
  3389. const flatbuffers::Vector<int32_t> *values() const {
  3390. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_VALUES);
  3391. }
  3392. bool Verify(flatbuffers::Verifier &verifier) const {
  3393. return VerifyTableStart(verifier) &&
  3394. VerifyOffset(verifier, VT_VALUES) &&
  3395. verifier.VerifyVector(values()) &&
  3396. verifier.EndTable();
  3397. }
  3398. Int32VectorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3399. void UnPackTo(Int32VectorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3400. static flatbuffers::Offset<Int32Vector> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3401. };
  3402. struct Int32VectorBuilder {
  3403. typedef Int32Vector Table;
  3404. flatbuffers::FlatBufferBuilder &fbb_;
  3405. flatbuffers::uoffset_t start_;
  3406. void add_values(flatbuffers::Offset<flatbuffers::Vector<int32_t>> values) {
  3407. fbb_.AddOffset(Int32Vector::VT_VALUES, values);
  3408. }
  3409. explicit Int32VectorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3410. : fbb_(_fbb) {
  3411. start_ = fbb_.StartTable();
  3412. }
  3413. Int32VectorBuilder &operator=(const Int32VectorBuilder &);
  3414. flatbuffers::Offset<Int32Vector> Finish() {
  3415. const auto end = fbb_.EndTable(start_);
  3416. auto o = flatbuffers::Offset<Int32Vector>(end);
  3417. return o;
  3418. }
  3419. };
  3420. inline flatbuffers::Offset<Int32Vector> CreateInt32Vector(
  3421. flatbuffers::FlatBufferBuilder &_fbb,
  3422. flatbuffers::Offset<flatbuffers::Vector<int32_t>> values = 0) {
  3423. Int32VectorBuilder builder_(_fbb);
  3424. builder_.add_values(values);
  3425. return builder_.Finish();
  3426. }
  3427. inline flatbuffers::Offset<Int32Vector> CreateInt32VectorDirect(
  3428. flatbuffers::FlatBufferBuilder &_fbb,
  3429. const std::vector<int32_t> *values = nullptr) {
  3430. auto values__ = values ? _fbb.CreateVector<int32_t>(*values) : 0;
  3431. return tflite::CreateInt32Vector(
  3432. _fbb,
  3433. values__);
  3434. }
  3435. flatbuffers::Offset<Int32Vector> CreateInt32Vector(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3436. struct Uint16VectorT : public flatbuffers::NativeTable {
  3437. typedef Uint16Vector TableType;
  3438. std::vector<uint16_t> values;
  3439. Uint16VectorT() {
  3440. }
  3441. };
  3442. struct Uint16Vector FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3443. typedef Uint16VectorT NativeTableType;
  3444. typedef Uint16VectorBuilder Builder;
  3445. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3446. VT_VALUES = 4
  3447. };
  3448. const flatbuffers::Vector<uint16_t> *values() const {
  3449. return GetPointer<const flatbuffers::Vector<uint16_t> *>(VT_VALUES);
  3450. }
  3451. bool Verify(flatbuffers::Verifier &verifier) const {
  3452. return VerifyTableStart(verifier) &&
  3453. VerifyOffset(verifier, VT_VALUES) &&
  3454. verifier.VerifyVector(values()) &&
  3455. verifier.EndTable();
  3456. }
  3457. Uint16VectorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3458. void UnPackTo(Uint16VectorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3459. static flatbuffers::Offset<Uint16Vector> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3460. };
  3461. struct Uint16VectorBuilder {
  3462. typedef Uint16Vector Table;
  3463. flatbuffers::FlatBufferBuilder &fbb_;
  3464. flatbuffers::uoffset_t start_;
  3465. void add_values(flatbuffers::Offset<flatbuffers::Vector<uint16_t>> values) {
  3466. fbb_.AddOffset(Uint16Vector::VT_VALUES, values);
  3467. }
  3468. explicit Uint16VectorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3469. : fbb_(_fbb) {
  3470. start_ = fbb_.StartTable();
  3471. }
  3472. Uint16VectorBuilder &operator=(const Uint16VectorBuilder &);
  3473. flatbuffers::Offset<Uint16Vector> Finish() {
  3474. const auto end = fbb_.EndTable(start_);
  3475. auto o = flatbuffers::Offset<Uint16Vector>(end);
  3476. return o;
  3477. }
  3478. };
  3479. inline flatbuffers::Offset<Uint16Vector> CreateUint16Vector(
  3480. flatbuffers::FlatBufferBuilder &_fbb,
  3481. flatbuffers::Offset<flatbuffers::Vector<uint16_t>> values = 0) {
  3482. Uint16VectorBuilder builder_(_fbb);
  3483. builder_.add_values(values);
  3484. return builder_.Finish();
  3485. }
  3486. inline flatbuffers::Offset<Uint16Vector> CreateUint16VectorDirect(
  3487. flatbuffers::FlatBufferBuilder &_fbb,
  3488. const std::vector<uint16_t> *values = nullptr) {
  3489. if (values) { _fbb.ForceVectorAlignment(values->size(), sizeof(uint16_t), 4); }
  3490. auto values__ = values ? _fbb.CreateVector<uint16_t>(*values) : 0;
  3491. return tflite::CreateUint16Vector(
  3492. _fbb,
  3493. values__);
  3494. }
  3495. flatbuffers::Offset<Uint16Vector> CreateUint16Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3496. struct Uint8VectorT : public flatbuffers::NativeTable {
  3497. typedef Uint8Vector TableType;
  3498. std::vector<uint8_t> values;
  3499. Uint8VectorT() {
  3500. }
  3501. };
  3502. struct Uint8Vector FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3503. typedef Uint8VectorT NativeTableType;
  3504. typedef Uint8VectorBuilder Builder;
  3505. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3506. VT_VALUES = 4
  3507. };
  3508. const flatbuffers::Vector<uint8_t> *values() const {
  3509. return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_VALUES);
  3510. }
  3511. bool Verify(flatbuffers::Verifier &verifier) const {
  3512. return VerifyTableStart(verifier) &&
  3513. VerifyOffset(verifier, VT_VALUES) &&
  3514. verifier.VerifyVector(values()) &&
  3515. verifier.EndTable();
  3516. }
  3517. Uint8VectorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3518. void UnPackTo(Uint8VectorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3519. static flatbuffers::Offset<Uint8Vector> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3520. };
  3521. struct Uint8VectorBuilder {
  3522. typedef Uint8Vector Table;
  3523. flatbuffers::FlatBufferBuilder &fbb_;
  3524. flatbuffers::uoffset_t start_;
  3525. void add_values(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> values) {
  3526. fbb_.AddOffset(Uint8Vector::VT_VALUES, values);
  3527. }
  3528. explicit Uint8VectorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3529. : fbb_(_fbb) {
  3530. start_ = fbb_.StartTable();
  3531. }
  3532. Uint8VectorBuilder &operator=(const Uint8VectorBuilder &);
  3533. flatbuffers::Offset<Uint8Vector> Finish() {
  3534. const auto end = fbb_.EndTable(start_);
  3535. auto o = flatbuffers::Offset<Uint8Vector>(end);
  3536. return o;
  3537. }
  3538. };
  3539. inline flatbuffers::Offset<Uint8Vector> CreateUint8Vector(
  3540. flatbuffers::FlatBufferBuilder &_fbb,
  3541. flatbuffers::Offset<flatbuffers::Vector<uint8_t>> values = 0) {
  3542. Uint8VectorBuilder builder_(_fbb);
  3543. builder_.add_values(values);
  3544. return builder_.Finish();
  3545. }
  3546. inline flatbuffers::Offset<Uint8Vector> CreateUint8VectorDirect(
  3547. flatbuffers::FlatBufferBuilder &_fbb,
  3548. const std::vector<uint8_t> *values = nullptr) {
  3549. if (values) { _fbb.ForceVectorAlignment(values->size(), sizeof(uint8_t), 4); }
  3550. auto values__ = values ? _fbb.CreateVector<uint8_t>(*values) : 0;
  3551. return tflite::CreateUint8Vector(
  3552. _fbb,
  3553. values__);
  3554. }
  3555. flatbuffers::Offset<Uint8Vector> CreateUint8Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3556. struct DimensionMetadataT : public flatbuffers::NativeTable {
  3557. typedef DimensionMetadata TableType;
  3558. tflite::DimensionType format;
  3559. int32_t dense_size;
  3560. tflite::SparseIndexVectorUnion array_segments;
  3561. tflite::SparseIndexVectorUnion array_indices;
  3562. DimensionMetadataT()
  3563. : format(tflite::DimensionType_DENSE),
  3564. dense_size(0) {
  3565. }
  3566. };
  3567. struct DimensionMetadata FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3568. typedef DimensionMetadataT NativeTableType;
  3569. typedef DimensionMetadataBuilder Builder;
  3570. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3571. VT_FORMAT = 4,
  3572. VT_DENSE_SIZE = 6,
  3573. VT_ARRAY_SEGMENTS_TYPE = 8,
  3574. VT_ARRAY_SEGMENTS = 10,
  3575. VT_ARRAY_INDICES_TYPE = 12,
  3576. VT_ARRAY_INDICES = 14
  3577. };
  3578. tflite::DimensionType format() const {
  3579. return static_cast<tflite::DimensionType>(GetField<int8_t>(VT_FORMAT, 0));
  3580. }
  3581. int32_t dense_size() const {
  3582. return GetField<int32_t>(VT_DENSE_SIZE, 0);
  3583. }
  3584. tflite::SparseIndexVector array_segments_type() const {
  3585. return static_cast<tflite::SparseIndexVector>(GetField<uint8_t>(VT_ARRAY_SEGMENTS_TYPE, 0));
  3586. }
  3587. const void *array_segments() const {
  3588. return GetPointer<const void *>(VT_ARRAY_SEGMENTS);
  3589. }
  3590. template<typename T> const T *array_segments_as() const;
  3591. const tflite::Int32Vector *array_segments_as_Int32Vector() const {
  3592. return array_segments_type() == tflite::SparseIndexVector_Int32Vector ? static_cast<const tflite::Int32Vector *>(array_segments()) : nullptr;
  3593. }
  3594. const tflite::Uint16Vector *array_segments_as_Uint16Vector() const {
  3595. return array_segments_type() == tflite::SparseIndexVector_Uint16Vector ? static_cast<const tflite::Uint16Vector *>(array_segments()) : nullptr;
  3596. }
  3597. const tflite::Uint8Vector *array_segments_as_Uint8Vector() const {
  3598. return array_segments_type() == tflite::SparseIndexVector_Uint8Vector ? static_cast<const tflite::Uint8Vector *>(array_segments()) : nullptr;
  3599. }
  3600. tflite::SparseIndexVector array_indices_type() const {
  3601. return static_cast<tflite::SparseIndexVector>(GetField<uint8_t>(VT_ARRAY_INDICES_TYPE, 0));
  3602. }
  3603. const void *array_indices() const {
  3604. return GetPointer<const void *>(VT_ARRAY_INDICES);
  3605. }
  3606. template<typename T> const T *array_indices_as() const;
  3607. const tflite::Int32Vector *array_indices_as_Int32Vector() const {
  3608. return array_indices_type() == tflite::SparseIndexVector_Int32Vector ? static_cast<const tflite::Int32Vector *>(array_indices()) : nullptr;
  3609. }
  3610. const tflite::Uint16Vector *array_indices_as_Uint16Vector() const {
  3611. return array_indices_type() == tflite::SparseIndexVector_Uint16Vector ? static_cast<const tflite::Uint16Vector *>(array_indices()) : nullptr;
  3612. }
  3613. const tflite::Uint8Vector *array_indices_as_Uint8Vector() const {
  3614. return array_indices_type() == tflite::SparseIndexVector_Uint8Vector ? static_cast<const tflite::Uint8Vector *>(array_indices()) : nullptr;
  3615. }
  3616. bool Verify(flatbuffers::Verifier &verifier) const {
  3617. return VerifyTableStart(verifier) &&
  3618. VerifyField<int8_t>(verifier, VT_FORMAT) &&
  3619. VerifyField<int32_t>(verifier, VT_DENSE_SIZE) &&
  3620. VerifyField<uint8_t>(verifier, VT_ARRAY_SEGMENTS_TYPE) &&
  3621. VerifyOffset(verifier, VT_ARRAY_SEGMENTS) &&
  3622. VerifySparseIndexVector(verifier, array_segments(), array_segments_type()) &&
  3623. VerifyField<uint8_t>(verifier, VT_ARRAY_INDICES_TYPE) &&
  3624. VerifyOffset(verifier, VT_ARRAY_INDICES) &&
  3625. VerifySparseIndexVector(verifier, array_indices(), array_indices_type()) &&
  3626. verifier.EndTable();
  3627. }
  3628. DimensionMetadataT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3629. void UnPackTo(DimensionMetadataT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3630. static flatbuffers::Offset<DimensionMetadata> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3631. };
  3632. template<> inline const tflite::Int32Vector *DimensionMetadata::array_segments_as<tflite::Int32Vector>() const {
  3633. return array_segments_as_Int32Vector();
  3634. }
  3635. template<> inline const tflite::Uint16Vector *DimensionMetadata::array_segments_as<tflite::Uint16Vector>() const {
  3636. return array_segments_as_Uint16Vector();
  3637. }
  3638. template<> inline const tflite::Uint8Vector *DimensionMetadata::array_segments_as<tflite::Uint8Vector>() const {
  3639. return array_segments_as_Uint8Vector();
  3640. }
  3641. template<> inline const tflite::Int32Vector *DimensionMetadata::array_indices_as<tflite::Int32Vector>() const {
  3642. return array_indices_as_Int32Vector();
  3643. }
  3644. template<> inline const tflite::Uint16Vector *DimensionMetadata::array_indices_as<tflite::Uint16Vector>() const {
  3645. return array_indices_as_Uint16Vector();
  3646. }
  3647. template<> inline const tflite::Uint8Vector *DimensionMetadata::array_indices_as<tflite::Uint8Vector>() const {
  3648. return array_indices_as_Uint8Vector();
  3649. }
  3650. struct DimensionMetadataBuilder {
  3651. typedef DimensionMetadata Table;
  3652. flatbuffers::FlatBufferBuilder &fbb_;
  3653. flatbuffers::uoffset_t start_;
  3654. void add_format(tflite::DimensionType format) {
  3655. fbb_.AddElement<int8_t>(DimensionMetadata::VT_FORMAT, static_cast<int8_t>(format), 0);
  3656. }
  3657. void add_dense_size(int32_t dense_size) {
  3658. fbb_.AddElement<int32_t>(DimensionMetadata::VT_DENSE_SIZE, dense_size, 0);
  3659. }
  3660. void add_array_segments_type(tflite::SparseIndexVector array_segments_type) {
  3661. fbb_.AddElement<uint8_t>(DimensionMetadata::VT_ARRAY_SEGMENTS_TYPE, static_cast<uint8_t>(array_segments_type), 0);
  3662. }
  3663. void add_array_segments(flatbuffers::Offset<void> array_segments) {
  3664. fbb_.AddOffset(DimensionMetadata::VT_ARRAY_SEGMENTS, array_segments);
  3665. }
  3666. void add_array_indices_type(tflite::SparseIndexVector array_indices_type) {
  3667. fbb_.AddElement<uint8_t>(DimensionMetadata::VT_ARRAY_INDICES_TYPE, static_cast<uint8_t>(array_indices_type), 0);
  3668. }
  3669. void add_array_indices(flatbuffers::Offset<void> array_indices) {
  3670. fbb_.AddOffset(DimensionMetadata::VT_ARRAY_INDICES, array_indices);
  3671. }
  3672. explicit DimensionMetadataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3673. : fbb_(_fbb) {
  3674. start_ = fbb_.StartTable();
  3675. }
  3676. DimensionMetadataBuilder &operator=(const DimensionMetadataBuilder &);
  3677. flatbuffers::Offset<DimensionMetadata> Finish() {
  3678. const auto end = fbb_.EndTable(start_);
  3679. auto o = flatbuffers::Offset<DimensionMetadata>(end);
  3680. return o;
  3681. }
  3682. };
  3683. inline flatbuffers::Offset<DimensionMetadata> CreateDimensionMetadata(
  3684. flatbuffers::FlatBufferBuilder &_fbb,
  3685. tflite::DimensionType format = tflite::DimensionType_DENSE,
  3686. int32_t dense_size = 0,
  3687. tflite::SparseIndexVector array_segments_type = tflite::SparseIndexVector_NONE,
  3688. flatbuffers::Offset<void> array_segments = 0,
  3689. tflite::SparseIndexVector array_indices_type = tflite::SparseIndexVector_NONE,
  3690. flatbuffers::Offset<void> array_indices = 0) {
  3691. DimensionMetadataBuilder builder_(_fbb);
  3692. builder_.add_array_indices(array_indices);
  3693. builder_.add_array_segments(array_segments);
  3694. builder_.add_dense_size(dense_size);
  3695. builder_.add_array_indices_type(array_indices_type);
  3696. builder_.add_array_segments_type(array_segments_type);
  3697. builder_.add_format(format);
  3698. return builder_.Finish();
  3699. }
  3700. flatbuffers::Offset<DimensionMetadata> CreateDimensionMetadata(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3701. struct SparsityParametersT : public flatbuffers::NativeTable {
  3702. typedef SparsityParameters TableType;
  3703. std::vector<int32_t> traversal_order;
  3704. std::vector<int32_t> block_map;
  3705. std::vector<std::unique_ptr<tflite::DimensionMetadataT>> dim_metadata;
  3706. SparsityParametersT() {
  3707. }
  3708. };
  3709. struct SparsityParameters FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3710. typedef SparsityParametersT NativeTableType;
  3711. typedef SparsityParametersBuilder Builder;
  3712. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3713. VT_TRAVERSAL_ORDER = 4,
  3714. VT_BLOCK_MAP = 6,
  3715. VT_DIM_METADATA = 8
  3716. };
  3717. const flatbuffers::Vector<int32_t> *traversal_order() const {
  3718. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_TRAVERSAL_ORDER);
  3719. }
  3720. const flatbuffers::Vector<int32_t> *block_map() const {
  3721. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_BLOCK_MAP);
  3722. }
  3723. const flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>> *dim_metadata() const {
  3724. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>> *>(VT_DIM_METADATA);
  3725. }
  3726. bool Verify(flatbuffers::Verifier &verifier) const {
  3727. return VerifyTableStart(verifier) &&
  3728. VerifyOffset(verifier, VT_TRAVERSAL_ORDER) &&
  3729. verifier.VerifyVector(traversal_order()) &&
  3730. VerifyOffset(verifier, VT_BLOCK_MAP) &&
  3731. verifier.VerifyVector(block_map()) &&
  3732. VerifyOffset(verifier, VT_DIM_METADATA) &&
  3733. verifier.VerifyVector(dim_metadata()) &&
  3734. verifier.VerifyVectorOfTables(dim_metadata()) &&
  3735. verifier.EndTable();
  3736. }
  3737. SparsityParametersT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3738. void UnPackTo(SparsityParametersT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3739. static flatbuffers::Offset<SparsityParameters> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3740. };
  3741. struct SparsityParametersBuilder {
  3742. typedef SparsityParameters Table;
  3743. flatbuffers::FlatBufferBuilder &fbb_;
  3744. flatbuffers::uoffset_t start_;
  3745. void add_traversal_order(flatbuffers::Offset<flatbuffers::Vector<int32_t>> traversal_order) {
  3746. fbb_.AddOffset(SparsityParameters::VT_TRAVERSAL_ORDER, traversal_order);
  3747. }
  3748. void add_block_map(flatbuffers::Offset<flatbuffers::Vector<int32_t>> block_map) {
  3749. fbb_.AddOffset(SparsityParameters::VT_BLOCK_MAP, block_map);
  3750. }
  3751. void add_dim_metadata(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>>> dim_metadata) {
  3752. fbb_.AddOffset(SparsityParameters::VT_DIM_METADATA, dim_metadata);
  3753. }
  3754. explicit SparsityParametersBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3755. : fbb_(_fbb) {
  3756. start_ = fbb_.StartTable();
  3757. }
  3758. SparsityParametersBuilder &operator=(const SparsityParametersBuilder &);
  3759. flatbuffers::Offset<SparsityParameters> Finish() {
  3760. const auto end = fbb_.EndTable(start_);
  3761. auto o = flatbuffers::Offset<SparsityParameters>(end);
  3762. return o;
  3763. }
  3764. };
  3765. inline flatbuffers::Offset<SparsityParameters> CreateSparsityParameters(
  3766. flatbuffers::FlatBufferBuilder &_fbb,
  3767. flatbuffers::Offset<flatbuffers::Vector<int32_t>> traversal_order = 0,
  3768. flatbuffers::Offset<flatbuffers::Vector<int32_t>> block_map = 0,
  3769. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::DimensionMetadata>>> dim_metadata = 0) {
  3770. SparsityParametersBuilder builder_(_fbb);
  3771. builder_.add_dim_metadata(dim_metadata);
  3772. builder_.add_block_map(block_map);
  3773. builder_.add_traversal_order(traversal_order);
  3774. return builder_.Finish();
  3775. }
  3776. inline flatbuffers::Offset<SparsityParameters> CreateSparsityParametersDirect(
  3777. flatbuffers::FlatBufferBuilder &_fbb,
  3778. const std::vector<int32_t> *traversal_order = nullptr,
  3779. const std::vector<int32_t> *block_map = nullptr,
  3780. const std::vector<flatbuffers::Offset<tflite::DimensionMetadata>> *dim_metadata = nullptr) {
  3781. auto traversal_order__ = traversal_order ? _fbb.CreateVector<int32_t>(*traversal_order) : 0;
  3782. auto block_map__ = block_map ? _fbb.CreateVector<int32_t>(*block_map) : 0;
  3783. auto dim_metadata__ = dim_metadata ? _fbb.CreateVector<flatbuffers::Offset<tflite::DimensionMetadata>>(*dim_metadata) : 0;
  3784. return tflite::CreateSparsityParameters(
  3785. _fbb,
  3786. traversal_order__,
  3787. block_map__,
  3788. dim_metadata__);
  3789. }
  3790. flatbuffers::Offset<SparsityParameters> CreateSparsityParameters(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3791. struct TensorT : public flatbuffers::NativeTable {
  3792. typedef Tensor TableType;
  3793. std::vector<int32_t> shape;
  3794. tflite::TensorType type;
  3795. uint32_t buffer;
  3796. std::string name;
  3797. std::unique_ptr<tflite::QuantizationParametersT> quantization;
  3798. bool is_variable;
  3799. std::unique_ptr<tflite::SparsityParametersT> sparsity;
  3800. std::vector<int32_t> shape_signature;
  3801. bool has_rank;
  3802. TensorT()
  3803. : type(tflite::TensorType_FLOAT32),
  3804. buffer(0),
  3805. is_variable(false),
  3806. has_rank(false) {
  3807. }
  3808. };
  3809. struct Tensor FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3810. typedef TensorT NativeTableType;
  3811. typedef TensorBuilder Builder;
  3812. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3813. VT_SHAPE = 4,
  3814. VT_TYPE = 6,
  3815. VT_BUFFER = 8,
  3816. VT_NAME = 10,
  3817. VT_QUANTIZATION = 12,
  3818. VT_IS_VARIABLE = 14,
  3819. VT_SPARSITY = 16,
  3820. VT_SHAPE_SIGNATURE = 18,
  3821. VT_HAS_RANK = 20
  3822. };
  3823. const flatbuffers::Vector<int32_t> *shape() const {
  3824. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SHAPE);
  3825. }
  3826. tflite::TensorType type() const {
  3827. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_TYPE, 0));
  3828. }
  3829. uint32_t buffer() const {
  3830. return GetField<uint32_t>(VT_BUFFER, 0);
  3831. }
  3832. const flatbuffers::String *name() const {
  3833. return GetPointer<const flatbuffers::String *>(VT_NAME);
  3834. }
  3835. const tflite::QuantizationParameters *quantization() const {
  3836. return GetPointer<const tflite::QuantizationParameters *>(VT_QUANTIZATION);
  3837. }
  3838. bool is_variable() const {
  3839. return GetField<uint8_t>(VT_IS_VARIABLE, 0) != 0;
  3840. }
  3841. const tflite::SparsityParameters *sparsity() const {
  3842. return GetPointer<const tflite::SparsityParameters *>(VT_SPARSITY);
  3843. }
  3844. const flatbuffers::Vector<int32_t> *shape_signature() const {
  3845. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SHAPE_SIGNATURE);
  3846. }
  3847. bool has_rank() const {
  3848. return GetField<uint8_t>(VT_HAS_RANK, 0) != 0;
  3849. }
  3850. bool Verify(flatbuffers::Verifier &verifier) const {
  3851. return VerifyTableStart(verifier) &&
  3852. VerifyOffset(verifier, VT_SHAPE) &&
  3853. verifier.VerifyVector(shape()) &&
  3854. VerifyField<int8_t>(verifier, VT_TYPE) &&
  3855. VerifyField<uint32_t>(verifier, VT_BUFFER) &&
  3856. VerifyOffset(verifier, VT_NAME) &&
  3857. verifier.VerifyString(name()) &&
  3858. VerifyOffset(verifier, VT_QUANTIZATION) &&
  3859. verifier.VerifyTable(quantization()) &&
  3860. VerifyField<uint8_t>(verifier, VT_IS_VARIABLE) &&
  3861. VerifyOffset(verifier, VT_SPARSITY) &&
  3862. verifier.VerifyTable(sparsity()) &&
  3863. VerifyOffset(verifier, VT_SHAPE_SIGNATURE) &&
  3864. verifier.VerifyVector(shape_signature()) &&
  3865. VerifyField<uint8_t>(verifier, VT_HAS_RANK) &&
  3866. verifier.EndTable();
  3867. }
  3868. TensorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3869. void UnPackTo(TensorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  3870. static flatbuffers::Offset<Tensor> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3871. };
  3872. struct TensorBuilder {
  3873. typedef Tensor Table;
  3874. flatbuffers::FlatBufferBuilder &fbb_;
  3875. flatbuffers::uoffset_t start_;
  3876. void add_shape(flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape) {
  3877. fbb_.AddOffset(Tensor::VT_SHAPE, shape);
  3878. }
  3879. void add_type(tflite::TensorType type) {
  3880. fbb_.AddElement<int8_t>(Tensor::VT_TYPE, static_cast<int8_t>(type), 0);
  3881. }
  3882. void add_buffer(uint32_t buffer) {
  3883. fbb_.AddElement<uint32_t>(Tensor::VT_BUFFER, buffer, 0);
  3884. }
  3885. void add_name(flatbuffers::Offset<flatbuffers::String> name) {
  3886. fbb_.AddOffset(Tensor::VT_NAME, name);
  3887. }
  3888. void add_quantization(flatbuffers::Offset<tflite::QuantizationParameters> quantization) {
  3889. fbb_.AddOffset(Tensor::VT_QUANTIZATION, quantization);
  3890. }
  3891. void add_is_variable(bool is_variable) {
  3892. fbb_.AddElement<uint8_t>(Tensor::VT_IS_VARIABLE, static_cast<uint8_t>(is_variable), 0);
  3893. }
  3894. void add_sparsity(flatbuffers::Offset<tflite::SparsityParameters> sparsity) {
  3895. fbb_.AddOffset(Tensor::VT_SPARSITY, sparsity);
  3896. }
  3897. void add_shape_signature(flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape_signature) {
  3898. fbb_.AddOffset(Tensor::VT_SHAPE_SIGNATURE, shape_signature);
  3899. }
  3900. void add_has_rank(bool has_rank) {
  3901. fbb_.AddElement<uint8_t>(Tensor::VT_HAS_RANK, static_cast<uint8_t>(has_rank), 0);
  3902. }
  3903. explicit TensorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  3904. : fbb_(_fbb) {
  3905. start_ = fbb_.StartTable();
  3906. }
  3907. TensorBuilder &operator=(const TensorBuilder &);
  3908. flatbuffers::Offset<Tensor> Finish() {
  3909. const auto end = fbb_.EndTable(start_);
  3910. auto o = flatbuffers::Offset<Tensor>(end);
  3911. return o;
  3912. }
  3913. };
  3914. inline flatbuffers::Offset<Tensor> CreateTensor(
  3915. flatbuffers::FlatBufferBuilder &_fbb,
  3916. flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape = 0,
  3917. tflite::TensorType type = tflite::TensorType_FLOAT32,
  3918. uint32_t buffer = 0,
  3919. flatbuffers::Offset<flatbuffers::String> name = 0,
  3920. flatbuffers::Offset<tflite::QuantizationParameters> quantization = 0,
  3921. bool is_variable = false,
  3922. flatbuffers::Offset<tflite::SparsityParameters> sparsity = 0,
  3923. flatbuffers::Offset<flatbuffers::Vector<int32_t>> shape_signature = 0,
  3924. bool has_rank = false) {
  3925. TensorBuilder builder_(_fbb);
  3926. builder_.add_shape_signature(shape_signature);
  3927. builder_.add_sparsity(sparsity);
  3928. builder_.add_quantization(quantization);
  3929. builder_.add_name(name);
  3930. builder_.add_buffer(buffer);
  3931. builder_.add_shape(shape);
  3932. builder_.add_has_rank(has_rank);
  3933. builder_.add_is_variable(is_variable);
  3934. builder_.add_type(type);
  3935. return builder_.Finish();
  3936. }
  3937. inline flatbuffers::Offset<Tensor> CreateTensorDirect(
  3938. flatbuffers::FlatBufferBuilder &_fbb,
  3939. const std::vector<int32_t> *shape = nullptr,
  3940. tflite::TensorType type = tflite::TensorType_FLOAT32,
  3941. uint32_t buffer = 0,
  3942. const char *name = nullptr,
  3943. flatbuffers::Offset<tflite::QuantizationParameters> quantization = 0,
  3944. bool is_variable = false,
  3945. flatbuffers::Offset<tflite::SparsityParameters> sparsity = 0,
  3946. const std::vector<int32_t> *shape_signature = nullptr,
  3947. bool has_rank = false) {
  3948. auto shape__ = shape ? _fbb.CreateVector<int32_t>(*shape) : 0;
  3949. auto name__ = name ? _fbb.CreateString(name) : 0;
  3950. auto shape_signature__ = shape_signature ? _fbb.CreateVector<int32_t>(*shape_signature) : 0;
  3951. return tflite::CreateTensor(
  3952. _fbb,
  3953. shape__,
  3954. type,
  3955. buffer,
  3956. name__,
  3957. quantization,
  3958. is_variable,
  3959. sparsity,
  3960. shape_signature__,
  3961. has_rank);
  3962. }
  3963. flatbuffers::Offset<Tensor> CreateTensor(flatbuffers::FlatBufferBuilder &_fbb, const TensorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  3964. struct Conv2DOptionsT : public flatbuffers::NativeTable {
  3965. typedef Conv2DOptions TableType;
  3966. tflite::Padding padding;
  3967. int32_t stride_w;
  3968. int32_t stride_h;
  3969. tflite::ActivationFunctionType fused_activation_function;
  3970. int32_t dilation_w_factor;
  3971. int32_t dilation_h_factor;
  3972. Conv2DOptionsT()
  3973. : padding(tflite::Padding_SAME),
  3974. stride_w(0),
  3975. stride_h(0),
  3976. fused_activation_function(tflite::ActivationFunctionType_NONE),
  3977. dilation_w_factor(1),
  3978. dilation_h_factor(1) {
  3979. }
  3980. };
  3981. struct Conv2DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  3982. typedef Conv2DOptionsT NativeTableType;
  3983. typedef Conv2DOptionsBuilder Builder;
  3984. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  3985. VT_PADDING = 4,
  3986. VT_STRIDE_W = 6,
  3987. VT_STRIDE_H = 8,
  3988. VT_FUSED_ACTIVATION_FUNCTION = 10,
  3989. VT_DILATION_W_FACTOR = 12,
  3990. VT_DILATION_H_FACTOR = 14
  3991. };
  3992. tflite::Padding padding() const {
  3993. return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  3994. }
  3995. int32_t stride_w() const {
  3996. return GetField<int32_t>(VT_STRIDE_W, 0);
  3997. }
  3998. int32_t stride_h() const {
  3999. return GetField<int32_t>(VT_STRIDE_H, 0);
  4000. }
  4001. tflite::ActivationFunctionType fused_activation_function() const {
  4002. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4003. }
  4004. int32_t dilation_w_factor() const {
  4005. return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
  4006. }
  4007. int32_t dilation_h_factor() const {
  4008. return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
  4009. }
  4010. bool Verify(flatbuffers::Verifier &verifier) const {
  4011. return VerifyTableStart(verifier) &&
  4012. VerifyField<int8_t>(verifier, VT_PADDING) &&
  4013. VerifyField<int32_t>(verifier, VT_STRIDE_W) &&
  4014. VerifyField<int32_t>(verifier, VT_STRIDE_H) &&
  4015. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  4016. VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR) &&
  4017. VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR) &&
  4018. verifier.EndTable();
  4019. }
  4020. Conv2DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4021. void UnPackTo(Conv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4022. static flatbuffers::Offset<Conv2DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4023. };
  4024. struct Conv2DOptionsBuilder {
  4025. typedef Conv2DOptions Table;
  4026. flatbuffers::FlatBufferBuilder &fbb_;
  4027. flatbuffers::uoffset_t start_;
  4028. void add_padding(tflite::Padding padding) {
  4029. fbb_.AddElement<int8_t>(Conv2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  4030. }
  4031. void add_stride_w(int32_t stride_w) {
  4032. fbb_.AddElement<int32_t>(Conv2DOptions::VT_STRIDE_W, stride_w, 0);
  4033. }
  4034. void add_stride_h(int32_t stride_h) {
  4035. fbb_.AddElement<int32_t>(Conv2DOptions::VT_STRIDE_H, stride_h, 0);
  4036. }
  4037. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4038. fbb_.AddElement<int8_t>(Conv2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4039. }
  4040. void add_dilation_w_factor(int32_t dilation_w_factor) {
  4041. fbb_.AddElement<int32_t>(Conv2DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
  4042. }
  4043. void add_dilation_h_factor(int32_t dilation_h_factor) {
  4044. fbb_.AddElement<int32_t>(Conv2DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
  4045. }
  4046. explicit Conv2DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4047. : fbb_(_fbb) {
  4048. start_ = fbb_.StartTable();
  4049. }
  4050. Conv2DOptionsBuilder &operator=(const Conv2DOptionsBuilder &);
  4051. flatbuffers::Offset<Conv2DOptions> Finish() {
  4052. const auto end = fbb_.EndTable(start_);
  4053. auto o = flatbuffers::Offset<Conv2DOptions>(end);
  4054. return o;
  4055. }
  4056. };
  4057. inline flatbuffers::Offset<Conv2DOptions> CreateConv2DOptions(
  4058. flatbuffers::FlatBufferBuilder &_fbb,
  4059. tflite::Padding padding = tflite::Padding_SAME,
  4060. int32_t stride_w = 0,
  4061. int32_t stride_h = 0,
  4062. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4063. int32_t dilation_w_factor = 1,
  4064. int32_t dilation_h_factor = 1) {
  4065. Conv2DOptionsBuilder builder_(_fbb);
  4066. builder_.add_dilation_h_factor(dilation_h_factor);
  4067. builder_.add_dilation_w_factor(dilation_w_factor);
  4068. builder_.add_stride_h(stride_h);
  4069. builder_.add_stride_w(stride_w);
  4070. builder_.add_fused_activation_function(fused_activation_function);
  4071. builder_.add_padding(padding);
  4072. return builder_.Finish();
  4073. }
  4074. flatbuffers::Offset<Conv2DOptions> CreateConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4075. struct Conv3DOptionsT : public flatbuffers::NativeTable {
  4076. typedef Conv3DOptions TableType;
  4077. tflite::Padding padding;
  4078. int32_t stride_d;
  4079. int32_t stride_w;
  4080. int32_t stride_h;
  4081. tflite::ActivationFunctionType fused_activation_function;
  4082. int32_t dilation_d_factor;
  4083. int32_t dilation_w_factor;
  4084. int32_t dilation_h_factor;
  4085. Conv3DOptionsT()
  4086. : padding(tflite::Padding_SAME),
  4087. stride_d(0),
  4088. stride_w(0),
  4089. stride_h(0),
  4090. fused_activation_function(tflite::ActivationFunctionType_NONE),
  4091. dilation_d_factor(1),
  4092. dilation_w_factor(1),
  4093. dilation_h_factor(1) {
  4094. }
  4095. };
  4096. struct Conv3DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4097. typedef Conv3DOptionsT NativeTableType;
  4098. typedef Conv3DOptionsBuilder Builder;
  4099. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4100. VT_PADDING = 4,
  4101. VT_STRIDE_D = 6,
  4102. VT_STRIDE_W = 8,
  4103. VT_STRIDE_H = 10,
  4104. VT_FUSED_ACTIVATION_FUNCTION = 12,
  4105. VT_DILATION_D_FACTOR = 14,
  4106. VT_DILATION_W_FACTOR = 16,
  4107. VT_DILATION_H_FACTOR = 18
  4108. };
  4109. tflite::Padding padding() const {
  4110. return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  4111. }
  4112. int32_t stride_d() const {
  4113. return GetField<int32_t>(VT_STRIDE_D, 0);
  4114. }
  4115. int32_t stride_w() const {
  4116. return GetField<int32_t>(VT_STRIDE_W, 0);
  4117. }
  4118. int32_t stride_h() const {
  4119. return GetField<int32_t>(VT_STRIDE_H, 0);
  4120. }
  4121. tflite::ActivationFunctionType fused_activation_function() const {
  4122. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4123. }
  4124. int32_t dilation_d_factor() const {
  4125. return GetField<int32_t>(VT_DILATION_D_FACTOR, 1);
  4126. }
  4127. int32_t dilation_w_factor() const {
  4128. return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
  4129. }
  4130. int32_t dilation_h_factor() const {
  4131. return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
  4132. }
  4133. bool Verify(flatbuffers::Verifier &verifier) const {
  4134. return VerifyTableStart(verifier) &&
  4135. VerifyField<int8_t>(verifier, VT_PADDING) &&
  4136. VerifyField<int32_t>(verifier, VT_STRIDE_D) &&
  4137. VerifyField<int32_t>(verifier, VT_STRIDE_W) &&
  4138. VerifyField<int32_t>(verifier, VT_STRIDE_H) &&
  4139. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  4140. VerifyField<int32_t>(verifier, VT_DILATION_D_FACTOR) &&
  4141. VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR) &&
  4142. VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR) &&
  4143. verifier.EndTable();
  4144. }
  4145. Conv3DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4146. void UnPackTo(Conv3DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4147. static flatbuffers::Offset<Conv3DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4148. };
  4149. struct Conv3DOptionsBuilder {
  4150. typedef Conv3DOptions Table;
  4151. flatbuffers::FlatBufferBuilder &fbb_;
  4152. flatbuffers::uoffset_t start_;
  4153. void add_padding(tflite::Padding padding) {
  4154. fbb_.AddElement<int8_t>(Conv3DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  4155. }
  4156. void add_stride_d(int32_t stride_d) {
  4157. fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_D, stride_d, 0);
  4158. }
  4159. void add_stride_w(int32_t stride_w) {
  4160. fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_W, stride_w, 0);
  4161. }
  4162. void add_stride_h(int32_t stride_h) {
  4163. fbb_.AddElement<int32_t>(Conv3DOptions::VT_STRIDE_H, stride_h, 0);
  4164. }
  4165. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4166. fbb_.AddElement<int8_t>(Conv3DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4167. }
  4168. void add_dilation_d_factor(int32_t dilation_d_factor) {
  4169. fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_D_FACTOR, dilation_d_factor, 1);
  4170. }
  4171. void add_dilation_w_factor(int32_t dilation_w_factor) {
  4172. fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
  4173. }
  4174. void add_dilation_h_factor(int32_t dilation_h_factor) {
  4175. fbb_.AddElement<int32_t>(Conv3DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
  4176. }
  4177. explicit Conv3DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4178. : fbb_(_fbb) {
  4179. start_ = fbb_.StartTable();
  4180. }
  4181. Conv3DOptionsBuilder &operator=(const Conv3DOptionsBuilder &);
  4182. flatbuffers::Offset<Conv3DOptions> Finish() {
  4183. const auto end = fbb_.EndTable(start_);
  4184. auto o = flatbuffers::Offset<Conv3DOptions>(end);
  4185. return o;
  4186. }
  4187. };
  4188. inline flatbuffers::Offset<Conv3DOptions> CreateConv3DOptions(
  4189. flatbuffers::FlatBufferBuilder &_fbb,
  4190. tflite::Padding padding = tflite::Padding_SAME,
  4191. int32_t stride_d = 0,
  4192. int32_t stride_w = 0,
  4193. int32_t stride_h = 0,
  4194. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4195. int32_t dilation_d_factor = 1,
  4196. int32_t dilation_w_factor = 1,
  4197. int32_t dilation_h_factor = 1) {
  4198. Conv3DOptionsBuilder builder_(_fbb);
  4199. builder_.add_dilation_h_factor(dilation_h_factor);
  4200. builder_.add_dilation_w_factor(dilation_w_factor);
  4201. builder_.add_dilation_d_factor(dilation_d_factor);
  4202. builder_.add_stride_h(stride_h);
  4203. builder_.add_stride_w(stride_w);
  4204. builder_.add_stride_d(stride_d);
  4205. builder_.add_fused_activation_function(fused_activation_function);
  4206. builder_.add_padding(padding);
  4207. return builder_.Finish();
  4208. }
  4209. flatbuffers::Offset<Conv3DOptions> CreateConv3DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4210. struct Pool2DOptionsT : public flatbuffers::NativeTable {
  4211. typedef Pool2DOptions TableType;
  4212. tflite::Padding padding;
  4213. int32_t stride_w;
  4214. int32_t stride_h;
  4215. int32_t filter_width;
  4216. int32_t filter_height;
  4217. tflite::ActivationFunctionType fused_activation_function;
  4218. Pool2DOptionsT()
  4219. : padding(tflite::Padding_SAME),
  4220. stride_w(0),
  4221. stride_h(0),
  4222. filter_width(0),
  4223. filter_height(0),
  4224. fused_activation_function(tflite::ActivationFunctionType_NONE) {
  4225. }
  4226. };
  4227. struct Pool2DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4228. typedef Pool2DOptionsT NativeTableType;
  4229. typedef Pool2DOptionsBuilder Builder;
  4230. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4231. VT_PADDING = 4,
  4232. VT_STRIDE_W = 6,
  4233. VT_STRIDE_H = 8,
  4234. VT_FILTER_WIDTH = 10,
  4235. VT_FILTER_HEIGHT = 12,
  4236. VT_FUSED_ACTIVATION_FUNCTION = 14
  4237. };
  4238. tflite::Padding padding() const {
  4239. return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  4240. }
  4241. int32_t stride_w() const {
  4242. return GetField<int32_t>(VT_STRIDE_W, 0);
  4243. }
  4244. int32_t stride_h() const {
  4245. return GetField<int32_t>(VT_STRIDE_H, 0);
  4246. }
  4247. int32_t filter_width() const {
  4248. return GetField<int32_t>(VT_FILTER_WIDTH, 0);
  4249. }
  4250. int32_t filter_height() const {
  4251. return GetField<int32_t>(VT_FILTER_HEIGHT, 0);
  4252. }
  4253. tflite::ActivationFunctionType fused_activation_function() const {
  4254. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4255. }
  4256. bool Verify(flatbuffers::Verifier &verifier) const {
  4257. return VerifyTableStart(verifier) &&
  4258. VerifyField<int8_t>(verifier, VT_PADDING) &&
  4259. VerifyField<int32_t>(verifier, VT_STRIDE_W) &&
  4260. VerifyField<int32_t>(verifier, VT_STRIDE_H) &&
  4261. VerifyField<int32_t>(verifier, VT_FILTER_WIDTH) &&
  4262. VerifyField<int32_t>(verifier, VT_FILTER_HEIGHT) &&
  4263. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  4264. verifier.EndTable();
  4265. }
  4266. Pool2DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4267. void UnPackTo(Pool2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4268. static flatbuffers::Offset<Pool2DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4269. };
  4270. struct Pool2DOptionsBuilder {
  4271. typedef Pool2DOptions Table;
  4272. flatbuffers::FlatBufferBuilder &fbb_;
  4273. flatbuffers::uoffset_t start_;
  4274. void add_padding(tflite::Padding padding) {
  4275. fbb_.AddElement<int8_t>(Pool2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  4276. }
  4277. void add_stride_w(int32_t stride_w) {
  4278. fbb_.AddElement<int32_t>(Pool2DOptions::VT_STRIDE_W, stride_w, 0);
  4279. }
  4280. void add_stride_h(int32_t stride_h) {
  4281. fbb_.AddElement<int32_t>(Pool2DOptions::VT_STRIDE_H, stride_h, 0);
  4282. }
  4283. void add_filter_width(int32_t filter_width) {
  4284. fbb_.AddElement<int32_t>(Pool2DOptions::VT_FILTER_WIDTH, filter_width, 0);
  4285. }
  4286. void add_filter_height(int32_t filter_height) {
  4287. fbb_.AddElement<int32_t>(Pool2DOptions::VT_FILTER_HEIGHT, filter_height, 0);
  4288. }
  4289. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4290. fbb_.AddElement<int8_t>(Pool2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4291. }
  4292. explicit Pool2DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4293. : fbb_(_fbb) {
  4294. start_ = fbb_.StartTable();
  4295. }
  4296. Pool2DOptionsBuilder &operator=(const Pool2DOptionsBuilder &);
  4297. flatbuffers::Offset<Pool2DOptions> Finish() {
  4298. const auto end = fbb_.EndTable(start_);
  4299. auto o = flatbuffers::Offset<Pool2DOptions>(end);
  4300. return o;
  4301. }
  4302. };
  4303. inline flatbuffers::Offset<Pool2DOptions> CreatePool2DOptions(
  4304. flatbuffers::FlatBufferBuilder &_fbb,
  4305. tflite::Padding padding = tflite::Padding_SAME,
  4306. int32_t stride_w = 0,
  4307. int32_t stride_h = 0,
  4308. int32_t filter_width = 0,
  4309. int32_t filter_height = 0,
  4310. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
  4311. Pool2DOptionsBuilder builder_(_fbb);
  4312. builder_.add_filter_height(filter_height);
  4313. builder_.add_filter_width(filter_width);
  4314. builder_.add_stride_h(stride_h);
  4315. builder_.add_stride_w(stride_w);
  4316. builder_.add_fused_activation_function(fused_activation_function);
  4317. builder_.add_padding(padding);
  4318. return builder_.Finish();
  4319. }
  4320. flatbuffers::Offset<Pool2DOptions> CreatePool2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4321. struct DepthwiseConv2DOptionsT : public flatbuffers::NativeTable {
  4322. typedef DepthwiseConv2DOptions TableType;
  4323. tflite::Padding padding;
  4324. int32_t stride_w;
  4325. int32_t stride_h;
  4326. int32_t depth_multiplier;
  4327. tflite::ActivationFunctionType fused_activation_function;
  4328. int32_t dilation_w_factor;
  4329. int32_t dilation_h_factor;
  4330. DepthwiseConv2DOptionsT()
  4331. : padding(tflite::Padding_SAME),
  4332. stride_w(0),
  4333. stride_h(0),
  4334. depth_multiplier(0),
  4335. fused_activation_function(tflite::ActivationFunctionType_NONE),
  4336. dilation_w_factor(1),
  4337. dilation_h_factor(1) {
  4338. }
  4339. };
  4340. struct DepthwiseConv2DOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4341. typedef DepthwiseConv2DOptionsT NativeTableType;
  4342. typedef DepthwiseConv2DOptionsBuilder Builder;
  4343. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4344. VT_PADDING = 4,
  4345. VT_STRIDE_W = 6,
  4346. VT_STRIDE_H = 8,
  4347. VT_DEPTH_MULTIPLIER = 10,
  4348. VT_FUSED_ACTIVATION_FUNCTION = 12,
  4349. VT_DILATION_W_FACTOR = 14,
  4350. VT_DILATION_H_FACTOR = 16
  4351. };
  4352. tflite::Padding padding() const {
  4353. return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  4354. }
  4355. int32_t stride_w() const {
  4356. return GetField<int32_t>(VT_STRIDE_W, 0);
  4357. }
  4358. int32_t stride_h() const {
  4359. return GetField<int32_t>(VT_STRIDE_H, 0);
  4360. }
  4361. int32_t depth_multiplier() const {
  4362. return GetField<int32_t>(VT_DEPTH_MULTIPLIER, 0);
  4363. }
  4364. tflite::ActivationFunctionType fused_activation_function() const {
  4365. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4366. }
  4367. int32_t dilation_w_factor() const {
  4368. return GetField<int32_t>(VT_DILATION_W_FACTOR, 1);
  4369. }
  4370. int32_t dilation_h_factor() const {
  4371. return GetField<int32_t>(VT_DILATION_H_FACTOR, 1);
  4372. }
  4373. bool Verify(flatbuffers::Verifier &verifier) const {
  4374. return VerifyTableStart(verifier) &&
  4375. VerifyField<int8_t>(verifier, VT_PADDING) &&
  4376. VerifyField<int32_t>(verifier, VT_STRIDE_W) &&
  4377. VerifyField<int32_t>(verifier, VT_STRIDE_H) &&
  4378. VerifyField<int32_t>(verifier, VT_DEPTH_MULTIPLIER) &&
  4379. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  4380. VerifyField<int32_t>(verifier, VT_DILATION_W_FACTOR) &&
  4381. VerifyField<int32_t>(verifier, VT_DILATION_H_FACTOR) &&
  4382. verifier.EndTable();
  4383. }
  4384. DepthwiseConv2DOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4385. void UnPackTo(DepthwiseConv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4386. static flatbuffers::Offset<DepthwiseConv2DOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4387. };
  4388. struct DepthwiseConv2DOptionsBuilder {
  4389. typedef DepthwiseConv2DOptions Table;
  4390. flatbuffers::FlatBufferBuilder &fbb_;
  4391. flatbuffers::uoffset_t start_;
  4392. void add_padding(tflite::Padding padding) {
  4393. fbb_.AddElement<int8_t>(DepthwiseConv2DOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  4394. }
  4395. void add_stride_w(int32_t stride_w) {
  4396. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_STRIDE_W, stride_w, 0);
  4397. }
  4398. void add_stride_h(int32_t stride_h) {
  4399. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_STRIDE_H, stride_h, 0);
  4400. }
  4401. void add_depth_multiplier(int32_t depth_multiplier) {
  4402. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DEPTH_MULTIPLIER, depth_multiplier, 0);
  4403. }
  4404. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4405. fbb_.AddElement<int8_t>(DepthwiseConv2DOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4406. }
  4407. void add_dilation_w_factor(int32_t dilation_w_factor) {
  4408. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DILATION_W_FACTOR, dilation_w_factor, 1);
  4409. }
  4410. void add_dilation_h_factor(int32_t dilation_h_factor) {
  4411. fbb_.AddElement<int32_t>(DepthwiseConv2DOptions::VT_DILATION_H_FACTOR, dilation_h_factor, 1);
  4412. }
  4413. explicit DepthwiseConv2DOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4414. : fbb_(_fbb) {
  4415. start_ = fbb_.StartTable();
  4416. }
  4417. DepthwiseConv2DOptionsBuilder &operator=(const DepthwiseConv2DOptionsBuilder &);
  4418. flatbuffers::Offset<DepthwiseConv2DOptions> Finish() {
  4419. const auto end = fbb_.EndTable(start_);
  4420. auto o = flatbuffers::Offset<DepthwiseConv2DOptions>(end);
  4421. return o;
  4422. }
  4423. };
  4424. inline flatbuffers::Offset<DepthwiseConv2DOptions> CreateDepthwiseConv2DOptions(
  4425. flatbuffers::FlatBufferBuilder &_fbb,
  4426. tflite::Padding padding = tflite::Padding_SAME,
  4427. int32_t stride_w = 0,
  4428. int32_t stride_h = 0,
  4429. int32_t depth_multiplier = 0,
  4430. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4431. int32_t dilation_w_factor = 1,
  4432. int32_t dilation_h_factor = 1) {
  4433. DepthwiseConv2DOptionsBuilder builder_(_fbb);
  4434. builder_.add_dilation_h_factor(dilation_h_factor);
  4435. builder_.add_dilation_w_factor(dilation_w_factor);
  4436. builder_.add_depth_multiplier(depth_multiplier);
  4437. builder_.add_stride_h(stride_h);
  4438. builder_.add_stride_w(stride_w);
  4439. builder_.add_fused_activation_function(fused_activation_function);
  4440. builder_.add_padding(padding);
  4441. return builder_.Finish();
  4442. }
  4443. flatbuffers::Offset<DepthwiseConv2DOptions> CreateDepthwiseConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4444. struct ConcatEmbeddingsOptionsT : public flatbuffers::NativeTable {
  4445. typedef ConcatEmbeddingsOptions TableType;
  4446. int32_t num_channels;
  4447. std::vector<int32_t> num_columns_per_channel;
  4448. std::vector<int32_t> embedding_dim_per_channel;
  4449. ConcatEmbeddingsOptionsT()
  4450. : num_channels(0) {
  4451. }
  4452. };
  4453. struct ConcatEmbeddingsOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4454. typedef ConcatEmbeddingsOptionsT NativeTableType;
  4455. typedef ConcatEmbeddingsOptionsBuilder Builder;
  4456. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4457. VT_NUM_CHANNELS = 4,
  4458. VT_NUM_COLUMNS_PER_CHANNEL = 6,
  4459. VT_EMBEDDING_DIM_PER_CHANNEL = 8
  4460. };
  4461. int32_t num_channels() const {
  4462. return GetField<int32_t>(VT_NUM_CHANNELS, 0);
  4463. }
  4464. const flatbuffers::Vector<int32_t> *num_columns_per_channel() const {
  4465. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_NUM_COLUMNS_PER_CHANNEL);
  4466. }
  4467. const flatbuffers::Vector<int32_t> *embedding_dim_per_channel() const {
  4468. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_EMBEDDING_DIM_PER_CHANNEL);
  4469. }
  4470. bool Verify(flatbuffers::Verifier &verifier) const {
  4471. return VerifyTableStart(verifier) &&
  4472. VerifyField<int32_t>(verifier, VT_NUM_CHANNELS) &&
  4473. VerifyOffset(verifier, VT_NUM_COLUMNS_PER_CHANNEL) &&
  4474. verifier.VerifyVector(num_columns_per_channel()) &&
  4475. VerifyOffset(verifier, VT_EMBEDDING_DIM_PER_CHANNEL) &&
  4476. verifier.VerifyVector(embedding_dim_per_channel()) &&
  4477. verifier.EndTable();
  4478. }
  4479. ConcatEmbeddingsOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4480. void UnPackTo(ConcatEmbeddingsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4481. static flatbuffers::Offset<ConcatEmbeddingsOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4482. };
  4483. struct ConcatEmbeddingsOptionsBuilder {
  4484. typedef ConcatEmbeddingsOptions Table;
  4485. flatbuffers::FlatBufferBuilder &fbb_;
  4486. flatbuffers::uoffset_t start_;
  4487. void add_num_channels(int32_t num_channels) {
  4488. fbb_.AddElement<int32_t>(ConcatEmbeddingsOptions::VT_NUM_CHANNELS, num_channels, 0);
  4489. }
  4490. void add_num_columns_per_channel(flatbuffers::Offset<flatbuffers::Vector<int32_t>> num_columns_per_channel) {
  4491. fbb_.AddOffset(ConcatEmbeddingsOptions::VT_NUM_COLUMNS_PER_CHANNEL, num_columns_per_channel);
  4492. }
  4493. void add_embedding_dim_per_channel(flatbuffers::Offset<flatbuffers::Vector<int32_t>> embedding_dim_per_channel) {
  4494. fbb_.AddOffset(ConcatEmbeddingsOptions::VT_EMBEDDING_DIM_PER_CHANNEL, embedding_dim_per_channel);
  4495. }
  4496. explicit ConcatEmbeddingsOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4497. : fbb_(_fbb) {
  4498. start_ = fbb_.StartTable();
  4499. }
  4500. ConcatEmbeddingsOptionsBuilder &operator=(const ConcatEmbeddingsOptionsBuilder &);
  4501. flatbuffers::Offset<ConcatEmbeddingsOptions> Finish() {
  4502. const auto end = fbb_.EndTable(start_);
  4503. auto o = flatbuffers::Offset<ConcatEmbeddingsOptions>(end);
  4504. return o;
  4505. }
  4506. };
  4507. inline flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptions(
  4508. flatbuffers::FlatBufferBuilder &_fbb,
  4509. int32_t num_channels = 0,
  4510. flatbuffers::Offset<flatbuffers::Vector<int32_t>> num_columns_per_channel = 0,
  4511. flatbuffers::Offset<flatbuffers::Vector<int32_t>> embedding_dim_per_channel = 0) {
  4512. ConcatEmbeddingsOptionsBuilder builder_(_fbb);
  4513. builder_.add_embedding_dim_per_channel(embedding_dim_per_channel);
  4514. builder_.add_num_columns_per_channel(num_columns_per_channel);
  4515. builder_.add_num_channels(num_channels);
  4516. return builder_.Finish();
  4517. }
  4518. inline flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptionsDirect(
  4519. flatbuffers::FlatBufferBuilder &_fbb,
  4520. int32_t num_channels = 0,
  4521. const std::vector<int32_t> *num_columns_per_channel = nullptr,
  4522. const std::vector<int32_t> *embedding_dim_per_channel = nullptr) {
  4523. auto num_columns_per_channel__ = num_columns_per_channel ? _fbb.CreateVector<int32_t>(*num_columns_per_channel) : 0;
  4524. auto embedding_dim_per_channel__ = embedding_dim_per_channel ? _fbb.CreateVector<int32_t>(*embedding_dim_per_channel) : 0;
  4525. return tflite::CreateConcatEmbeddingsOptions(
  4526. _fbb,
  4527. num_channels,
  4528. num_columns_per_channel__,
  4529. embedding_dim_per_channel__);
  4530. }
  4531. flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4532. struct LSHProjectionOptionsT : public flatbuffers::NativeTable {
  4533. typedef LSHProjectionOptions TableType;
  4534. tflite::LSHProjectionType type;
  4535. LSHProjectionOptionsT()
  4536. : type(tflite::LSHProjectionType_UNKNOWN) {
  4537. }
  4538. };
  4539. struct LSHProjectionOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4540. typedef LSHProjectionOptionsT NativeTableType;
  4541. typedef LSHProjectionOptionsBuilder Builder;
  4542. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4543. VT_TYPE = 4
  4544. };
  4545. tflite::LSHProjectionType type() const {
  4546. return static_cast<tflite::LSHProjectionType>(GetField<int8_t>(VT_TYPE, 0));
  4547. }
  4548. bool Verify(flatbuffers::Verifier &verifier) const {
  4549. return VerifyTableStart(verifier) &&
  4550. VerifyField<int8_t>(verifier, VT_TYPE) &&
  4551. verifier.EndTable();
  4552. }
  4553. LSHProjectionOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4554. void UnPackTo(LSHProjectionOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4555. static flatbuffers::Offset<LSHProjectionOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4556. };
  4557. struct LSHProjectionOptionsBuilder {
  4558. typedef LSHProjectionOptions Table;
  4559. flatbuffers::FlatBufferBuilder &fbb_;
  4560. flatbuffers::uoffset_t start_;
  4561. void add_type(tflite::LSHProjectionType type) {
  4562. fbb_.AddElement<int8_t>(LSHProjectionOptions::VT_TYPE, static_cast<int8_t>(type), 0);
  4563. }
  4564. explicit LSHProjectionOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4565. : fbb_(_fbb) {
  4566. start_ = fbb_.StartTable();
  4567. }
  4568. LSHProjectionOptionsBuilder &operator=(const LSHProjectionOptionsBuilder &);
  4569. flatbuffers::Offset<LSHProjectionOptions> Finish() {
  4570. const auto end = fbb_.EndTable(start_);
  4571. auto o = flatbuffers::Offset<LSHProjectionOptions>(end);
  4572. return o;
  4573. }
  4574. };
  4575. inline flatbuffers::Offset<LSHProjectionOptions> CreateLSHProjectionOptions(
  4576. flatbuffers::FlatBufferBuilder &_fbb,
  4577. tflite::LSHProjectionType type = tflite::LSHProjectionType_UNKNOWN) {
  4578. LSHProjectionOptionsBuilder builder_(_fbb);
  4579. builder_.add_type(type);
  4580. return builder_.Finish();
  4581. }
  4582. flatbuffers::Offset<LSHProjectionOptions> CreateLSHProjectionOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4583. struct SVDFOptionsT : public flatbuffers::NativeTable {
  4584. typedef SVDFOptions TableType;
  4585. int32_t rank;
  4586. tflite::ActivationFunctionType fused_activation_function;
  4587. bool asymmetric_quantize_inputs;
  4588. SVDFOptionsT()
  4589. : rank(0),
  4590. fused_activation_function(tflite::ActivationFunctionType_NONE),
  4591. asymmetric_quantize_inputs(false) {
  4592. }
  4593. };
  4594. struct SVDFOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4595. typedef SVDFOptionsT NativeTableType;
  4596. typedef SVDFOptionsBuilder Builder;
  4597. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4598. VT_RANK = 4,
  4599. VT_FUSED_ACTIVATION_FUNCTION = 6,
  4600. VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
  4601. };
  4602. int32_t rank() const {
  4603. return GetField<int32_t>(VT_RANK, 0);
  4604. }
  4605. tflite::ActivationFunctionType fused_activation_function() const {
  4606. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4607. }
  4608. bool asymmetric_quantize_inputs() const {
  4609. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  4610. }
  4611. bool Verify(flatbuffers::Verifier &verifier) const {
  4612. return VerifyTableStart(verifier) &&
  4613. VerifyField<int32_t>(verifier, VT_RANK) &&
  4614. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  4615. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS) &&
  4616. verifier.EndTable();
  4617. }
  4618. SVDFOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4619. void UnPackTo(SVDFOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4620. static flatbuffers::Offset<SVDFOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4621. };
  4622. struct SVDFOptionsBuilder {
  4623. typedef SVDFOptions Table;
  4624. flatbuffers::FlatBufferBuilder &fbb_;
  4625. flatbuffers::uoffset_t start_;
  4626. void add_rank(int32_t rank) {
  4627. fbb_.AddElement<int32_t>(SVDFOptions::VT_RANK, rank, 0);
  4628. }
  4629. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4630. fbb_.AddElement<int8_t>(SVDFOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4631. }
  4632. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  4633. fbb_.AddElement<uint8_t>(SVDFOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  4634. }
  4635. explicit SVDFOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4636. : fbb_(_fbb) {
  4637. start_ = fbb_.StartTable();
  4638. }
  4639. SVDFOptionsBuilder &operator=(const SVDFOptionsBuilder &);
  4640. flatbuffers::Offset<SVDFOptions> Finish() {
  4641. const auto end = fbb_.EndTable(start_);
  4642. auto o = flatbuffers::Offset<SVDFOptions>(end);
  4643. return o;
  4644. }
  4645. };
  4646. inline flatbuffers::Offset<SVDFOptions> CreateSVDFOptions(
  4647. flatbuffers::FlatBufferBuilder &_fbb,
  4648. int32_t rank = 0,
  4649. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4650. bool asymmetric_quantize_inputs = false) {
  4651. SVDFOptionsBuilder builder_(_fbb);
  4652. builder_.add_rank(rank);
  4653. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  4654. builder_.add_fused_activation_function(fused_activation_function);
  4655. return builder_.Finish();
  4656. }
  4657. flatbuffers::Offset<SVDFOptions> CreateSVDFOptions(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4658. struct RNNOptionsT : public flatbuffers::NativeTable {
  4659. typedef RNNOptions TableType;
  4660. tflite::ActivationFunctionType fused_activation_function;
  4661. bool asymmetric_quantize_inputs;
  4662. RNNOptionsT()
  4663. : fused_activation_function(tflite::ActivationFunctionType_NONE),
  4664. asymmetric_quantize_inputs(false) {
  4665. }
  4666. };
  4667. struct RNNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4668. typedef RNNOptionsT NativeTableType;
  4669. typedef RNNOptionsBuilder Builder;
  4670. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4671. VT_FUSED_ACTIVATION_FUNCTION = 4,
  4672. VT_ASYMMETRIC_QUANTIZE_INPUTS = 6
  4673. };
  4674. tflite::ActivationFunctionType fused_activation_function() const {
  4675. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4676. }
  4677. bool asymmetric_quantize_inputs() const {
  4678. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  4679. }
  4680. bool Verify(flatbuffers::Verifier &verifier) const {
  4681. return VerifyTableStart(verifier) &&
  4682. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  4683. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS) &&
  4684. verifier.EndTable();
  4685. }
  4686. RNNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4687. void UnPackTo(RNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4688. static flatbuffers::Offset<RNNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4689. };
  4690. struct RNNOptionsBuilder {
  4691. typedef RNNOptions Table;
  4692. flatbuffers::FlatBufferBuilder &fbb_;
  4693. flatbuffers::uoffset_t start_;
  4694. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4695. fbb_.AddElement<int8_t>(RNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4696. }
  4697. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  4698. fbb_.AddElement<uint8_t>(RNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  4699. }
  4700. explicit RNNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4701. : fbb_(_fbb) {
  4702. start_ = fbb_.StartTable();
  4703. }
  4704. RNNOptionsBuilder &operator=(const RNNOptionsBuilder &);
  4705. flatbuffers::Offset<RNNOptions> Finish() {
  4706. const auto end = fbb_.EndTable(start_);
  4707. auto o = flatbuffers::Offset<RNNOptions>(end);
  4708. return o;
  4709. }
  4710. };
  4711. inline flatbuffers::Offset<RNNOptions> CreateRNNOptions(
  4712. flatbuffers::FlatBufferBuilder &_fbb,
  4713. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4714. bool asymmetric_quantize_inputs = false) {
  4715. RNNOptionsBuilder builder_(_fbb);
  4716. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  4717. builder_.add_fused_activation_function(fused_activation_function);
  4718. return builder_.Finish();
  4719. }
  4720. flatbuffers::Offset<RNNOptions> CreateRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4721. struct SequenceRNNOptionsT : public flatbuffers::NativeTable {
  4722. typedef SequenceRNNOptions TableType;
  4723. bool time_major;
  4724. tflite::ActivationFunctionType fused_activation_function;
  4725. bool asymmetric_quantize_inputs;
  4726. SequenceRNNOptionsT()
  4727. : time_major(false),
  4728. fused_activation_function(tflite::ActivationFunctionType_NONE),
  4729. asymmetric_quantize_inputs(false) {
  4730. }
  4731. };
  4732. struct SequenceRNNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4733. typedef SequenceRNNOptionsT NativeTableType;
  4734. typedef SequenceRNNOptionsBuilder Builder;
  4735. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4736. VT_TIME_MAJOR = 4,
  4737. VT_FUSED_ACTIVATION_FUNCTION = 6,
  4738. VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
  4739. };
  4740. bool time_major() const {
  4741. return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
  4742. }
  4743. tflite::ActivationFunctionType fused_activation_function() const {
  4744. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4745. }
  4746. bool asymmetric_quantize_inputs() const {
  4747. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  4748. }
  4749. bool Verify(flatbuffers::Verifier &verifier) const {
  4750. return VerifyTableStart(verifier) &&
  4751. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR) &&
  4752. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  4753. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS) &&
  4754. verifier.EndTable();
  4755. }
  4756. SequenceRNNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4757. void UnPackTo(SequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4758. static flatbuffers::Offset<SequenceRNNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4759. };
  4760. struct SequenceRNNOptionsBuilder {
  4761. typedef SequenceRNNOptions Table;
  4762. flatbuffers::FlatBufferBuilder &fbb_;
  4763. flatbuffers::uoffset_t start_;
  4764. void add_time_major(bool time_major) {
  4765. fbb_.AddElement<uint8_t>(SequenceRNNOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
  4766. }
  4767. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4768. fbb_.AddElement<int8_t>(SequenceRNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4769. }
  4770. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  4771. fbb_.AddElement<uint8_t>(SequenceRNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  4772. }
  4773. explicit SequenceRNNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4774. : fbb_(_fbb) {
  4775. start_ = fbb_.StartTable();
  4776. }
  4777. SequenceRNNOptionsBuilder &operator=(const SequenceRNNOptionsBuilder &);
  4778. flatbuffers::Offset<SequenceRNNOptions> Finish() {
  4779. const auto end = fbb_.EndTable(start_);
  4780. auto o = flatbuffers::Offset<SequenceRNNOptions>(end);
  4781. return o;
  4782. }
  4783. };
  4784. inline flatbuffers::Offset<SequenceRNNOptions> CreateSequenceRNNOptions(
  4785. flatbuffers::FlatBufferBuilder &_fbb,
  4786. bool time_major = false,
  4787. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4788. bool asymmetric_quantize_inputs = false) {
  4789. SequenceRNNOptionsBuilder builder_(_fbb);
  4790. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  4791. builder_.add_fused_activation_function(fused_activation_function);
  4792. builder_.add_time_major(time_major);
  4793. return builder_.Finish();
  4794. }
  4795. flatbuffers::Offset<SequenceRNNOptions> CreateSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4796. struct BidirectionalSequenceRNNOptionsT : public flatbuffers::NativeTable {
  4797. typedef BidirectionalSequenceRNNOptions TableType;
  4798. bool time_major;
  4799. tflite::ActivationFunctionType fused_activation_function;
  4800. bool merge_outputs;
  4801. bool asymmetric_quantize_inputs;
  4802. BidirectionalSequenceRNNOptionsT()
  4803. : time_major(false),
  4804. fused_activation_function(tflite::ActivationFunctionType_NONE),
  4805. merge_outputs(false),
  4806. asymmetric_quantize_inputs(false) {
  4807. }
  4808. };
  4809. struct BidirectionalSequenceRNNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4810. typedef BidirectionalSequenceRNNOptionsT NativeTableType;
  4811. typedef BidirectionalSequenceRNNOptionsBuilder Builder;
  4812. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4813. VT_TIME_MAJOR = 4,
  4814. VT_FUSED_ACTIVATION_FUNCTION = 6,
  4815. VT_MERGE_OUTPUTS = 8,
  4816. VT_ASYMMETRIC_QUANTIZE_INPUTS = 10
  4817. };
  4818. bool time_major() const {
  4819. return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
  4820. }
  4821. tflite::ActivationFunctionType fused_activation_function() const {
  4822. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4823. }
  4824. bool merge_outputs() const {
  4825. return GetField<uint8_t>(VT_MERGE_OUTPUTS, 0) != 0;
  4826. }
  4827. bool asymmetric_quantize_inputs() const {
  4828. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  4829. }
  4830. bool Verify(flatbuffers::Verifier &verifier) const {
  4831. return VerifyTableStart(verifier) &&
  4832. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR) &&
  4833. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  4834. VerifyField<uint8_t>(verifier, VT_MERGE_OUTPUTS) &&
  4835. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS) &&
  4836. verifier.EndTable();
  4837. }
  4838. BidirectionalSequenceRNNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4839. void UnPackTo(BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4840. static flatbuffers::Offset<BidirectionalSequenceRNNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4841. };
  4842. struct BidirectionalSequenceRNNOptionsBuilder {
  4843. typedef BidirectionalSequenceRNNOptions Table;
  4844. flatbuffers::FlatBufferBuilder &fbb_;
  4845. flatbuffers::uoffset_t start_;
  4846. void add_time_major(bool time_major) {
  4847. fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
  4848. }
  4849. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4850. fbb_.AddElement<int8_t>(BidirectionalSequenceRNNOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4851. }
  4852. void add_merge_outputs(bool merge_outputs) {
  4853. fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_MERGE_OUTPUTS, static_cast<uint8_t>(merge_outputs), 0);
  4854. }
  4855. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  4856. fbb_.AddElement<uint8_t>(BidirectionalSequenceRNNOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  4857. }
  4858. explicit BidirectionalSequenceRNNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4859. : fbb_(_fbb) {
  4860. start_ = fbb_.StartTable();
  4861. }
  4862. BidirectionalSequenceRNNOptionsBuilder &operator=(const BidirectionalSequenceRNNOptionsBuilder &);
  4863. flatbuffers::Offset<BidirectionalSequenceRNNOptions> Finish() {
  4864. const auto end = fbb_.EndTable(start_);
  4865. auto o = flatbuffers::Offset<BidirectionalSequenceRNNOptions>(end);
  4866. return o;
  4867. }
  4868. };
  4869. inline flatbuffers::Offset<BidirectionalSequenceRNNOptions> CreateBidirectionalSequenceRNNOptions(
  4870. flatbuffers::FlatBufferBuilder &_fbb,
  4871. bool time_major = false,
  4872. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4873. bool merge_outputs = false,
  4874. bool asymmetric_quantize_inputs = false) {
  4875. BidirectionalSequenceRNNOptionsBuilder builder_(_fbb);
  4876. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  4877. builder_.add_merge_outputs(merge_outputs);
  4878. builder_.add_fused_activation_function(fused_activation_function);
  4879. builder_.add_time_major(time_major);
  4880. return builder_.Finish();
  4881. }
  4882. flatbuffers::Offset<BidirectionalSequenceRNNOptions> CreateBidirectionalSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4883. struct FullyConnectedOptionsT : public flatbuffers::NativeTable {
  4884. typedef FullyConnectedOptions TableType;
  4885. tflite::ActivationFunctionType fused_activation_function;
  4886. tflite::FullyConnectedOptionsWeightsFormat weights_format;
  4887. bool keep_num_dims;
  4888. bool asymmetric_quantize_inputs;
  4889. FullyConnectedOptionsT()
  4890. : fused_activation_function(tflite::ActivationFunctionType_NONE),
  4891. weights_format(tflite::FullyConnectedOptionsWeightsFormat_DEFAULT),
  4892. keep_num_dims(false),
  4893. asymmetric_quantize_inputs(false) {
  4894. }
  4895. };
  4896. struct FullyConnectedOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4897. typedef FullyConnectedOptionsT NativeTableType;
  4898. typedef FullyConnectedOptionsBuilder Builder;
  4899. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4900. VT_FUSED_ACTIVATION_FUNCTION = 4,
  4901. VT_WEIGHTS_FORMAT = 6,
  4902. VT_KEEP_NUM_DIMS = 8,
  4903. VT_ASYMMETRIC_QUANTIZE_INPUTS = 10
  4904. };
  4905. tflite::ActivationFunctionType fused_activation_function() const {
  4906. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  4907. }
  4908. tflite::FullyConnectedOptionsWeightsFormat weights_format() const {
  4909. return static_cast<tflite::FullyConnectedOptionsWeightsFormat>(GetField<int8_t>(VT_WEIGHTS_FORMAT, 0));
  4910. }
  4911. bool keep_num_dims() const {
  4912. return GetField<uint8_t>(VT_KEEP_NUM_DIMS, 0) != 0;
  4913. }
  4914. bool asymmetric_quantize_inputs() const {
  4915. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  4916. }
  4917. bool Verify(flatbuffers::Verifier &verifier) const {
  4918. return VerifyTableStart(verifier) &&
  4919. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  4920. VerifyField<int8_t>(verifier, VT_WEIGHTS_FORMAT) &&
  4921. VerifyField<uint8_t>(verifier, VT_KEEP_NUM_DIMS) &&
  4922. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS) &&
  4923. verifier.EndTable();
  4924. }
  4925. FullyConnectedOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4926. void UnPackTo(FullyConnectedOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4927. static flatbuffers::Offset<FullyConnectedOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4928. };
  4929. struct FullyConnectedOptionsBuilder {
  4930. typedef FullyConnectedOptions Table;
  4931. flatbuffers::FlatBufferBuilder &fbb_;
  4932. flatbuffers::uoffset_t start_;
  4933. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  4934. fbb_.AddElement<int8_t>(FullyConnectedOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  4935. }
  4936. void add_weights_format(tflite::FullyConnectedOptionsWeightsFormat weights_format) {
  4937. fbb_.AddElement<int8_t>(FullyConnectedOptions::VT_WEIGHTS_FORMAT, static_cast<int8_t>(weights_format), 0);
  4938. }
  4939. void add_keep_num_dims(bool keep_num_dims) {
  4940. fbb_.AddElement<uint8_t>(FullyConnectedOptions::VT_KEEP_NUM_DIMS, static_cast<uint8_t>(keep_num_dims), 0);
  4941. }
  4942. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  4943. fbb_.AddElement<uint8_t>(FullyConnectedOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  4944. }
  4945. explicit FullyConnectedOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  4946. : fbb_(_fbb) {
  4947. start_ = fbb_.StartTable();
  4948. }
  4949. FullyConnectedOptionsBuilder &operator=(const FullyConnectedOptionsBuilder &);
  4950. flatbuffers::Offset<FullyConnectedOptions> Finish() {
  4951. const auto end = fbb_.EndTable(start_);
  4952. auto o = flatbuffers::Offset<FullyConnectedOptions>(end);
  4953. return o;
  4954. }
  4955. };
  4956. inline flatbuffers::Offset<FullyConnectedOptions> CreateFullyConnectedOptions(
  4957. flatbuffers::FlatBufferBuilder &_fbb,
  4958. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  4959. tflite::FullyConnectedOptionsWeightsFormat weights_format = tflite::FullyConnectedOptionsWeightsFormat_DEFAULT,
  4960. bool keep_num_dims = false,
  4961. bool asymmetric_quantize_inputs = false) {
  4962. FullyConnectedOptionsBuilder builder_(_fbb);
  4963. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  4964. builder_.add_keep_num_dims(keep_num_dims);
  4965. builder_.add_weights_format(weights_format);
  4966. builder_.add_fused_activation_function(fused_activation_function);
  4967. return builder_.Finish();
  4968. }
  4969. flatbuffers::Offset<FullyConnectedOptions> CreateFullyConnectedOptions(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4970. struct SoftmaxOptionsT : public flatbuffers::NativeTable {
  4971. typedef SoftmaxOptions TableType;
  4972. float beta;
  4973. SoftmaxOptionsT()
  4974. : beta(0.0f) {
  4975. }
  4976. };
  4977. struct SoftmaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  4978. typedef SoftmaxOptionsT NativeTableType;
  4979. typedef SoftmaxOptionsBuilder Builder;
  4980. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  4981. VT_BETA = 4
  4982. };
  4983. float beta() const {
  4984. return GetField<float>(VT_BETA, 0.0f);
  4985. }
  4986. bool Verify(flatbuffers::Verifier &verifier) const {
  4987. return VerifyTableStart(verifier) &&
  4988. VerifyField<float>(verifier, VT_BETA) &&
  4989. verifier.EndTable();
  4990. }
  4991. SoftmaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4992. void UnPackTo(SoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  4993. static flatbuffers::Offset<SoftmaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  4994. };
  4995. struct SoftmaxOptionsBuilder {
  4996. typedef SoftmaxOptions Table;
  4997. flatbuffers::FlatBufferBuilder &fbb_;
  4998. flatbuffers::uoffset_t start_;
  4999. void add_beta(float beta) {
  5000. fbb_.AddElement<float>(SoftmaxOptions::VT_BETA, beta, 0.0f);
  5001. }
  5002. explicit SoftmaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5003. : fbb_(_fbb) {
  5004. start_ = fbb_.StartTable();
  5005. }
  5006. SoftmaxOptionsBuilder &operator=(const SoftmaxOptionsBuilder &);
  5007. flatbuffers::Offset<SoftmaxOptions> Finish() {
  5008. const auto end = fbb_.EndTable(start_);
  5009. auto o = flatbuffers::Offset<SoftmaxOptions>(end);
  5010. return o;
  5011. }
  5012. };
  5013. inline flatbuffers::Offset<SoftmaxOptions> CreateSoftmaxOptions(
  5014. flatbuffers::FlatBufferBuilder &_fbb,
  5015. float beta = 0.0f) {
  5016. SoftmaxOptionsBuilder builder_(_fbb);
  5017. builder_.add_beta(beta);
  5018. return builder_.Finish();
  5019. }
  5020. flatbuffers::Offset<SoftmaxOptions> CreateSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5021. struct ConcatenationOptionsT : public flatbuffers::NativeTable {
  5022. typedef ConcatenationOptions TableType;
  5023. int32_t axis;
  5024. tflite::ActivationFunctionType fused_activation_function;
  5025. ConcatenationOptionsT()
  5026. : axis(0),
  5027. fused_activation_function(tflite::ActivationFunctionType_NONE) {
  5028. }
  5029. };
  5030. struct ConcatenationOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5031. typedef ConcatenationOptionsT NativeTableType;
  5032. typedef ConcatenationOptionsBuilder Builder;
  5033. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5034. VT_AXIS = 4,
  5035. VT_FUSED_ACTIVATION_FUNCTION = 6
  5036. };
  5037. int32_t axis() const {
  5038. return GetField<int32_t>(VT_AXIS, 0);
  5039. }
  5040. tflite::ActivationFunctionType fused_activation_function() const {
  5041. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5042. }
  5043. bool Verify(flatbuffers::Verifier &verifier) const {
  5044. return VerifyTableStart(verifier) &&
  5045. VerifyField<int32_t>(verifier, VT_AXIS) &&
  5046. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  5047. verifier.EndTable();
  5048. }
  5049. ConcatenationOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5050. void UnPackTo(ConcatenationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5051. static flatbuffers::Offset<ConcatenationOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5052. };
  5053. struct ConcatenationOptionsBuilder {
  5054. typedef ConcatenationOptions Table;
  5055. flatbuffers::FlatBufferBuilder &fbb_;
  5056. flatbuffers::uoffset_t start_;
  5057. void add_axis(int32_t axis) {
  5058. fbb_.AddElement<int32_t>(ConcatenationOptions::VT_AXIS, axis, 0);
  5059. }
  5060. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5061. fbb_.AddElement<int8_t>(ConcatenationOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5062. }
  5063. explicit ConcatenationOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5064. : fbb_(_fbb) {
  5065. start_ = fbb_.StartTable();
  5066. }
  5067. ConcatenationOptionsBuilder &operator=(const ConcatenationOptionsBuilder &);
  5068. flatbuffers::Offset<ConcatenationOptions> Finish() {
  5069. const auto end = fbb_.EndTable(start_);
  5070. auto o = flatbuffers::Offset<ConcatenationOptions>(end);
  5071. return o;
  5072. }
  5073. };
  5074. inline flatbuffers::Offset<ConcatenationOptions> CreateConcatenationOptions(
  5075. flatbuffers::FlatBufferBuilder &_fbb,
  5076. int32_t axis = 0,
  5077. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
  5078. ConcatenationOptionsBuilder builder_(_fbb);
  5079. builder_.add_axis(axis);
  5080. builder_.add_fused_activation_function(fused_activation_function);
  5081. return builder_.Finish();
  5082. }
  5083. flatbuffers::Offset<ConcatenationOptions> CreateConcatenationOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5084. struct AddOptionsT : public flatbuffers::NativeTable {
  5085. typedef AddOptions TableType;
  5086. tflite::ActivationFunctionType fused_activation_function;
  5087. bool pot_scale_int16;
  5088. AddOptionsT()
  5089. : fused_activation_function(tflite::ActivationFunctionType_NONE),
  5090. pot_scale_int16(true) {
  5091. }
  5092. };
  5093. struct AddOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5094. typedef AddOptionsT NativeTableType;
  5095. typedef AddOptionsBuilder Builder;
  5096. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5097. VT_FUSED_ACTIVATION_FUNCTION = 4,
  5098. VT_POT_SCALE_INT16 = 6
  5099. };
  5100. tflite::ActivationFunctionType fused_activation_function() const {
  5101. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5102. }
  5103. bool pot_scale_int16() const {
  5104. return GetField<uint8_t>(VT_POT_SCALE_INT16, 1) != 0;
  5105. }
  5106. bool Verify(flatbuffers::Verifier &verifier) const {
  5107. return VerifyTableStart(verifier) &&
  5108. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  5109. VerifyField<uint8_t>(verifier, VT_POT_SCALE_INT16) &&
  5110. verifier.EndTable();
  5111. }
  5112. AddOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5113. void UnPackTo(AddOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5114. static flatbuffers::Offset<AddOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5115. };
  5116. struct AddOptionsBuilder {
  5117. typedef AddOptions Table;
  5118. flatbuffers::FlatBufferBuilder &fbb_;
  5119. flatbuffers::uoffset_t start_;
  5120. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5121. fbb_.AddElement<int8_t>(AddOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5122. }
  5123. void add_pot_scale_int16(bool pot_scale_int16) {
  5124. fbb_.AddElement<uint8_t>(AddOptions::VT_POT_SCALE_INT16, static_cast<uint8_t>(pot_scale_int16), 1);
  5125. }
  5126. explicit AddOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5127. : fbb_(_fbb) {
  5128. start_ = fbb_.StartTable();
  5129. }
  5130. AddOptionsBuilder &operator=(const AddOptionsBuilder &);
  5131. flatbuffers::Offset<AddOptions> Finish() {
  5132. const auto end = fbb_.EndTable(start_);
  5133. auto o = flatbuffers::Offset<AddOptions>(end);
  5134. return o;
  5135. }
  5136. };
  5137. inline flatbuffers::Offset<AddOptions> CreateAddOptions(
  5138. flatbuffers::FlatBufferBuilder &_fbb,
  5139. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5140. bool pot_scale_int16 = true) {
  5141. AddOptionsBuilder builder_(_fbb);
  5142. builder_.add_pot_scale_int16(pot_scale_int16);
  5143. builder_.add_fused_activation_function(fused_activation_function);
  5144. return builder_.Finish();
  5145. }
  5146. flatbuffers::Offset<AddOptions> CreateAddOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5147. struct MulOptionsT : public flatbuffers::NativeTable {
  5148. typedef MulOptions TableType;
  5149. tflite::ActivationFunctionType fused_activation_function;
  5150. MulOptionsT()
  5151. : fused_activation_function(tflite::ActivationFunctionType_NONE) {
  5152. }
  5153. };
  5154. struct MulOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5155. typedef MulOptionsT NativeTableType;
  5156. typedef MulOptionsBuilder Builder;
  5157. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5158. VT_FUSED_ACTIVATION_FUNCTION = 4
  5159. };
  5160. tflite::ActivationFunctionType fused_activation_function() const {
  5161. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5162. }
  5163. bool Verify(flatbuffers::Verifier &verifier) const {
  5164. return VerifyTableStart(verifier) &&
  5165. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  5166. verifier.EndTable();
  5167. }
  5168. MulOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5169. void UnPackTo(MulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5170. static flatbuffers::Offset<MulOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5171. };
  5172. struct MulOptionsBuilder {
  5173. typedef MulOptions Table;
  5174. flatbuffers::FlatBufferBuilder &fbb_;
  5175. flatbuffers::uoffset_t start_;
  5176. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5177. fbb_.AddElement<int8_t>(MulOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5178. }
  5179. explicit MulOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5180. : fbb_(_fbb) {
  5181. start_ = fbb_.StartTable();
  5182. }
  5183. MulOptionsBuilder &operator=(const MulOptionsBuilder &);
  5184. flatbuffers::Offset<MulOptions> Finish() {
  5185. const auto end = fbb_.EndTable(start_);
  5186. auto o = flatbuffers::Offset<MulOptions>(end);
  5187. return o;
  5188. }
  5189. };
  5190. inline flatbuffers::Offset<MulOptions> CreateMulOptions(
  5191. flatbuffers::FlatBufferBuilder &_fbb,
  5192. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
  5193. MulOptionsBuilder builder_(_fbb);
  5194. builder_.add_fused_activation_function(fused_activation_function);
  5195. return builder_.Finish();
  5196. }
  5197. flatbuffers::Offset<MulOptions> CreateMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5198. struct L2NormOptionsT : public flatbuffers::NativeTable {
  5199. typedef L2NormOptions TableType;
  5200. tflite::ActivationFunctionType fused_activation_function;
  5201. L2NormOptionsT()
  5202. : fused_activation_function(tflite::ActivationFunctionType_NONE) {
  5203. }
  5204. };
  5205. struct L2NormOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5206. typedef L2NormOptionsT NativeTableType;
  5207. typedef L2NormOptionsBuilder Builder;
  5208. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5209. VT_FUSED_ACTIVATION_FUNCTION = 4
  5210. };
  5211. tflite::ActivationFunctionType fused_activation_function() const {
  5212. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5213. }
  5214. bool Verify(flatbuffers::Verifier &verifier) const {
  5215. return VerifyTableStart(verifier) &&
  5216. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  5217. verifier.EndTable();
  5218. }
  5219. L2NormOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5220. void UnPackTo(L2NormOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5221. static flatbuffers::Offset<L2NormOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5222. };
  5223. struct L2NormOptionsBuilder {
  5224. typedef L2NormOptions Table;
  5225. flatbuffers::FlatBufferBuilder &fbb_;
  5226. flatbuffers::uoffset_t start_;
  5227. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5228. fbb_.AddElement<int8_t>(L2NormOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5229. }
  5230. explicit L2NormOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5231. : fbb_(_fbb) {
  5232. start_ = fbb_.StartTable();
  5233. }
  5234. L2NormOptionsBuilder &operator=(const L2NormOptionsBuilder &);
  5235. flatbuffers::Offset<L2NormOptions> Finish() {
  5236. const auto end = fbb_.EndTable(start_);
  5237. auto o = flatbuffers::Offset<L2NormOptions>(end);
  5238. return o;
  5239. }
  5240. };
  5241. inline flatbuffers::Offset<L2NormOptions> CreateL2NormOptions(
  5242. flatbuffers::FlatBufferBuilder &_fbb,
  5243. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
  5244. L2NormOptionsBuilder builder_(_fbb);
  5245. builder_.add_fused_activation_function(fused_activation_function);
  5246. return builder_.Finish();
  5247. }
  5248. flatbuffers::Offset<L2NormOptions> CreateL2NormOptions(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5249. struct LocalResponseNormalizationOptionsT : public flatbuffers::NativeTable {
  5250. typedef LocalResponseNormalizationOptions TableType;
  5251. int32_t radius;
  5252. float bias;
  5253. float alpha;
  5254. float beta;
  5255. LocalResponseNormalizationOptionsT()
  5256. : radius(0),
  5257. bias(0.0f),
  5258. alpha(0.0f),
  5259. beta(0.0f) {
  5260. }
  5261. };
  5262. struct LocalResponseNormalizationOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5263. typedef LocalResponseNormalizationOptionsT NativeTableType;
  5264. typedef LocalResponseNormalizationOptionsBuilder Builder;
  5265. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5266. VT_RADIUS = 4,
  5267. VT_BIAS = 6,
  5268. VT_ALPHA = 8,
  5269. VT_BETA = 10
  5270. };
  5271. int32_t radius() const {
  5272. return GetField<int32_t>(VT_RADIUS, 0);
  5273. }
  5274. float bias() const {
  5275. return GetField<float>(VT_BIAS, 0.0f);
  5276. }
  5277. float alpha() const {
  5278. return GetField<float>(VT_ALPHA, 0.0f);
  5279. }
  5280. float beta() const {
  5281. return GetField<float>(VT_BETA, 0.0f);
  5282. }
  5283. bool Verify(flatbuffers::Verifier &verifier) const {
  5284. return VerifyTableStart(verifier) &&
  5285. VerifyField<int32_t>(verifier, VT_RADIUS) &&
  5286. VerifyField<float>(verifier, VT_BIAS) &&
  5287. VerifyField<float>(verifier, VT_ALPHA) &&
  5288. VerifyField<float>(verifier, VT_BETA) &&
  5289. verifier.EndTable();
  5290. }
  5291. LocalResponseNormalizationOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5292. void UnPackTo(LocalResponseNormalizationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5293. static flatbuffers::Offset<LocalResponseNormalizationOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5294. };
  5295. struct LocalResponseNormalizationOptionsBuilder {
  5296. typedef LocalResponseNormalizationOptions Table;
  5297. flatbuffers::FlatBufferBuilder &fbb_;
  5298. flatbuffers::uoffset_t start_;
  5299. void add_radius(int32_t radius) {
  5300. fbb_.AddElement<int32_t>(LocalResponseNormalizationOptions::VT_RADIUS, radius, 0);
  5301. }
  5302. void add_bias(float bias) {
  5303. fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_BIAS, bias, 0.0f);
  5304. }
  5305. void add_alpha(float alpha) {
  5306. fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_ALPHA, alpha, 0.0f);
  5307. }
  5308. void add_beta(float beta) {
  5309. fbb_.AddElement<float>(LocalResponseNormalizationOptions::VT_BETA, beta, 0.0f);
  5310. }
  5311. explicit LocalResponseNormalizationOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5312. : fbb_(_fbb) {
  5313. start_ = fbb_.StartTable();
  5314. }
  5315. LocalResponseNormalizationOptionsBuilder &operator=(const LocalResponseNormalizationOptionsBuilder &);
  5316. flatbuffers::Offset<LocalResponseNormalizationOptions> Finish() {
  5317. const auto end = fbb_.EndTable(start_);
  5318. auto o = flatbuffers::Offset<LocalResponseNormalizationOptions>(end);
  5319. return o;
  5320. }
  5321. };
  5322. inline flatbuffers::Offset<LocalResponseNormalizationOptions> CreateLocalResponseNormalizationOptions(
  5323. flatbuffers::FlatBufferBuilder &_fbb,
  5324. int32_t radius = 0,
  5325. float bias = 0.0f,
  5326. float alpha = 0.0f,
  5327. float beta = 0.0f) {
  5328. LocalResponseNormalizationOptionsBuilder builder_(_fbb);
  5329. builder_.add_beta(beta);
  5330. builder_.add_alpha(alpha);
  5331. builder_.add_bias(bias);
  5332. builder_.add_radius(radius);
  5333. return builder_.Finish();
  5334. }
  5335. flatbuffers::Offset<LocalResponseNormalizationOptions> CreateLocalResponseNormalizationOptions(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5336. struct LSTMOptionsT : public flatbuffers::NativeTable {
  5337. typedef LSTMOptions TableType;
  5338. tflite::ActivationFunctionType fused_activation_function;
  5339. float cell_clip;
  5340. float proj_clip;
  5341. tflite::LSTMKernelType kernel_type;
  5342. bool asymmetric_quantize_inputs;
  5343. LSTMOptionsT()
  5344. : fused_activation_function(tflite::ActivationFunctionType_NONE),
  5345. cell_clip(0.0f),
  5346. proj_clip(0.0f),
  5347. kernel_type(tflite::LSTMKernelType_FULL),
  5348. asymmetric_quantize_inputs(false) {
  5349. }
  5350. };
  5351. struct LSTMOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5352. typedef LSTMOptionsT NativeTableType;
  5353. typedef LSTMOptionsBuilder Builder;
  5354. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5355. VT_FUSED_ACTIVATION_FUNCTION = 4,
  5356. VT_CELL_CLIP = 6,
  5357. VT_PROJ_CLIP = 8,
  5358. VT_KERNEL_TYPE = 10,
  5359. VT_ASYMMETRIC_QUANTIZE_INPUTS = 12
  5360. };
  5361. tflite::ActivationFunctionType fused_activation_function() const {
  5362. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5363. }
  5364. float cell_clip() const {
  5365. return GetField<float>(VT_CELL_CLIP, 0.0f);
  5366. }
  5367. float proj_clip() const {
  5368. return GetField<float>(VT_PROJ_CLIP, 0.0f);
  5369. }
  5370. tflite::LSTMKernelType kernel_type() const {
  5371. return static_cast<tflite::LSTMKernelType>(GetField<int8_t>(VT_KERNEL_TYPE, 0));
  5372. }
  5373. bool asymmetric_quantize_inputs() const {
  5374. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5375. }
  5376. bool Verify(flatbuffers::Verifier &verifier) const {
  5377. return VerifyTableStart(verifier) &&
  5378. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  5379. VerifyField<float>(verifier, VT_CELL_CLIP) &&
  5380. VerifyField<float>(verifier, VT_PROJ_CLIP) &&
  5381. VerifyField<int8_t>(verifier, VT_KERNEL_TYPE) &&
  5382. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS) &&
  5383. verifier.EndTable();
  5384. }
  5385. LSTMOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5386. void UnPackTo(LSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5387. static flatbuffers::Offset<LSTMOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5388. };
  5389. struct LSTMOptionsBuilder {
  5390. typedef LSTMOptions Table;
  5391. flatbuffers::FlatBufferBuilder &fbb_;
  5392. flatbuffers::uoffset_t start_;
  5393. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5394. fbb_.AddElement<int8_t>(LSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5395. }
  5396. void add_cell_clip(float cell_clip) {
  5397. fbb_.AddElement<float>(LSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
  5398. }
  5399. void add_proj_clip(float proj_clip) {
  5400. fbb_.AddElement<float>(LSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
  5401. }
  5402. void add_kernel_type(tflite::LSTMKernelType kernel_type) {
  5403. fbb_.AddElement<int8_t>(LSTMOptions::VT_KERNEL_TYPE, static_cast<int8_t>(kernel_type), 0);
  5404. }
  5405. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5406. fbb_.AddElement<uint8_t>(LSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5407. }
  5408. explicit LSTMOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5409. : fbb_(_fbb) {
  5410. start_ = fbb_.StartTable();
  5411. }
  5412. LSTMOptionsBuilder &operator=(const LSTMOptionsBuilder &);
  5413. flatbuffers::Offset<LSTMOptions> Finish() {
  5414. const auto end = fbb_.EndTable(start_);
  5415. auto o = flatbuffers::Offset<LSTMOptions>(end);
  5416. return o;
  5417. }
  5418. };
  5419. inline flatbuffers::Offset<LSTMOptions> CreateLSTMOptions(
  5420. flatbuffers::FlatBufferBuilder &_fbb,
  5421. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5422. float cell_clip = 0.0f,
  5423. float proj_clip = 0.0f,
  5424. tflite::LSTMKernelType kernel_type = tflite::LSTMKernelType_FULL,
  5425. bool asymmetric_quantize_inputs = false) {
  5426. LSTMOptionsBuilder builder_(_fbb);
  5427. builder_.add_proj_clip(proj_clip);
  5428. builder_.add_cell_clip(cell_clip);
  5429. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5430. builder_.add_kernel_type(kernel_type);
  5431. builder_.add_fused_activation_function(fused_activation_function);
  5432. return builder_.Finish();
  5433. }
  5434. flatbuffers::Offset<LSTMOptions> CreateLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5435. struct UnidirectionalSequenceLSTMOptionsT : public flatbuffers::NativeTable {
  5436. typedef UnidirectionalSequenceLSTMOptions TableType;
  5437. tflite::ActivationFunctionType fused_activation_function;
  5438. float cell_clip;
  5439. float proj_clip;
  5440. bool time_major;
  5441. bool asymmetric_quantize_inputs;
  5442. UnidirectionalSequenceLSTMOptionsT()
  5443. : fused_activation_function(tflite::ActivationFunctionType_NONE),
  5444. cell_clip(0.0f),
  5445. proj_clip(0.0f),
  5446. time_major(false),
  5447. asymmetric_quantize_inputs(false) {
  5448. }
  5449. };
  5450. struct UnidirectionalSequenceLSTMOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5451. typedef UnidirectionalSequenceLSTMOptionsT NativeTableType;
  5452. typedef UnidirectionalSequenceLSTMOptionsBuilder Builder;
  5453. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5454. VT_FUSED_ACTIVATION_FUNCTION = 4,
  5455. VT_CELL_CLIP = 6,
  5456. VT_PROJ_CLIP = 8,
  5457. VT_TIME_MAJOR = 10,
  5458. VT_ASYMMETRIC_QUANTIZE_INPUTS = 12
  5459. };
  5460. tflite::ActivationFunctionType fused_activation_function() const {
  5461. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5462. }
  5463. float cell_clip() const {
  5464. return GetField<float>(VT_CELL_CLIP, 0.0f);
  5465. }
  5466. float proj_clip() const {
  5467. return GetField<float>(VT_PROJ_CLIP, 0.0f);
  5468. }
  5469. bool time_major() const {
  5470. return GetField<uint8_t>(VT_TIME_MAJOR, 0) != 0;
  5471. }
  5472. bool asymmetric_quantize_inputs() const {
  5473. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5474. }
  5475. bool Verify(flatbuffers::Verifier &verifier) const {
  5476. return VerifyTableStart(verifier) &&
  5477. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  5478. VerifyField<float>(verifier, VT_CELL_CLIP) &&
  5479. VerifyField<float>(verifier, VT_PROJ_CLIP) &&
  5480. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR) &&
  5481. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS) &&
  5482. verifier.EndTable();
  5483. }
  5484. UnidirectionalSequenceLSTMOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5485. void UnPackTo(UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5486. static flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5487. };
  5488. struct UnidirectionalSequenceLSTMOptionsBuilder {
  5489. typedef UnidirectionalSequenceLSTMOptions Table;
  5490. flatbuffers::FlatBufferBuilder &fbb_;
  5491. flatbuffers::uoffset_t start_;
  5492. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5493. fbb_.AddElement<int8_t>(UnidirectionalSequenceLSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5494. }
  5495. void add_cell_clip(float cell_clip) {
  5496. fbb_.AddElement<float>(UnidirectionalSequenceLSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
  5497. }
  5498. void add_proj_clip(float proj_clip) {
  5499. fbb_.AddElement<float>(UnidirectionalSequenceLSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
  5500. }
  5501. void add_time_major(bool time_major) {
  5502. fbb_.AddElement<uint8_t>(UnidirectionalSequenceLSTMOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 0);
  5503. }
  5504. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5505. fbb_.AddElement<uint8_t>(UnidirectionalSequenceLSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5506. }
  5507. explicit UnidirectionalSequenceLSTMOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5508. : fbb_(_fbb) {
  5509. start_ = fbb_.StartTable();
  5510. }
  5511. UnidirectionalSequenceLSTMOptionsBuilder &operator=(const UnidirectionalSequenceLSTMOptionsBuilder &);
  5512. flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> Finish() {
  5513. const auto end = fbb_.EndTable(start_);
  5514. auto o = flatbuffers::Offset<UnidirectionalSequenceLSTMOptions>(end);
  5515. return o;
  5516. }
  5517. };
  5518. inline flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> CreateUnidirectionalSequenceLSTMOptions(
  5519. flatbuffers::FlatBufferBuilder &_fbb,
  5520. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5521. float cell_clip = 0.0f,
  5522. float proj_clip = 0.0f,
  5523. bool time_major = false,
  5524. bool asymmetric_quantize_inputs = false) {
  5525. UnidirectionalSequenceLSTMOptionsBuilder builder_(_fbb);
  5526. builder_.add_proj_clip(proj_clip);
  5527. builder_.add_cell_clip(cell_clip);
  5528. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5529. builder_.add_time_major(time_major);
  5530. builder_.add_fused_activation_function(fused_activation_function);
  5531. return builder_.Finish();
  5532. }
  5533. flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> CreateUnidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5534. struct BidirectionalSequenceLSTMOptionsT : public flatbuffers::NativeTable {
  5535. typedef BidirectionalSequenceLSTMOptions TableType;
  5536. tflite::ActivationFunctionType fused_activation_function;
  5537. float cell_clip;
  5538. float proj_clip;
  5539. bool merge_outputs;
  5540. bool time_major;
  5541. bool asymmetric_quantize_inputs;
  5542. BidirectionalSequenceLSTMOptionsT()
  5543. : fused_activation_function(tflite::ActivationFunctionType_NONE),
  5544. cell_clip(0.0f),
  5545. proj_clip(0.0f),
  5546. merge_outputs(false),
  5547. time_major(true),
  5548. asymmetric_quantize_inputs(false) {
  5549. }
  5550. };
  5551. struct BidirectionalSequenceLSTMOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5552. typedef BidirectionalSequenceLSTMOptionsT NativeTableType;
  5553. typedef BidirectionalSequenceLSTMOptionsBuilder Builder;
  5554. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5555. VT_FUSED_ACTIVATION_FUNCTION = 4,
  5556. VT_CELL_CLIP = 6,
  5557. VT_PROJ_CLIP = 8,
  5558. VT_MERGE_OUTPUTS = 10,
  5559. VT_TIME_MAJOR = 12,
  5560. VT_ASYMMETRIC_QUANTIZE_INPUTS = 14
  5561. };
  5562. tflite::ActivationFunctionType fused_activation_function() const {
  5563. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  5564. }
  5565. float cell_clip() const {
  5566. return GetField<float>(VT_CELL_CLIP, 0.0f);
  5567. }
  5568. float proj_clip() const {
  5569. return GetField<float>(VT_PROJ_CLIP, 0.0f);
  5570. }
  5571. bool merge_outputs() const {
  5572. return GetField<uint8_t>(VT_MERGE_OUTPUTS, 0) != 0;
  5573. }
  5574. bool time_major() const {
  5575. return GetField<uint8_t>(VT_TIME_MAJOR, 1) != 0;
  5576. }
  5577. bool asymmetric_quantize_inputs() const {
  5578. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  5579. }
  5580. bool Verify(flatbuffers::Verifier &verifier) const {
  5581. return VerifyTableStart(verifier) &&
  5582. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  5583. VerifyField<float>(verifier, VT_CELL_CLIP) &&
  5584. VerifyField<float>(verifier, VT_PROJ_CLIP) &&
  5585. VerifyField<uint8_t>(verifier, VT_MERGE_OUTPUTS) &&
  5586. VerifyField<uint8_t>(verifier, VT_TIME_MAJOR) &&
  5587. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS) &&
  5588. verifier.EndTable();
  5589. }
  5590. BidirectionalSequenceLSTMOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5591. void UnPackTo(BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5592. static flatbuffers::Offset<BidirectionalSequenceLSTMOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5593. };
  5594. struct BidirectionalSequenceLSTMOptionsBuilder {
  5595. typedef BidirectionalSequenceLSTMOptions Table;
  5596. flatbuffers::FlatBufferBuilder &fbb_;
  5597. flatbuffers::uoffset_t start_;
  5598. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  5599. fbb_.AddElement<int8_t>(BidirectionalSequenceLSTMOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  5600. }
  5601. void add_cell_clip(float cell_clip) {
  5602. fbb_.AddElement<float>(BidirectionalSequenceLSTMOptions::VT_CELL_CLIP, cell_clip, 0.0f);
  5603. }
  5604. void add_proj_clip(float proj_clip) {
  5605. fbb_.AddElement<float>(BidirectionalSequenceLSTMOptions::VT_PROJ_CLIP, proj_clip, 0.0f);
  5606. }
  5607. void add_merge_outputs(bool merge_outputs) {
  5608. fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_MERGE_OUTPUTS, static_cast<uint8_t>(merge_outputs), 0);
  5609. }
  5610. void add_time_major(bool time_major) {
  5611. fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_TIME_MAJOR, static_cast<uint8_t>(time_major), 1);
  5612. }
  5613. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  5614. fbb_.AddElement<uint8_t>(BidirectionalSequenceLSTMOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  5615. }
  5616. explicit BidirectionalSequenceLSTMOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5617. : fbb_(_fbb) {
  5618. start_ = fbb_.StartTable();
  5619. }
  5620. BidirectionalSequenceLSTMOptionsBuilder &operator=(const BidirectionalSequenceLSTMOptionsBuilder &);
  5621. flatbuffers::Offset<BidirectionalSequenceLSTMOptions> Finish() {
  5622. const auto end = fbb_.EndTable(start_);
  5623. auto o = flatbuffers::Offset<BidirectionalSequenceLSTMOptions>(end);
  5624. return o;
  5625. }
  5626. };
  5627. inline flatbuffers::Offset<BidirectionalSequenceLSTMOptions> CreateBidirectionalSequenceLSTMOptions(
  5628. flatbuffers::FlatBufferBuilder &_fbb,
  5629. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  5630. float cell_clip = 0.0f,
  5631. float proj_clip = 0.0f,
  5632. bool merge_outputs = false,
  5633. bool time_major = true,
  5634. bool asymmetric_quantize_inputs = false) {
  5635. BidirectionalSequenceLSTMOptionsBuilder builder_(_fbb);
  5636. builder_.add_proj_clip(proj_clip);
  5637. builder_.add_cell_clip(cell_clip);
  5638. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  5639. builder_.add_time_major(time_major);
  5640. builder_.add_merge_outputs(merge_outputs);
  5641. builder_.add_fused_activation_function(fused_activation_function);
  5642. return builder_.Finish();
  5643. }
  5644. flatbuffers::Offset<BidirectionalSequenceLSTMOptions> CreateBidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5645. struct ResizeBilinearOptionsT : public flatbuffers::NativeTable {
  5646. typedef ResizeBilinearOptions TableType;
  5647. bool align_corners;
  5648. bool half_pixel_centers;
  5649. ResizeBilinearOptionsT()
  5650. : align_corners(false),
  5651. half_pixel_centers(false) {
  5652. }
  5653. };
  5654. struct ResizeBilinearOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5655. typedef ResizeBilinearOptionsT NativeTableType;
  5656. typedef ResizeBilinearOptionsBuilder Builder;
  5657. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5658. VT_ALIGN_CORNERS = 8,
  5659. VT_HALF_PIXEL_CENTERS = 10
  5660. };
  5661. bool align_corners() const {
  5662. return GetField<uint8_t>(VT_ALIGN_CORNERS, 0) != 0;
  5663. }
  5664. bool half_pixel_centers() const {
  5665. return GetField<uint8_t>(VT_HALF_PIXEL_CENTERS, 0) != 0;
  5666. }
  5667. bool Verify(flatbuffers::Verifier &verifier) const {
  5668. return VerifyTableStart(verifier) &&
  5669. VerifyField<uint8_t>(verifier, VT_ALIGN_CORNERS) &&
  5670. VerifyField<uint8_t>(verifier, VT_HALF_PIXEL_CENTERS) &&
  5671. verifier.EndTable();
  5672. }
  5673. ResizeBilinearOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5674. void UnPackTo(ResizeBilinearOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5675. static flatbuffers::Offset<ResizeBilinearOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5676. };
  5677. struct ResizeBilinearOptionsBuilder {
  5678. typedef ResizeBilinearOptions Table;
  5679. flatbuffers::FlatBufferBuilder &fbb_;
  5680. flatbuffers::uoffset_t start_;
  5681. void add_align_corners(bool align_corners) {
  5682. fbb_.AddElement<uint8_t>(ResizeBilinearOptions::VT_ALIGN_CORNERS, static_cast<uint8_t>(align_corners), 0);
  5683. }
  5684. void add_half_pixel_centers(bool half_pixel_centers) {
  5685. fbb_.AddElement<uint8_t>(ResizeBilinearOptions::VT_HALF_PIXEL_CENTERS, static_cast<uint8_t>(half_pixel_centers), 0);
  5686. }
  5687. explicit ResizeBilinearOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5688. : fbb_(_fbb) {
  5689. start_ = fbb_.StartTable();
  5690. }
  5691. ResizeBilinearOptionsBuilder &operator=(const ResizeBilinearOptionsBuilder &);
  5692. flatbuffers::Offset<ResizeBilinearOptions> Finish() {
  5693. const auto end = fbb_.EndTable(start_);
  5694. auto o = flatbuffers::Offset<ResizeBilinearOptions>(end);
  5695. return o;
  5696. }
  5697. };
  5698. inline flatbuffers::Offset<ResizeBilinearOptions> CreateResizeBilinearOptions(
  5699. flatbuffers::FlatBufferBuilder &_fbb,
  5700. bool align_corners = false,
  5701. bool half_pixel_centers = false) {
  5702. ResizeBilinearOptionsBuilder builder_(_fbb);
  5703. builder_.add_half_pixel_centers(half_pixel_centers);
  5704. builder_.add_align_corners(align_corners);
  5705. return builder_.Finish();
  5706. }
  5707. flatbuffers::Offset<ResizeBilinearOptions> CreateResizeBilinearOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5708. struct ResizeNearestNeighborOptionsT : public flatbuffers::NativeTable {
  5709. typedef ResizeNearestNeighborOptions TableType;
  5710. bool align_corners;
  5711. bool half_pixel_centers;
  5712. ResizeNearestNeighborOptionsT()
  5713. : align_corners(false),
  5714. half_pixel_centers(false) {
  5715. }
  5716. };
  5717. struct ResizeNearestNeighborOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5718. typedef ResizeNearestNeighborOptionsT NativeTableType;
  5719. typedef ResizeNearestNeighborOptionsBuilder Builder;
  5720. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5721. VT_ALIGN_CORNERS = 4,
  5722. VT_HALF_PIXEL_CENTERS = 6
  5723. };
  5724. bool align_corners() const {
  5725. return GetField<uint8_t>(VT_ALIGN_CORNERS, 0) != 0;
  5726. }
  5727. bool half_pixel_centers() const {
  5728. return GetField<uint8_t>(VT_HALF_PIXEL_CENTERS, 0) != 0;
  5729. }
  5730. bool Verify(flatbuffers::Verifier &verifier) const {
  5731. return VerifyTableStart(verifier) &&
  5732. VerifyField<uint8_t>(verifier, VT_ALIGN_CORNERS) &&
  5733. VerifyField<uint8_t>(verifier, VT_HALF_PIXEL_CENTERS) &&
  5734. verifier.EndTable();
  5735. }
  5736. ResizeNearestNeighborOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5737. void UnPackTo(ResizeNearestNeighborOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5738. static flatbuffers::Offset<ResizeNearestNeighborOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5739. };
  5740. struct ResizeNearestNeighborOptionsBuilder {
  5741. typedef ResizeNearestNeighborOptions Table;
  5742. flatbuffers::FlatBufferBuilder &fbb_;
  5743. flatbuffers::uoffset_t start_;
  5744. void add_align_corners(bool align_corners) {
  5745. fbb_.AddElement<uint8_t>(ResizeNearestNeighborOptions::VT_ALIGN_CORNERS, static_cast<uint8_t>(align_corners), 0);
  5746. }
  5747. void add_half_pixel_centers(bool half_pixel_centers) {
  5748. fbb_.AddElement<uint8_t>(ResizeNearestNeighborOptions::VT_HALF_PIXEL_CENTERS, static_cast<uint8_t>(half_pixel_centers), 0);
  5749. }
  5750. explicit ResizeNearestNeighborOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5751. : fbb_(_fbb) {
  5752. start_ = fbb_.StartTable();
  5753. }
  5754. ResizeNearestNeighborOptionsBuilder &operator=(const ResizeNearestNeighborOptionsBuilder &);
  5755. flatbuffers::Offset<ResizeNearestNeighborOptions> Finish() {
  5756. const auto end = fbb_.EndTable(start_);
  5757. auto o = flatbuffers::Offset<ResizeNearestNeighborOptions>(end);
  5758. return o;
  5759. }
  5760. };
  5761. inline flatbuffers::Offset<ResizeNearestNeighborOptions> CreateResizeNearestNeighborOptions(
  5762. flatbuffers::FlatBufferBuilder &_fbb,
  5763. bool align_corners = false,
  5764. bool half_pixel_centers = false) {
  5765. ResizeNearestNeighborOptionsBuilder builder_(_fbb);
  5766. builder_.add_half_pixel_centers(half_pixel_centers);
  5767. builder_.add_align_corners(align_corners);
  5768. return builder_.Finish();
  5769. }
  5770. flatbuffers::Offset<ResizeNearestNeighborOptions> CreateResizeNearestNeighborOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5771. struct CallOptionsT : public flatbuffers::NativeTable {
  5772. typedef CallOptions TableType;
  5773. uint32_t subgraph;
  5774. CallOptionsT()
  5775. : subgraph(0) {
  5776. }
  5777. };
  5778. struct CallOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5779. typedef CallOptionsT NativeTableType;
  5780. typedef CallOptionsBuilder Builder;
  5781. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5782. VT_SUBGRAPH = 4
  5783. };
  5784. uint32_t subgraph() const {
  5785. return GetField<uint32_t>(VT_SUBGRAPH, 0);
  5786. }
  5787. bool Verify(flatbuffers::Verifier &verifier) const {
  5788. return VerifyTableStart(verifier) &&
  5789. VerifyField<uint32_t>(verifier, VT_SUBGRAPH) &&
  5790. verifier.EndTable();
  5791. }
  5792. CallOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5793. void UnPackTo(CallOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5794. static flatbuffers::Offset<CallOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5795. };
  5796. struct CallOptionsBuilder {
  5797. typedef CallOptions Table;
  5798. flatbuffers::FlatBufferBuilder &fbb_;
  5799. flatbuffers::uoffset_t start_;
  5800. void add_subgraph(uint32_t subgraph) {
  5801. fbb_.AddElement<uint32_t>(CallOptions::VT_SUBGRAPH, subgraph, 0);
  5802. }
  5803. explicit CallOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5804. : fbb_(_fbb) {
  5805. start_ = fbb_.StartTable();
  5806. }
  5807. CallOptionsBuilder &operator=(const CallOptionsBuilder &);
  5808. flatbuffers::Offset<CallOptions> Finish() {
  5809. const auto end = fbb_.EndTable(start_);
  5810. auto o = flatbuffers::Offset<CallOptions>(end);
  5811. return o;
  5812. }
  5813. };
  5814. inline flatbuffers::Offset<CallOptions> CreateCallOptions(
  5815. flatbuffers::FlatBufferBuilder &_fbb,
  5816. uint32_t subgraph = 0) {
  5817. CallOptionsBuilder builder_(_fbb);
  5818. builder_.add_subgraph(subgraph);
  5819. return builder_.Finish();
  5820. }
  5821. flatbuffers::Offset<CallOptions> CreateCallOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5822. struct PadOptionsT : public flatbuffers::NativeTable {
  5823. typedef PadOptions TableType;
  5824. PadOptionsT() {
  5825. }
  5826. };
  5827. struct PadOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5828. typedef PadOptionsT NativeTableType;
  5829. typedef PadOptionsBuilder Builder;
  5830. bool Verify(flatbuffers::Verifier &verifier) const {
  5831. return VerifyTableStart(verifier) &&
  5832. verifier.EndTable();
  5833. }
  5834. PadOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5835. void UnPackTo(PadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5836. static flatbuffers::Offset<PadOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5837. };
  5838. struct PadOptionsBuilder {
  5839. typedef PadOptions Table;
  5840. flatbuffers::FlatBufferBuilder &fbb_;
  5841. flatbuffers::uoffset_t start_;
  5842. explicit PadOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5843. : fbb_(_fbb) {
  5844. start_ = fbb_.StartTable();
  5845. }
  5846. PadOptionsBuilder &operator=(const PadOptionsBuilder &);
  5847. flatbuffers::Offset<PadOptions> Finish() {
  5848. const auto end = fbb_.EndTable(start_);
  5849. auto o = flatbuffers::Offset<PadOptions>(end);
  5850. return o;
  5851. }
  5852. };
  5853. inline flatbuffers::Offset<PadOptions> CreatePadOptions(
  5854. flatbuffers::FlatBufferBuilder &_fbb) {
  5855. PadOptionsBuilder builder_(_fbb);
  5856. return builder_.Finish();
  5857. }
  5858. flatbuffers::Offset<PadOptions> CreatePadOptions(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5859. struct PadV2OptionsT : public flatbuffers::NativeTable {
  5860. typedef PadV2Options TableType;
  5861. PadV2OptionsT() {
  5862. }
  5863. };
  5864. struct PadV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5865. typedef PadV2OptionsT NativeTableType;
  5866. typedef PadV2OptionsBuilder Builder;
  5867. bool Verify(flatbuffers::Verifier &verifier) const {
  5868. return VerifyTableStart(verifier) &&
  5869. verifier.EndTable();
  5870. }
  5871. PadV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5872. void UnPackTo(PadV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5873. static flatbuffers::Offset<PadV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5874. };
  5875. struct PadV2OptionsBuilder {
  5876. typedef PadV2Options Table;
  5877. flatbuffers::FlatBufferBuilder &fbb_;
  5878. flatbuffers::uoffset_t start_;
  5879. explicit PadV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5880. : fbb_(_fbb) {
  5881. start_ = fbb_.StartTable();
  5882. }
  5883. PadV2OptionsBuilder &operator=(const PadV2OptionsBuilder &);
  5884. flatbuffers::Offset<PadV2Options> Finish() {
  5885. const auto end = fbb_.EndTable(start_);
  5886. auto o = flatbuffers::Offset<PadV2Options>(end);
  5887. return o;
  5888. }
  5889. };
  5890. inline flatbuffers::Offset<PadV2Options> CreatePadV2Options(
  5891. flatbuffers::FlatBufferBuilder &_fbb) {
  5892. PadV2OptionsBuilder builder_(_fbb);
  5893. return builder_.Finish();
  5894. }
  5895. flatbuffers::Offset<PadV2Options> CreatePadV2Options(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5896. struct ReshapeOptionsT : public flatbuffers::NativeTable {
  5897. typedef ReshapeOptions TableType;
  5898. std::vector<int32_t> new_shape;
  5899. ReshapeOptionsT() {
  5900. }
  5901. };
  5902. struct ReshapeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5903. typedef ReshapeOptionsT NativeTableType;
  5904. typedef ReshapeOptionsBuilder Builder;
  5905. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  5906. VT_NEW_SHAPE = 4
  5907. };
  5908. const flatbuffers::Vector<int32_t> *new_shape() const {
  5909. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_NEW_SHAPE);
  5910. }
  5911. bool Verify(flatbuffers::Verifier &verifier) const {
  5912. return VerifyTableStart(verifier) &&
  5913. VerifyOffset(verifier, VT_NEW_SHAPE) &&
  5914. verifier.VerifyVector(new_shape()) &&
  5915. verifier.EndTable();
  5916. }
  5917. ReshapeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5918. void UnPackTo(ReshapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5919. static flatbuffers::Offset<ReshapeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5920. };
  5921. struct ReshapeOptionsBuilder {
  5922. typedef ReshapeOptions Table;
  5923. flatbuffers::FlatBufferBuilder &fbb_;
  5924. flatbuffers::uoffset_t start_;
  5925. void add_new_shape(flatbuffers::Offset<flatbuffers::Vector<int32_t>> new_shape) {
  5926. fbb_.AddOffset(ReshapeOptions::VT_NEW_SHAPE, new_shape);
  5927. }
  5928. explicit ReshapeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5929. : fbb_(_fbb) {
  5930. start_ = fbb_.StartTable();
  5931. }
  5932. ReshapeOptionsBuilder &operator=(const ReshapeOptionsBuilder &);
  5933. flatbuffers::Offset<ReshapeOptions> Finish() {
  5934. const auto end = fbb_.EndTable(start_);
  5935. auto o = flatbuffers::Offset<ReshapeOptions>(end);
  5936. return o;
  5937. }
  5938. };
  5939. inline flatbuffers::Offset<ReshapeOptions> CreateReshapeOptions(
  5940. flatbuffers::FlatBufferBuilder &_fbb,
  5941. flatbuffers::Offset<flatbuffers::Vector<int32_t>> new_shape = 0) {
  5942. ReshapeOptionsBuilder builder_(_fbb);
  5943. builder_.add_new_shape(new_shape);
  5944. return builder_.Finish();
  5945. }
  5946. inline flatbuffers::Offset<ReshapeOptions> CreateReshapeOptionsDirect(
  5947. flatbuffers::FlatBufferBuilder &_fbb,
  5948. const std::vector<int32_t> *new_shape = nullptr) {
  5949. auto new_shape__ = new_shape ? _fbb.CreateVector<int32_t>(*new_shape) : 0;
  5950. return tflite::CreateReshapeOptions(
  5951. _fbb,
  5952. new_shape__);
  5953. }
  5954. flatbuffers::Offset<ReshapeOptions> CreateReshapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5955. struct SpaceToBatchNDOptionsT : public flatbuffers::NativeTable {
  5956. typedef SpaceToBatchNDOptions TableType;
  5957. SpaceToBatchNDOptionsT() {
  5958. }
  5959. };
  5960. struct SpaceToBatchNDOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5961. typedef SpaceToBatchNDOptionsT NativeTableType;
  5962. typedef SpaceToBatchNDOptionsBuilder Builder;
  5963. bool Verify(flatbuffers::Verifier &verifier) const {
  5964. return VerifyTableStart(verifier) &&
  5965. verifier.EndTable();
  5966. }
  5967. SpaceToBatchNDOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5968. void UnPackTo(SpaceToBatchNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  5969. static flatbuffers::Offset<SpaceToBatchNDOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5970. };
  5971. struct SpaceToBatchNDOptionsBuilder {
  5972. typedef SpaceToBatchNDOptions Table;
  5973. flatbuffers::FlatBufferBuilder &fbb_;
  5974. flatbuffers::uoffset_t start_;
  5975. explicit SpaceToBatchNDOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  5976. : fbb_(_fbb) {
  5977. start_ = fbb_.StartTable();
  5978. }
  5979. SpaceToBatchNDOptionsBuilder &operator=(const SpaceToBatchNDOptionsBuilder &);
  5980. flatbuffers::Offset<SpaceToBatchNDOptions> Finish() {
  5981. const auto end = fbb_.EndTable(start_);
  5982. auto o = flatbuffers::Offset<SpaceToBatchNDOptions>(end);
  5983. return o;
  5984. }
  5985. };
  5986. inline flatbuffers::Offset<SpaceToBatchNDOptions> CreateSpaceToBatchNDOptions(
  5987. flatbuffers::FlatBufferBuilder &_fbb) {
  5988. SpaceToBatchNDOptionsBuilder builder_(_fbb);
  5989. return builder_.Finish();
  5990. }
  5991. flatbuffers::Offset<SpaceToBatchNDOptions> CreateSpaceToBatchNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  5992. struct BatchToSpaceNDOptionsT : public flatbuffers::NativeTable {
  5993. typedef BatchToSpaceNDOptions TableType;
  5994. BatchToSpaceNDOptionsT() {
  5995. }
  5996. };
  5997. struct BatchToSpaceNDOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  5998. typedef BatchToSpaceNDOptionsT NativeTableType;
  5999. typedef BatchToSpaceNDOptionsBuilder Builder;
  6000. bool Verify(flatbuffers::Verifier &verifier) const {
  6001. return VerifyTableStart(verifier) &&
  6002. verifier.EndTable();
  6003. }
  6004. BatchToSpaceNDOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6005. void UnPackTo(BatchToSpaceNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6006. static flatbuffers::Offset<BatchToSpaceNDOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6007. };
  6008. struct BatchToSpaceNDOptionsBuilder {
  6009. typedef BatchToSpaceNDOptions Table;
  6010. flatbuffers::FlatBufferBuilder &fbb_;
  6011. flatbuffers::uoffset_t start_;
  6012. explicit BatchToSpaceNDOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6013. : fbb_(_fbb) {
  6014. start_ = fbb_.StartTable();
  6015. }
  6016. BatchToSpaceNDOptionsBuilder &operator=(const BatchToSpaceNDOptionsBuilder &);
  6017. flatbuffers::Offset<BatchToSpaceNDOptions> Finish() {
  6018. const auto end = fbb_.EndTable(start_);
  6019. auto o = flatbuffers::Offset<BatchToSpaceNDOptions>(end);
  6020. return o;
  6021. }
  6022. };
  6023. inline flatbuffers::Offset<BatchToSpaceNDOptions> CreateBatchToSpaceNDOptions(
  6024. flatbuffers::FlatBufferBuilder &_fbb) {
  6025. BatchToSpaceNDOptionsBuilder builder_(_fbb);
  6026. return builder_.Finish();
  6027. }
  6028. flatbuffers::Offset<BatchToSpaceNDOptions> CreateBatchToSpaceNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6029. struct SkipGramOptionsT : public flatbuffers::NativeTable {
  6030. typedef SkipGramOptions TableType;
  6031. int32_t ngram_size;
  6032. int32_t max_skip_size;
  6033. bool include_all_ngrams;
  6034. SkipGramOptionsT()
  6035. : ngram_size(0),
  6036. max_skip_size(0),
  6037. include_all_ngrams(false) {
  6038. }
  6039. };
  6040. struct SkipGramOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6041. typedef SkipGramOptionsT NativeTableType;
  6042. typedef SkipGramOptionsBuilder Builder;
  6043. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6044. VT_NGRAM_SIZE = 4,
  6045. VT_MAX_SKIP_SIZE = 6,
  6046. VT_INCLUDE_ALL_NGRAMS = 8
  6047. };
  6048. int32_t ngram_size() const {
  6049. return GetField<int32_t>(VT_NGRAM_SIZE, 0);
  6050. }
  6051. int32_t max_skip_size() const {
  6052. return GetField<int32_t>(VT_MAX_SKIP_SIZE, 0);
  6053. }
  6054. bool include_all_ngrams() const {
  6055. return GetField<uint8_t>(VT_INCLUDE_ALL_NGRAMS, 0) != 0;
  6056. }
  6057. bool Verify(flatbuffers::Verifier &verifier) const {
  6058. return VerifyTableStart(verifier) &&
  6059. VerifyField<int32_t>(verifier, VT_NGRAM_SIZE) &&
  6060. VerifyField<int32_t>(verifier, VT_MAX_SKIP_SIZE) &&
  6061. VerifyField<uint8_t>(verifier, VT_INCLUDE_ALL_NGRAMS) &&
  6062. verifier.EndTable();
  6063. }
  6064. SkipGramOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6065. void UnPackTo(SkipGramOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6066. static flatbuffers::Offset<SkipGramOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6067. };
  6068. struct SkipGramOptionsBuilder {
  6069. typedef SkipGramOptions Table;
  6070. flatbuffers::FlatBufferBuilder &fbb_;
  6071. flatbuffers::uoffset_t start_;
  6072. void add_ngram_size(int32_t ngram_size) {
  6073. fbb_.AddElement<int32_t>(SkipGramOptions::VT_NGRAM_SIZE, ngram_size, 0);
  6074. }
  6075. void add_max_skip_size(int32_t max_skip_size) {
  6076. fbb_.AddElement<int32_t>(SkipGramOptions::VT_MAX_SKIP_SIZE, max_skip_size, 0);
  6077. }
  6078. void add_include_all_ngrams(bool include_all_ngrams) {
  6079. fbb_.AddElement<uint8_t>(SkipGramOptions::VT_INCLUDE_ALL_NGRAMS, static_cast<uint8_t>(include_all_ngrams), 0);
  6080. }
  6081. explicit SkipGramOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6082. : fbb_(_fbb) {
  6083. start_ = fbb_.StartTable();
  6084. }
  6085. SkipGramOptionsBuilder &operator=(const SkipGramOptionsBuilder &);
  6086. flatbuffers::Offset<SkipGramOptions> Finish() {
  6087. const auto end = fbb_.EndTable(start_);
  6088. auto o = flatbuffers::Offset<SkipGramOptions>(end);
  6089. return o;
  6090. }
  6091. };
  6092. inline flatbuffers::Offset<SkipGramOptions> CreateSkipGramOptions(
  6093. flatbuffers::FlatBufferBuilder &_fbb,
  6094. int32_t ngram_size = 0,
  6095. int32_t max_skip_size = 0,
  6096. bool include_all_ngrams = false) {
  6097. SkipGramOptionsBuilder builder_(_fbb);
  6098. builder_.add_max_skip_size(max_skip_size);
  6099. builder_.add_ngram_size(ngram_size);
  6100. builder_.add_include_all_ngrams(include_all_ngrams);
  6101. return builder_.Finish();
  6102. }
  6103. flatbuffers::Offset<SkipGramOptions> CreateSkipGramOptions(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6104. struct SpaceToDepthOptionsT : public flatbuffers::NativeTable {
  6105. typedef SpaceToDepthOptions TableType;
  6106. int32_t block_size;
  6107. SpaceToDepthOptionsT()
  6108. : block_size(0) {
  6109. }
  6110. };
  6111. struct SpaceToDepthOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6112. typedef SpaceToDepthOptionsT NativeTableType;
  6113. typedef SpaceToDepthOptionsBuilder Builder;
  6114. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6115. VT_BLOCK_SIZE = 4
  6116. };
  6117. int32_t block_size() const {
  6118. return GetField<int32_t>(VT_BLOCK_SIZE, 0);
  6119. }
  6120. bool Verify(flatbuffers::Verifier &verifier) const {
  6121. return VerifyTableStart(verifier) &&
  6122. VerifyField<int32_t>(verifier, VT_BLOCK_SIZE) &&
  6123. verifier.EndTable();
  6124. }
  6125. SpaceToDepthOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6126. void UnPackTo(SpaceToDepthOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6127. static flatbuffers::Offset<SpaceToDepthOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6128. };
  6129. struct SpaceToDepthOptionsBuilder {
  6130. typedef SpaceToDepthOptions Table;
  6131. flatbuffers::FlatBufferBuilder &fbb_;
  6132. flatbuffers::uoffset_t start_;
  6133. void add_block_size(int32_t block_size) {
  6134. fbb_.AddElement<int32_t>(SpaceToDepthOptions::VT_BLOCK_SIZE, block_size, 0);
  6135. }
  6136. explicit SpaceToDepthOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6137. : fbb_(_fbb) {
  6138. start_ = fbb_.StartTable();
  6139. }
  6140. SpaceToDepthOptionsBuilder &operator=(const SpaceToDepthOptionsBuilder &);
  6141. flatbuffers::Offset<SpaceToDepthOptions> Finish() {
  6142. const auto end = fbb_.EndTable(start_);
  6143. auto o = flatbuffers::Offset<SpaceToDepthOptions>(end);
  6144. return o;
  6145. }
  6146. };
  6147. inline flatbuffers::Offset<SpaceToDepthOptions> CreateSpaceToDepthOptions(
  6148. flatbuffers::FlatBufferBuilder &_fbb,
  6149. int32_t block_size = 0) {
  6150. SpaceToDepthOptionsBuilder builder_(_fbb);
  6151. builder_.add_block_size(block_size);
  6152. return builder_.Finish();
  6153. }
  6154. flatbuffers::Offset<SpaceToDepthOptions> CreateSpaceToDepthOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6155. struct DepthToSpaceOptionsT : public flatbuffers::NativeTable {
  6156. typedef DepthToSpaceOptions TableType;
  6157. int32_t block_size;
  6158. DepthToSpaceOptionsT()
  6159. : block_size(0) {
  6160. }
  6161. };
  6162. struct DepthToSpaceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6163. typedef DepthToSpaceOptionsT NativeTableType;
  6164. typedef DepthToSpaceOptionsBuilder Builder;
  6165. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6166. VT_BLOCK_SIZE = 4
  6167. };
  6168. int32_t block_size() const {
  6169. return GetField<int32_t>(VT_BLOCK_SIZE, 0);
  6170. }
  6171. bool Verify(flatbuffers::Verifier &verifier) const {
  6172. return VerifyTableStart(verifier) &&
  6173. VerifyField<int32_t>(verifier, VT_BLOCK_SIZE) &&
  6174. verifier.EndTable();
  6175. }
  6176. DepthToSpaceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6177. void UnPackTo(DepthToSpaceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6178. static flatbuffers::Offset<DepthToSpaceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6179. };
  6180. struct DepthToSpaceOptionsBuilder {
  6181. typedef DepthToSpaceOptions Table;
  6182. flatbuffers::FlatBufferBuilder &fbb_;
  6183. flatbuffers::uoffset_t start_;
  6184. void add_block_size(int32_t block_size) {
  6185. fbb_.AddElement<int32_t>(DepthToSpaceOptions::VT_BLOCK_SIZE, block_size, 0);
  6186. }
  6187. explicit DepthToSpaceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6188. : fbb_(_fbb) {
  6189. start_ = fbb_.StartTable();
  6190. }
  6191. DepthToSpaceOptionsBuilder &operator=(const DepthToSpaceOptionsBuilder &);
  6192. flatbuffers::Offset<DepthToSpaceOptions> Finish() {
  6193. const auto end = fbb_.EndTable(start_);
  6194. auto o = flatbuffers::Offset<DepthToSpaceOptions>(end);
  6195. return o;
  6196. }
  6197. };
  6198. inline flatbuffers::Offset<DepthToSpaceOptions> CreateDepthToSpaceOptions(
  6199. flatbuffers::FlatBufferBuilder &_fbb,
  6200. int32_t block_size = 0) {
  6201. DepthToSpaceOptionsBuilder builder_(_fbb);
  6202. builder_.add_block_size(block_size);
  6203. return builder_.Finish();
  6204. }
  6205. flatbuffers::Offset<DepthToSpaceOptions> CreateDepthToSpaceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6206. struct SubOptionsT : public flatbuffers::NativeTable {
  6207. typedef SubOptions TableType;
  6208. tflite::ActivationFunctionType fused_activation_function;
  6209. bool pot_scale_int16;
  6210. SubOptionsT()
  6211. : fused_activation_function(tflite::ActivationFunctionType_NONE),
  6212. pot_scale_int16(true) {
  6213. }
  6214. };
  6215. struct SubOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6216. typedef SubOptionsT NativeTableType;
  6217. typedef SubOptionsBuilder Builder;
  6218. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6219. VT_FUSED_ACTIVATION_FUNCTION = 4,
  6220. VT_POT_SCALE_INT16 = 6
  6221. };
  6222. tflite::ActivationFunctionType fused_activation_function() const {
  6223. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  6224. }
  6225. bool pot_scale_int16() const {
  6226. return GetField<uint8_t>(VT_POT_SCALE_INT16, 1) != 0;
  6227. }
  6228. bool Verify(flatbuffers::Verifier &verifier) const {
  6229. return VerifyTableStart(verifier) &&
  6230. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  6231. VerifyField<uint8_t>(verifier, VT_POT_SCALE_INT16) &&
  6232. verifier.EndTable();
  6233. }
  6234. SubOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6235. void UnPackTo(SubOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6236. static flatbuffers::Offset<SubOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6237. };
  6238. struct SubOptionsBuilder {
  6239. typedef SubOptions Table;
  6240. flatbuffers::FlatBufferBuilder &fbb_;
  6241. flatbuffers::uoffset_t start_;
  6242. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  6243. fbb_.AddElement<int8_t>(SubOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  6244. }
  6245. void add_pot_scale_int16(bool pot_scale_int16) {
  6246. fbb_.AddElement<uint8_t>(SubOptions::VT_POT_SCALE_INT16, static_cast<uint8_t>(pot_scale_int16), 1);
  6247. }
  6248. explicit SubOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6249. : fbb_(_fbb) {
  6250. start_ = fbb_.StartTable();
  6251. }
  6252. SubOptionsBuilder &operator=(const SubOptionsBuilder &);
  6253. flatbuffers::Offset<SubOptions> Finish() {
  6254. const auto end = fbb_.EndTable(start_);
  6255. auto o = flatbuffers::Offset<SubOptions>(end);
  6256. return o;
  6257. }
  6258. };
  6259. inline flatbuffers::Offset<SubOptions> CreateSubOptions(
  6260. flatbuffers::FlatBufferBuilder &_fbb,
  6261. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE,
  6262. bool pot_scale_int16 = true) {
  6263. SubOptionsBuilder builder_(_fbb);
  6264. builder_.add_pot_scale_int16(pot_scale_int16);
  6265. builder_.add_fused_activation_function(fused_activation_function);
  6266. return builder_.Finish();
  6267. }
  6268. flatbuffers::Offset<SubOptions> CreateSubOptions(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6269. struct DivOptionsT : public flatbuffers::NativeTable {
  6270. typedef DivOptions TableType;
  6271. tflite::ActivationFunctionType fused_activation_function;
  6272. DivOptionsT()
  6273. : fused_activation_function(tflite::ActivationFunctionType_NONE) {
  6274. }
  6275. };
  6276. struct DivOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6277. typedef DivOptionsT NativeTableType;
  6278. typedef DivOptionsBuilder Builder;
  6279. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6280. VT_FUSED_ACTIVATION_FUNCTION = 4
  6281. };
  6282. tflite::ActivationFunctionType fused_activation_function() const {
  6283. return static_cast<tflite::ActivationFunctionType>(GetField<int8_t>(VT_FUSED_ACTIVATION_FUNCTION, 0));
  6284. }
  6285. bool Verify(flatbuffers::Verifier &verifier) const {
  6286. return VerifyTableStart(verifier) &&
  6287. VerifyField<int8_t>(verifier, VT_FUSED_ACTIVATION_FUNCTION) &&
  6288. verifier.EndTable();
  6289. }
  6290. DivOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6291. void UnPackTo(DivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6292. static flatbuffers::Offset<DivOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6293. };
  6294. struct DivOptionsBuilder {
  6295. typedef DivOptions Table;
  6296. flatbuffers::FlatBufferBuilder &fbb_;
  6297. flatbuffers::uoffset_t start_;
  6298. void add_fused_activation_function(tflite::ActivationFunctionType fused_activation_function) {
  6299. fbb_.AddElement<int8_t>(DivOptions::VT_FUSED_ACTIVATION_FUNCTION, static_cast<int8_t>(fused_activation_function), 0);
  6300. }
  6301. explicit DivOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6302. : fbb_(_fbb) {
  6303. start_ = fbb_.StartTable();
  6304. }
  6305. DivOptionsBuilder &operator=(const DivOptionsBuilder &);
  6306. flatbuffers::Offset<DivOptions> Finish() {
  6307. const auto end = fbb_.EndTable(start_);
  6308. auto o = flatbuffers::Offset<DivOptions>(end);
  6309. return o;
  6310. }
  6311. };
  6312. inline flatbuffers::Offset<DivOptions> CreateDivOptions(
  6313. flatbuffers::FlatBufferBuilder &_fbb,
  6314. tflite::ActivationFunctionType fused_activation_function = tflite::ActivationFunctionType_NONE) {
  6315. DivOptionsBuilder builder_(_fbb);
  6316. builder_.add_fused_activation_function(fused_activation_function);
  6317. return builder_.Finish();
  6318. }
  6319. flatbuffers::Offset<DivOptions> CreateDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6320. struct TopKV2OptionsT : public flatbuffers::NativeTable {
  6321. typedef TopKV2Options TableType;
  6322. TopKV2OptionsT() {
  6323. }
  6324. };
  6325. struct TopKV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6326. typedef TopKV2OptionsT NativeTableType;
  6327. typedef TopKV2OptionsBuilder Builder;
  6328. bool Verify(flatbuffers::Verifier &verifier) const {
  6329. return VerifyTableStart(verifier) &&
  6330. verifier.EndTable();
  6331. }
  6332. TopKV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6333. void UnPackTo(TopKV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6334. static flatbuffers::Offset<TopKV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6335. };
  6336. struct TopKV2OptionsBuilder {
  6337. typedef TopKV2Options Table;
  6338. flatbuffers::FlatBufferBuilder &fbb_;
  6339. flatbuffers::uoffset_t start_;
  6340. explicit TopKV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6341. : fbb_(_fbb) {
  6342. start_ = fbb_.StartTable();
  6343. }
  6344. TopKV2OptionsBuilder &operator=(const TopKV2OptionsBuilder &);
  6345. flatbuffers::Offset<TopKV2Options> Finish() {
  6346. const auto end = fbb_.EndTable(start_);
  6347. auto o = flatbuffers::Offset<TopKV2Options>(end);
  6348. return o;
  6349. }
  6350. };
  6351. inline flatbuffers::Offset<TopKV2Options> CreateTopKV2Options(
  6352. flatbuffers::FlatBufferBuilder &_fbb) {
  6353. TopKV2OptionsBuilder builder_(_fbb);
  6354. return builder_.Finish();
  6355. }
  6356. flatbuffers::Offset<TopKV2Options> CreateTopKV2Options(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6357. struct EmbeddingLookupSparseOptionsT : public flatbuffers::NativeTable {
  6358. typedef EmbeddingLookupSparseOptions TableType;
  6359. tflite::CombinerType combiner;
  6360. EmbeddingLookupSparseOptionsT()
  6361. : combiner(tflite::CombinerType_SUM) {
  6362. }
  6363. };
  6364. struct EmbeddingLookupSparseOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6365. typedef EmbeddingLookupSparseOptionsT NativeTableType;
  6366. typedef EmbeddingLookupSparseOptionsBuilder Builder;
  6367. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6368. VT_COMBINER = 4
  6369. };
  6370. tflite::CombinerType combiner() const {
  6371. return static_cast<tflite::CombinerType>(GetField<int8_t>(VT_COMBINER, 0));
  6372. }
  6373. bool Verify(flatbuffers::Verifier &verifier) const {
  6374. return VerifyTableStart(verifier) &&
  6375. VerifyField<int8_t>(verifier, VT_COMBINER) &&
  6376. verifier.EndTable();
  6377. }
  6378. EmbeddingLookupSparseOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6379. void UnPackTo(EmbeddingLookupSparseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6380. static flatbuffers::Offset<EmbeddingLookupSparseOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6381. };
  6382. struct EmbeddingLookupSparseOptionsBuilder {
  6383. typedef EmbeddingLookupSparseOptions Table;
  6384. flatbuffers::FlatBufferBuilder &fbb_;
  6385. flatbuffers::uoffset_t start_;
  6386. void add_combiner(tflite::CombinerType combiner) {
  6387. fbb_.AddElement<int8_t>(EmbeddingLookupSparseOptions::VT_COMBINER, static_cast<int8_t>(combiner), 0);
  6388. }
  6389. explicit EmbeddingLookupSparseOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6390. : fbb_(_fbb) {
  6391. start_ = fbb_.StartTable();
  6392. }
  6393. EmbeddingLookupSparseOptionsBuilder &operator=(const EmbeddingLookupSparseOptionsBuilder &);
  6394. flatbuffers::Offset<EmbeddingLookupSparseOptions> Finish() {
  6395. const auto end = fbb_.EndTable(start_);
  6396. auto o = flatbuffers::Offset<EmbeddingLookupSparseOptions>(end);
  6397. return o;
  6398. }
  6399. };
  6400. inline flatbuffers::Offset<EmbeddingLookupSparseOptions> CreateEmbeddingLookupSparseOptions(
  6401. flatbuffers::FlatBufferBuilder &_fbb,
  6402. tflite::CombinerType combiner = tflite::CombinerType_SUM) {
  6403. EmbeddingLookupSparseOptionsBuilder builder_(_fbb);
  6404. builder_.add_combiner(combiner);
  6405. return builder_.Finish();
  6406. }
  6407. flatbuffers::Offset<EmbeddingLookupSparseOptions> CreateEmbeddingLookupSparseOptions(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6408. struct GatherOptionsT : public flatbuffers::NativeTable {
  6409. typedef GatherOptions TableType;
  6410. int32_t axis;
  6411. int32_t batch_dims;
  6412. GatherOptionsT()
  6413. : axis(0),
  6414. batch_dims(0) {
  6415. }
  6416. };
  6417. struct GatherOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6418. typedef GatherOptionsT NativeTableType;
  6419. typedef GatherOptionsBuilder Builder;
  6420. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6421. VT_AXIS = 4,
  6422. VT_BATCH_DIMS = 6
  6423. };
  6424. int32_t axis() const {
  6425. return GetField<int32_t>(VT_AXIS, 0);
  6426. }
  6427. int32_t batch_dims() const {
  6428. return GetField<int32_t>(VT_BATCH_DIMS, 0);
  6429. }
  6430. bool Verify(flatbuffers::Verifier &verifier) const {
  6431. return VerifyTableStart(verifier) &&
  6432. VerifyField<int32_t>(verifier, VT_AXIS) &&
  6433. VerifyField<int32_t>(verifier, VT_BATCH_DIMS) &&
  6434. verifier.EndTable();
  6435. }
  6436. GatherOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6437. void UnPackTo(GatherOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6438. static flatbuffers::Offset<GatherOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6439. };
  6440. struct GatherOptionsBuilder {
  6441. typedef GatherOptions Table;
  6442. flatbuffers::FlatBufferBuilder &fbb_;
  6443. flatbuffers::uoffset_t start_;
  6444. void add_axis(int32_t axis) {
  6445. fbb_.AddElement<int32_t>(GatherOptions::VT_AXIS, axis, 0);
  6446. }
  6447. void add_batch_dims(int32_t batch_dims) {
  6448. fbb_.AddElement<int32_t>(GatherOptions::VT_BATCH_DIMS, batch_dims, 0);
  6449. }
  6450. explicit GatherOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6451. : fbb_(_fbb) {
  6452. start_ = fbb_.StartTable();
  6453. }
  6454. GatherOptionsBuilder &operator=(const GatherOptionsBuilder &);
  6455. flatbuffers::Offset<GatherOptions> Finish() {
  6456. const auto end = fbb_.EndTable(start_);
  6457. auto o = flatbuffers::Offset<GatherOptions>(end);
  6458. return o;
  6459. }
  6460. };
  6461. inline flatbuffers::Offset<GatherOptions> CreateGatherOptions(
  6462. flatbuffers::FlatBufferBuilder &_fbb,
  6463. int32_t axis = 0,
  6464. int32_t batch_dims = 0) {
  6465. GatherOptionsBuilder builder_(_fbb);
  6466. builder_.add_batch_dims(batch_dims);
  6467. builder_.add_axis(axis);
  6468. return builder_.Finish();
  6469. }
  6470. flatbuffers::Offset<GatherOptions> CreateGatherOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6471. struct TransposeOptionsT : public flatbuffers::NativeTable {
  6472. typedef TransposeOptions TableType;
  6473. TransposeOptionsT() {
  6474. }
  6475. };
  6476. struct TransposeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6477. typedef TransposeOptionsT NativeTableType;
  6478. typedef TransposeOptionsBuilder Builder;
  6479. bool Verify(flatbuffers::Verifier &verifier) const {
  6480. return VerifyTableStart(verifier) &&
  6481. verifier.EndTable();
  6482. }
  6483. TransposeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6484. void UnPackTo(TransposeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6485. static flatbuffers::Offset<TransposeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6486. };
  6487. struct TransposeOptionsBuilder {
  6488. typedef TransposeOptions Table;
  6489. flatbuffers::FlatBufferBuilder &fbb_;
  6490. flatbuffers::uoffset_t start_;
  6491. explicit TransposeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6492. : fbb_(_fbb) {
  6493. start_ = fbb_.StartTable();
  6494. }
  6495. TransposeOptionsBuilder &operator=(const TransposeOptionsBuilder &);
  6496. flatbuffers::Offset<TransposeOptions> Finish() {
  6497. const auto end = fbb_.EndTable(start_);
  6498. auto o = flatbuffers::Offset<TransposeOptions>(end);
  6499. return o;
  6500. }
  6501. };
  6502. inline flatbuffers::Offset<TransposeOptions> CreateTransposeOptions(
  6503. flatbuffers::FlatBufferBuilder &_fbb) {
  6504. TransposeOptionsBuilder builder_(_fbb);
  6505. return builder_.Finish();
  6506. }
  6507. flatbuffers::Offset<TransposeOptions> CreateTransposeOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6508. struct ExpOptionsT : public flatbuffers::NativeTable {
  6509. typedef ExpOptions TableType;
  6510. ExpOptionsT() {
  6511. }
  6512. };
  6513. struct ExpOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6514. typedef ExpOptionsT NativeTableType;
  6515. typedef ExpOptionsBuilder Builder;
  6516. bool Verify(flatbuffers::Verifier &verifier) const {
  6517. return VerifyTableStart(verifier) &&
  6518. verifier.EndTable();
  6519. }
  6520. ExpOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6521. void UnPackTo(ExpOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6522. static flatbuffers::Offset<ExpOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6523. };
  6524. struct ExpOptionsBuilder {
  6525. typedef ExpOptions Table;
  6526. flatbuffers::FlatBufferBuilder &fbb_;
  6527. flatbuffers::uoffset_t start_;
  6528. explicit ExpOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6529. : fbb_(_fbb) {
  6530. start_ = fbb_.StartTable();
  6531. }
  6532. ExpOptionsBuilder &operator=(const ExpOptionsBuilder &);
  6533. flatbuffers::Offset<ExpOptions> Finish() {
  6534. const auto end = fbb_.EndTable(start_);
  6535. auto o = flatbuffers::Offset<ExpOptions>(end);
  6536. return o;
  6537. }
  6538. };
  6539. inline flatbuffers::Offset<ExpOptions> CreateExpOptions(
  6540. flatbuffers::FlatBufferBuilder &_fbb) {
  6541. ExpOptionsBuilder builder_(_fbb);
  6542. return builder_.Finish();
  6543. }
  6544. flatbuffers::Offset<ExpOptions> CreateExpOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6545. struct CosOptionsT : public flatbuffers::NativeTable {
  6546. typedef CosOptions TableType;
  6547. CosOptionsT() {
  6548. }
  6549. };
  6550. struct CosOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6551. typedef CosOptionsT NativeTableType;
  6552. typedef CosOptionsBuilder Builder;
  6553. bool Verify(flatbuffers::Verifier &verifier) const {
  6554. return VerifyTableStart(verifier) &&
  6555. verifier.EndTable();
  6556. }
  6557. CosOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6558. void UnPackTo(CosOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6559. static flatbuffers::Offset<CosOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6560. };
  6561. struct CosOptionsBuilder {
  6562. typedef CosOptions Table;
  6563. flatbuffers::FlatBufferBuilder &fbb_;
  6564. flatbuffers::uoffset_t start_;
  6565. explicit CosOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6566. : fbb_(_fbb) {
  6567. start_ = fbb_.StartTable();
  6568. }
  6569. CosOptionsBuilder &operator=(const CosOptionsBuilder &);
  6570. flatbuffers::Offset<CosOptions> Finish() {
  6571. const auto end = fbb_.EndTable(start_);
  6572. auto o = flatbuffers::Offset<CosOptions>(end);
  6573. return o;
  6574. }
  6575. };
  6576. inline flatbuffers::Offset<CosOptions> CreateCosOptions(
  6577. flatbuffers::FlatBufferBuilder &_fbb) {
  6578. CosOptionsBuilder builder_(_fbb);
  6579. return builder_.Finish();
  6580. }
  6581. flatbuffers::Offset<CosOptions> CreateCosOptions(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6582. struct ReducerOptionsT : public flatbuffers::NativeTable {
  6583. typedef ReducerOptions TableType;
  6584. bool keep_dims;
  6585. ReducerOptionsT()
  6586. : keep_dims(false) {
  6587. }
  6588. };
  6589. struct ReducerOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6590. typedef ReducerOptionsT NativeTableType;
  6591. typedef ReducerOptionsBuilder Builder;
  6592. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6593. VT_KEEP_DIMS = 4
  6594. };
  6595. bool keep_dims() const {
  6596. return GetField<uint8_t>(VT_KEEP_DIMS, 0) != 0;
  6597. }
  6598. bool Verify(flatbuffers::Verifier &verifier) const {
  6599. return VerifyTableStart(verifier) &&
  6600. VerifyField<uint8_t>(verifier, VT_KEEP_DIMS) &&
  6601. verifier.EndTable();
  6602. }
  6603. ReducerOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6604. void UnPackTo(ReducerOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6605. static flatbuffers::Offset<ReducerOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6606. };
  6607. struct ReducerOptionsBuilder {
  6608. typedef ReducerOptions Table;
  6609. flatbuffers::FlatBufferBuilder &fbb_;
  6610. flatbuffers::uoffset_t start_;
  6611. void add_keep_dims(bool keep_dims) {
  6612. fbb_.AddElement<uint8_t>(ReducerOptions::VT_KEEP_DIMS, static_cast<uint8_t>(keep_dims), 0);
  6613. }
  6614. explicit ReducerOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6615. : fbb_(_fbb) {
  6616. start_ = fbb_.StartTable();
  6617. }
  6618. ReducerOptionsBuilder &operator=(const ReducerOptionsBuilder &);
  6619. flatbuffers::Offset<ReducerOptions> Finish() {
  6620. const auto end = fbb_.EndTable(start_);
  6621. auto o = flatbuffers::Offset<ReducerOptions>(end);
  6622. return o;
  6623. }
  6624. };
  6625. inline flatbuffers::Offset<ReducerOptions> CreateReducerOptions(
  6626. flatbuffers::FlatBufferBuilder &_fbb,
  6627. bool keep_dims = false) {
  6628. ReducerOptionsBuilder builder_(_fbb);
  6629. builder_.add_keep_dims(keep_dims);
  6630. return builder_.Finish();
  6631. }
  6632. flatbuffers::Offset<ReducerOptions> CreateReducerOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6633. struct SqueezeOptionsT : public flatbuffers::NativeTable {
  6634. typedef SqueezeOptions TableType;
  6635. std::vector<int32_t> squeeze_dims;
  6636. SqueezeOptionsT() {
  6637. }
  6638. };
  6639. struct SqueezeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6640. typedef SqueezeOptionsT NativeTableType;
  6641. typedef SqueezeOptionsBuilder Builder;
  6642. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6643. VT_SQUEEZE_DIMS = 4
  6644. };
  6645. const flatbuffers::Vector<int32_t> *squeeze_dims() const {
  6646. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_SQUEEZE_DIMS);
  6647. }
  6648. bool Verify(flatbuffers::Verifier &verifier) const {
  6649. return VerifyTableStart(verifier) &&
  6650. VerifyOffset(verifier, VT_SQUEEZE_DIMS) &&
  6651. verifier.VerifyVector(squeeze_dims()) &&
  6652. verifier.EndTable();
  6653. }
  6654. SqueezeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6655. void UnPackTo(SqueezeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6656. static flatbuffers::Offset<SqueezeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6657. };
  6658. struct SqueezeOptionsBuilder {
  6659. typedef SqueezeOptions Table;
  6660. flatbuffers::FlatBufferBuilder &fbb_;
  6661. flatbuffers::uoffset_t start_;
  6662. void add_squeeze_dims(flatbuffers::Offset<flatbuffers::Vector<int32_t>> squeeze_dims) {
  6663. fbb_.AddOffset(SqueezeOptions::VT_SQUEEZE_DIMS, squeeze_dims);
  6664. }
  6665. explicit SqueezeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6666. : fbb_(_fbb) {
  6667. start_ = fbb_.StartTable();
  6668. }
  6669. SqueezeOptionsBuilder &operator=(const SqueezeOptionsBuilder &);
  6670. flatbuffers::Offset<SqueezeOptions> Finish() {
  6671. const auto end = fbb_.EndTable(start_);
  6672. auto o = flatbuffers::Offset<SqueezeOptions>(end);
  6673. return o;
  6674. }
  6675. };
  6676. inline flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptions(
  6677. flatbuffers::FlatBufferBuilder &_fbb,
  6678. flatbuffers::Offset<flatbuffers::Vector<int32_t>> squeeze_dims = 0) {
  6679. SqueezeOptionsBuilder builder_(_fbb);
  6680. builder_.add_squeeze_dims(squeeze_dims);
  6681. return builder_.Finish();
  6682. }
  6683. inline flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptionsDirect(
  6684. flatbuffers::FlatBufferBuilder &_fbb,
  6685. const std::vector<int32_t> *squeeze_dims = nullptr) {
  6686. auto squeeze_dims__ = squeeze_dims ? _fbb.CreateVector<int32_t>(*squeeze_dims) : 0;
  6687. return tflite::CreateSqueezeOptions(
  6688. _fbb,
  6689. squeeze_dims__);
  6690. }
  6691. flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptions(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6692. struct SplitOptionsT : public flatbuffers::NativeTable {
  6693. typedef SplitOptions TableType;
  6694. int32_t num_splits;
  6695. SplitOptionsT()
  6696. : num_splits(0) {
  6697. }
  6698. };
  6699. struct SplitOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6700. typedef SplitOptionsT NativeTableType;
  6701. typedef SplitOptionsBuilder Builder;
  6702. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6703. VT_NUM_SPLITS = 4
  6704. };
  6705. int32_t num_splits() const {
  6706. return GetField<int32_t>(VT_NUM_SPLITS, 0);
  6707. }
  6708. bool Verify(flatbuffers::Verifier &verifier) const {
  6709. return VerifyTableStart(verifier) &&
  6710. VerifyField<int32_t>(verifier, VT_NUM_SPLITS) &&
  6711. verifier.EndTable();
  6712. }
  6713. SplitOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6714. void UnPackTo(SplitOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6715. static flatbuffers::Offset<SplitOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6716. };
  6717. struct SplitOptionsBuilder {
  6718. typedef SplitOptions Table;
  6719. flatbuffers::FlatBufferBuilder &fbb_;
  6720. flatbuffers::uoffset_t start_;
  6721. void add_num_splits(int32_t num_splits) {
  6722. fbb_.AddElement<int32_t>(SplitOptions::VT_NUM_SPLITS, num_splits, 0);
  6723. }
  6724. explicit SplitOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6725. : fbb_(_fbb) {
  6726. start_ = fbb_.StartTable();
  6727. }
  6728. SplitOptionsBuilder &operator=(const SplitOptionsBuilder &);
  6729. flatbuffers::Offset<SplitOptions> Finish() {
  6730. const auto end = fbb_.EndTable(start_);
  6731. auto o = flatbuffers::Offset<SplitOptions>(end);
  6732. return o;
  6733. }
  6734. };
  6735. inline flatbuffers::Offset<SplitOptions> CreateSplitOptions(
  6736. flatbuffers::FlatBufferBuilder &_fbb,
  6737. int32_t num_splits = 0) {
  6738. SplitOptionsBuilder builder_(_fbb);
  6739. builder_.add_num_splits(num_splits);
  6740. return builder_.Finish();
  6741. }
  6742. flatbuffers::Offset<SplitOptions> CreateSplitOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6743. struct SplitVOptionsT : public flatbuffers::NativeTable {
  6744. typedef SplitVOptions TableType;
  6745. int32_t num_splits;
  6746. SplitVOptionsT()
  6747. : num_splits(0) {
  6748. }
  6749. };
  6750. struct SplitVOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6751. typedef SplitVOptionsT NativeTableType;
  6752. typedef SplitVOptionsBuilder Builder;
  6753. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6754. VT_NUM_SPLITS = 4
  6755. };
  6756. int32_t num_splits() const {
  6757. return GetField<int32_t>(VT_NUM_SPLITS, 0);
  6758. }
  6759. bool Verify(flatbuffers::Verifier &verifier) const {
  6760. return VerifyTableStart(verifier) &&
  6761. VerifyField<int32_t>(verifier, VT_NUM_SPLITS) &&
  6762. verifier.EndTable();
  6763. }
  6764. SplitVOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6765. void UnPackTo(SplitVOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6766. static flatbuffers::Offset<SplitVOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6767. };
  6768. struct SplitVOptionsBuilder {
  6769. typedef SplitVOptions Table;
  6770. flatbuffers::FlatBufferBuilder &fbb_;
  6771. flatbuffers::uoffset_t start_;
  6772. void add_num_splits(int32_t num_splits) {
  6773. fbb_.AddElement<int32_t>(SplitVOptions::VT_NUM_SPLITS, num_splits, 0);
  6774. }
  6775. explicit SplitVOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6776. : fbb_(_fbb) {
  6777. start_ = fbb_.StartTable();
  6778. }
  6779. SplitVOptionsBuilder &operator=(const SplitVOptionsBuilder &);
  6780. flatbuffers::Offset<SplitVOptions> Finish() {
  6781. const auto end = fbb_.EndTable(start_);
  6782. auto o = flatbuffers::Offset<SplitVOptions>(end);
  6783. return o;
  6784. }
  6785. };
  6786. inline flatbuffers::Offset<SplitVOptions> CreateSplitVOptions(
  6787. flatbuffers::FlatBufferBuilder &_fbb,
  6788. int32_t num_splits = 0) {
  6789. SplitVOptionsBuilder builder_(_fbb);
  6790. builder_.add_num_splits(num_splits);
  6791. return builder_.Finish();
  6792. }
  6793. flatbuffers::Offset<SplitVOptions> CreateSplitVOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6794. struct StridedSliceOptionsT : public flatbuffers::NativeTable {
  6795. typedef StridedSliceOptions TableType;
  6796. int32_t begin_mask;
  6797. int32_t end_mask;
  6798. int32_t ellipsis_mask;
  6799. int32_t new_axis_mask;
  6800. int32_t shrink_axis_mask;
  6801. StridedSliceOptionsT()
  6802. : begin_mask(0),
  6803. end_mask(0),
  6804. ellipsis_mask(0),
  6805. new_axis_mask(0),
  6806. shrink_axis_mask(0) {
  6807. }
  6808. };
  6809. struct StridedSliceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6810. typedef StridedSliceOptionsT NativeTableType;
  6811. typedef StridedSliceOptionsBuilder Builder;
  6812. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6813. VT_BEGIN_MASK = 4,
  6814. VT_END_MASK = 6,
  6815. VT_ELLIPSIS_MASK = 8,
  6816. VT_NEW_AXIS_MASK = 10,
  6817. VT_SHRINK_AXIS_MASK = 12
  6818. };
  6819. int32_t begin_mask() const {
  6820. return GetField<int32_t>(VT_BEGIN_MASK, 0);
  6821. }
  6822. int32_t end_mask() const {
  6823. return GetField<int32_t>(VT_END_MASK, 0);
  6824. }
  6825. int32_t ellipsis_mask() const {
  6826. return GetField<int32_t>(VT_ELLIPSIS_MASK, 0);
  6827. }
  6828. int32_t new_axis_mask() const {
  6829. return GetField<int32_t>(VT_NEW_AXIS_MASK, 0);
  6830. }
  6831. int32_t shrink_axis_mask() const {
  6832. return GetField<int32_t>(VT_SHRINK_AXIS_MASK, 0);
  6833. }
  6834. bool Verify(flatbuffers::Verifier &verifier) const {
  6835. return VerifyTableStart(verifier) &&
  6836. VerifyField<int32_t>(verifier, VT_BEGIN_MASK) &&
  6837. VerifyField<int32_t>(verifier, VT_END_MASK) &&
  6838. VerifyField<int32_t>(verifier, VT_ELLIPSIS_MASK) &&
  6839. VerifyField<int32_t>(verifier, VT_NEW_AXIS_MASK) &&
  6840. VerifyField<int32_t>(verifier, VT_SHRINK_AXIS_MASK) &&
  6841. verifier.EndTable();
  6842. }
  6843. StridedSliceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6844. void UnPackTo(StridedSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6845. static flatbuffers::Offset<StridedSliceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6846. };
  6847. struct StridedSliceOptionsBuilder {
  6848. typedef StridedSliceOptions Table;
  6849. flatbuffers::FlatBufferBuilder &fbb_;
  6850. flatbuffers::uoffset_t start_;
  6851. void add_begin_mask(int32_t begin_mask) {
  6852. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_BEGIN_MASK, begin_mask, 0);
  6853. }
  6854. void add_end_mask(int32_t end_mask) {
  6855. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_END_MASK, end_mask, 0);
  6856. }
  6857. void add_ellipsis_mask(int32_t ellipsis_mask) {
  6858. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_ELLIPSIS_MASK, ellipsis_mask, 0);
  6859. }
  6860. void add_new_axis_mask(int32_t new_axis_mask) {
  6861. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_NEW_AXIS_MASK, new_axis_mask, 0);
  6862. }
  6863. void add_shrink_axis_mask(int32_t shrink_axis_mask) {
  6864. fbb_.AddElement<int32_t>(StridedSliceOptions::VT_SHRINK_AXIS_MASK, shrink_axis_mask, 0);
  6865. }
  6866. explicit StridedSliceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6867. : fbb_(_fbb) {
  6868. start_ = fbb_.StartTable();
  6869. }
  6870. StridedSliceOptionsBuilder &operator=(const StridedSliceOptionsBuilder &);
  6871. flatbuffers::Offset<StridedSliceOptions> Finish() {
  6872. const auto end = fbb_.EndTable(start_);
  6873. auto o = flatbuffers::Offset<StridedSliceOptions>(end);
  6874. return o;
  6875. }
  6876. };
  6877. inline flatbuffers::Offset<StridedSliceOptions> CreateStridedSliceOptions(
  6878. flatbuffers::FlatBufferBuilder &_fbb,
  6879. int32_t begin_mask = 0,
  6880. int32_t end_mask = 0,
  6881. int32_t ellipsis_mask = 0,
  6882. int32_t new_axis_mask = 0,
  6883. int32_t shrink_axis_mask = 0) {
  6884. StridedSliceOptionsBuilder builder_(_fbb);
  6885. builder_.add_shrink_axis_mask(shrink_axis_mask);
  6886. builder_.add_new_axis_mask(new_axis_mask);
  6887. builder_.add_ellipsis_mask(ellipsis_mask);
  6888. builder_.add_end_mask(end_mask);
  6889. builder_.add_begin_mask(begin_mask);
  6890. return builder_.Finish();
  6891. }
  6892. flatbuffers::Offset<StridedSliceOptions> CreateStridedSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6893. struct LogSoftmaxOptionsT : public flatbuffers::NativeTable {
  6894. typedef LogSoftmaxOptions TableType;
  6895. LogSoftmaxOptionsT() {
  6896. }
  6897. };
  6898. struct LogSoftmaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6899. typedef LogSoftmaxOptionsT NativeTableType;
  6900. typedef LogSoftmaxOptionsBuilder Builder;
  6901. bool Verify(flatbuffers::Verifier &verifier) const {
  6902. return VerifyTableStart(verifier) &&
  6903. verifier.EndTable();
  6904. }
  6905. LogSoftmaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6906. void UnPackTo(LogSoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6907. static flatbuffers::Offset<LogSoftmaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6908. };
  6909. struct LogSoftmaxOptionsBuilder {
  6910. typedef LogSoftmaxOptions Table;
  6911. flatbuffers::FlatBufferBuilder &fbb_;
  6912. flatbuffers::uoffset_t start_;
  6913. explicit LogSoftmaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6914. : fbb_(_fbb) {
  6915. start_ = fbb_.StartTable();
  6916. }
  6917. LogSoftmaxOptionsBuilder &operator=(const LogSoftmaxOptionsBuilder &);
  6918. flatbuffers::Offset<LogSoftmaxOptions> Finish() {
  6919. const auto end = fbb_.EndTable(start_);
  6920. auto o = flatbuffers::Offset<LogSoftmaxOptions>(end);
  6921. return o;
  6922. }
  6923. };
  6924. inline flatbuffers::Offset<LogSoftmaxOptions> CreateLogSoftmaxOptions(
  6925. flatbuffers::FlatBufferBuilder &_fbb) {
  6926. LogSoftmaxOptionsBuilder builder_(_fbb);
  6927. return builder_.Finish();
  6928. }
  6929. flatbuffers::Offset<LogSoftmaxOptions> CreateLogSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6930. struct CastOptionsT : public flatbuffers::NativeTable {
  6931. typedef CastOptions TableType;
  6932. tflite::TensorType in_data_type;
  6933. tflite::TensorType out_data_type;
  6934. CastOptionsT()
  6935. : in_data_type(tflite::TensorType_FLOAT32),
  6936. out_data_type(tflite::TensorType_FLOAT32) {
  6937. }
  6938. };
  6939. struct CastOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6940. typedef CastOptionsT NativeTableType;
  6941. typedef CastOptionsBuilder Builder;
  6942. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  6943. VT_IN_DATA_TYPE = 4,
  6944. VT_OUT_DATA_TYPE = 6
  6945. };
  6946. tflite::TensorType in_data_type() const {
  6947. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_IN_DATA_TYPE, 0));
  6948. }
  6949. tflite::TensorType out_data_type() const {
  6950. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUT_DATA_TYPE, 0));
  6951. }
  6952. bool Verify(flatbuffers::Verifier &verifier) const {
  6953. return VerifyTableStart(verifier) &&
  6954. VerifyField<int8_t>(verifier, VT_IN_DATA_TYPE) &&
  6955. VerifyField<int8_t>(verifier, VT_OUT_DATA_TYPE) &&
  6956. verifier.EndTable();
  6957. }
  6958. CastOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6959. void UnPackTo(CastOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  6960. static flatbuffers::Offset<CastOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6961. };
  6962. struct CastOptionsBuilder {
  6963. typedef CastOptions Table;
  6964. flatbuffers::FlatBufferBuilder &fbb_;
  6965. flatbuffers::uoffset_t start_;
  6966. void add_in_data_type(tflite::TensorType in_data_type) {
  6967. fbb_.AddElement<int8_t>(CastOptions::VT_IN_DATA_TYPE, static_cast<int8_t>(in_data_type), 0);
  6968. }
  6969. void add_out_data_type(tflite::TensorType out_data_type) {
  6970. fbb_.AddElement<int8_t>(CastOptions::VT_OUT_DATA_TYPE, static_cast<int8_t>(out_data_type), 0);
  6971. }
  6972. explicit CastOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  6973. : fbb_(_fbb) {
  6974. start_ = fbb_.StartTable();
  6975. }
  6976. CastOptionsBuilder &operator=(const CastOptionsBuilder &);
  6977. flatbuffers::Offset<CastOptions> Finish() {
  6978. const auto end = fbb_.EndTable(start_);
  6979. auto o = flatbuffers::Offset<CastOptions>(end);
  6980. return o;
  6981. }
  6982. };
  6983. inline flatbuffers::Offset<CastOptions> CreateCastOptions(
  6984. flatbuffers::FlatBufferBuilder &_fbb,
  6985. tflite::TensorType in_data_type = tflite::TensorType_FLOAT32,
  6986. tflite::TensorType out_data_type = tflite::TensorType_FLOAT32) {
  6987. CastOptionsBuilder builder_(_fbb);
  6988. builder_.add_out_data_type(out_data_type);
  6989. builder_.add_in_data_type(in_data_type);
  6990. return builder_.Finish();
  6991. }
  6992. flatbuffers::Offset<CastOptions> CreateCastOptions(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  6993. struct DequantizeOptionsT : public flatbuffers::NativeTable {
  6994. typedef DequantizeOptions TableType;
  6995. DequantizeOptionsT() {
  6996. }
  6997. };
  6998. struct DequantizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  6999. typedef DequantizeOptionsT NativeTableType;
  7000. typedef DequantizeOptionsBuilder Builder;
  7001. bool Verify(flatbuffers::Verifier &verifier) const {
  7002. return VerifyTableStart(verifier) &&
  7003. verifier.EndTable();
  7004. }
  7005. DequantizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7006. void UnPackTo(DequantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7007. static flatbuffers::Offset<DequantizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7008. };
  7009. struct DequantizeOptionsBuilder {
  7010. typedef DequantizeOptions Table;
  7011. flatbuffers::FlatBufferBuilder &fbb_;
  7012. flatbuffers::uoffset_t start_;
  7013. explicit DequantizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7014. : fbb_(_fbb) {
  7015. start_ = fbb_.StartTable();
  7016. }
  7017. DequantizeOptionsBuilder &operator=(const DequantizeOptionsBuilder &);
  7018. flatbuffers::Offset<DequantizeOptions> Finish() {
  7019. const auto end = fbb_.EndTable(start_);
  7020. auto o = flatbuffers::Offset<DequantizeOptions>(end);
  7021. return o;
  7022. }
  7023. };
  7024. inline flatbuffers::Offset<DequantizeOptions> CreateDequantizeOptions(
  7025. flatbuffers::FlatBufferBuilder &_fbb) {
  7026. DequantizeOptionsBuilder builder_(_fbb);
  7027. return builder_.Finish();
  7028. }
  7029. flatbuffers::Offset<DequantizeOptions> CreateDequantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7030. struct MaximumMinimumOptionsT : public flatbuffers::NativeTable {
  7031. typedef MaximumMinimumOptions TableType;
  7032. MaximumMinimumOptionsT() {
  7033. }
  7034. };
  7035. struct MaximumMinimumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7036. typedef MaximumMinimumOptionsT NativeTableType;
  7037. typedef MaximumMinimumOptionsBuilder Builder;
  7038. bool Verify(flatbuffers::Verifier &verifier) const {
  7039. return VerifyTableStart(verifier) &&
  7040. verifier.EndTable();
  7041. }
  7042. MaximumMinimumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7043. void UnPackTo(MaximumMinimumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7044. static flatbuffers::Offset<MaximumMinimumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7045. };
  7046. struct MaximumMinimumOptionsBuilder {
  7047. typedef MaximumMinimumOptions Table;
  7048. flatbuffers::FlatBufferBuilder &fbb_;
  7049. flatbuffers::uoffset_t start_;
  7050. explicit MaximumMinimumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7051. : fbb_(_fbb) {
  7052. start_ = fbb_.StartTable();
  7053. }
  7054. MaximumMinimumOptionsBuilder &operator=(const MaximumMinimumOptionsBuilder &);
  7055. flatbuffers::Offset<MaximumMinimumOptions> Finish() {
  7056. const auto end = fbb_.EndTable(start_);
  7057. auto o = flatbuffers::Offset<MaximumMinimumOptions>(end);
  7058. return o;
  7059. }
  7060. };
  7061. inline flatbuffers::Offset<MaximumMinimumOptions> CreateMaximumMinimumOptions(
  7062. flatbuffers::FlatBufferBuilder &_fbb) {
  7063. MaximumMinimumOptionsBuilder builder_(_fbb);
  7064. return builder_.Finish();
  7065. }
  7066. flatbuffers::Offset<MaximumMinimumOptions> CreateMaximumMinimumOptions(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7067. struct TileOptionsT : public flatbuffers::NativeTable {
  7068. typedef TileOptions TableType;
  7069. TileOptionsT() {
  7070. }
  7071. };
  7072. struct TileOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7073. typedef TileOptionsT NativeTableType;
  7074. typedef TileOptionsBuilder Builder;
  7075. bool Verify(flatbuffers::Verifier &verifier) const {
  7076. return VerifyTableStart(verifier) &&
  7077. verifier.EndTable();
  7078. }
  7079. TileOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7080. void UnPackTo(TileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7081. static flatbuffers::Offset<TileOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7082. };
  7083. struct TileOptionsBuilder {
  7084. typedef TileOptions Table;
  7085. flatbuffers::FlatBufferBuilder &fbb_;
  7086. flatbuffers::uoffset_t start_;
  7087. explicit TileOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7088. : fbb_(_fbb) {
  7089. start_ = fbb_.StartTable();
  7090. }
  7091. TileOptionsBuilder &operator=(const TileOptionsBuilder &);
  7092. flatbuffers::Offset<TileOptions> Finish() {
  7093. const auto end = fbb_.EndTable(start_);
  7094. auto o = flatbuffers::Offset<TileOptions>(end);
  7095. return o;
  7096. }
  7097. };
  7098. inline flatbuffers::Offset<TileOptions> CreateTileOptions(
  7099. flatbuffers::FlatBufferBuilder &_fbb) {
  7100. TileOptionsBuilder builder_(_fbb);
  7101. return builder_.Finish();
  7102. }
  7103. flatbuffers::Offset<TileOptions> CreateTileOptions(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7104. struct ArgMaxOptionsT : public flatbuffers::NativeTable {
  7105. typedef ArgMaxOptions TableType;
  7106. tflite::TensorType output_type;
  7107. ArgMaxOptionsT()
  7108. : output_type(tflite::TensorType_FLOAT32) {
  7109. }
  7110. };
  7111. struct ArgMaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7112. typedef ArgMaxOptionsT NativeTableType;
  7113. typedef ArgMaxOptionsBuilder Builder;
  7114. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7115. VT_OUTPUT_TYPE = 4
  7116. };
  7117. tflite::TensorType output_type() const {
  7118. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUTPUT_TYPE, 0));
  7119. }
  7120. bool Verify(flatbuffers::Verifier &verifier) const {
  7121. return VerifyTableStart(verifier) &&
  7122. VerifyField<int8_t>(verifier, VT_OUTPUT_TYPE) &&
  7123. verifier.EndTable();
  7124. }
  7125. ArgMaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7126. void UnPackTo(ArgMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7127. static flatbuffers::Offset<ArgMaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7128. };
  7129. struct ArgMaxOptionsBuilder {
  7130. typedef ArgMaxOptions Table;
  7131. flatbuffers::FlatBufferBuilder &fbb_;
  7132. flatbuffers::uoffset_t start_;
  7133. void add_output_type(tflite::TensorType output_type) {
  7134. fbb_.AddElement<int8_t>(ArgMaxOptions::VT_OUTPUT_TYPE, static_cast<int8_t>(output_type), 0);
  7135. }
  7136. explicit ArgMaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7137. : fbb_(_fbb) {
  7138. start_ = fbb_.StartTable();
  7139. }
  7140. ArgMaxOptionsBuilder &operator=(const ArgMaxOptionsBuilder &);
  7141. flatbuffers::Offset<ArgMaxOptions> Finish() {
  7142. const auto end = fbb_.EndTable(start_);
  7143. auto o = flatbuffers::Offset<ArgMaxOptions>(end);
  7144. return o;
  7145. }
  7146. };
  7147. inline flatbuffers::Offset<ArgMaxOptions> CreateArgMaxOptions(
  7148. flatbuffers::FlatBufferBuilder &_fbb,
  7149. tflite::TensorType output_type = tflite::TensorType_FLOAT32) {
  7150. ArgMaxOptionsBuilder builder_(_fbb);
  7151. builder_.add_output_type(output_type);
  7152. return builder_.Finish();
  7153. }
  7154. flatbuffers::Offset<ArgMaxOptions> CreateArgMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7155. struct ArgMinOptionsT : public flatbuffers::NativeTable {
  7156. typedef ArgMinOptions TableType;
  7157. tflite::TensorType output_type;
  7158. ArgMinOptionsT()
  7159. : output_type(tflite::TensorType_FLOAT32) {
  7160. }
  7161. };
  7162. struct ArgMinOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7163. typedef ArgMinOptionsT NativeTableType;
  7164. typedef ArgMinOptionsBuilder Builder;
  7165. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7166. VT_OUTPUT_TYPE = 4
  7167. };
  7168. tflite::TensorType output_type() const {
  7169. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUTPUT_TYPE, 0));
  7170. }
  7171. bool Verify(flatbuffers::Verifier &verifier) const {
  7172. return VerifyTableStart(verifier) &&
  7173. VerifyField<int8_t>(verifier, VT_OUTPUT_TYPE) &&
  7174. verifier.EndTable();
  7175. }
  7176. ArgMinOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7177. void UnPackTo(ArgMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7178. static flatbuffers::Offset<ArgMinOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7179. };
  7180. struct ArgMinOptionsBuilder {
  7181. typedef ArgMinOptions Table;
  7182. flatbuffers::FlatBufferBuilder &fbb_;
  7183. flatbuffers::uoffset_t start_;
  7184. void add_output_type(tflite::TensorType output_type) {
  7185. fbb_.AddElement<int8_t>(ArgMinOptions::VT_OUTPUT_TYPE, static_cast<int8_t>(output_type), 0);
  7186. }
  7187. explicit ArgMinOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7188. : fbb_(_fbb) {
  7189. start_ = fbb_.StartTable();
  7190. }
  7191. ArgMinOptionsBuilder &operator=(const ArgMinOptionsBuilder &);
  7192. flatbuffers::Offset<ArgMinOptions> Finish() {
  7193. const auto end = fbb_.EndTable(start_);
  7194. auto o = flatbuffers::Offset<ArgMinOptions>(end);
  7195. return o;
  7196. }
  7197. };
  7198. inline flatbuffers::Offset<ArgMinOptions> CreateArgMinOptions(
  7199. flatbuffers::FlatBufferBuilder &_fbb,
  7200. tflite::TensorType output_type = tflite::TensorType_FLOAT32) {
  7201. ArgMinOptionsBuilder builder_(_fbb);
  7202. builder_.add_output_type(output_type);
  7203. return builder_.Finish();
  7204. }
  7205. flatbuffers::Offset<ArgMinOptions> CreateArgMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7206. struct GreaterOptionsT : public flatbuffers::NativeTable {
  7207. typedef GreaterOptions TableType;
  7208. GreaterOptionsT() {
  7209. }
  7210. };
  7211. struct GreaterOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7212. typedef GreaterOptionsT NativeTableType;
  7213. typedef GreaterOptionsBuilder Builder;
  7214. bool Verify(flatbuffers::Verifier &verifier) const {
  7215. return VerifyTableStart(verifier) &&
  7216. verifier.EndTable();
  7217. }
  7218. GreaterOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7219. void UnPackTo(GreaterOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7220. static flatbuffers::Offset<GreaterOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7221. };
  7222. struct GreaterOptionsBuilder {
  7223. typedef GreaterOptions Table;
  7224. flatbuffers::FlatBufferBuilder &fbb_;
  7225. flatbuffers::uoffset_t start_;
  7226. explicit GreaterOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7227. : fbb_(_fbb) {
  7228. start_ = fbb_.StartTable();
  7229. }
  7230. GreaterOptionsBuilder &operator=(const GreaterOptionsBuilder &);
  7231. flatbuffers::Offset<GreaterOptions> Finish() {
  7232. const auto end = fbb_.EndTable(start_);
  7233. auto o = flatbuffers::Offset<GreaterOptions>(end);
  7234. return o;
  7235. }
  7236. };
  7237. inline flatbuffers::Offset<GreaterOptions> CreateGreaterOptions(
  7238. flatbuffers::FlatBufferBuilder &_fbb) {
  7239. GreaterOptionsBuilder builder_(_fbb);
  7240. return builder_.Finish();
  7241. }
  7242. flatbuffers::Offset<GreaterOptions> CreateGreaterOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7243. struct GreaterEqualOptionsT : public flatbuffers::NativeTable {
  7244. typedef GreaterEqualOptions TableType;
  7245. GreaterEqualOptionsT() {
  7246. }
  7247. };
  7248. struct GreaterEqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7249. typedef GreaterEqualOptionsT NativeTableType;
  7250. typedef GreaterEqualOptionsBuilder Builder;
  7251. bool Verify(flatbuffers::Verifier &verifier) const {
  7252. return VerifyTableStart(verifier) &&
  7253. verifier.EndTable();
  7254. }
  7255. GreaterEqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7256. void UnPackTo(GreaterEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7257. static flatbuffers::Offset<GreaterEqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7258. };
  7259. struct GreaterEqualOptionsBuilder {
  7260. typedef GreaterEqualOptions Table;
  7261. flatbuffers::FlatBufferBuilder &fbb_;
  7262. flatbuffers::uoffset_t start_;
  7263. explicit GreaterEqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7264. : fbb_(_fbb) {
  7265. start_ = fbb_.StartTable();
  7266. }
  7267. GreaterEqualOptionsBuilder &operator=(const GreaterEqualOptionsBuilder &);
  7268. flatbuffers::Offset<GreaterEqualOptions> Finish() {
  7269. const auto end = fbb_.EndTable(start_);
  7270. auto o = flatbuffers::Offset<GreaterEqualOptions>(end);
  7271. return o;
  7272. }
  7273. };
  7274. inline flatbuffers::Offset<GreaterEqualOptions> CreateGreaterEqualOptions(
  7275. flatbuffers::FlatBufferBuilder &_fbb) {
  7276. GreaterEqualOptionsBuilder builder_(_fbb);
  7277. return builder_.Finish();
  7278. }
  7279. flatbuffers::Offset<GreaterEqualOptions> CreateGreaterEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7280. struct LessOptionsT : public flatbuffers::NativeTable {
  7281. typedef LessOptions TableType;
  7282. LessOptionsT() {
  7283. }
  7284. };
  7285. struct LessOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7286. typedef LessOptionsT NativeTableType;
  7287. typedef LessOptionsBuilder Builder;
  7288. bool Verify(flatbuffers::Verifier &verifier) const {
  7289. return VerifyTableStart(verifier) &&
  7290. verifier.EndTable();
  7291. }
  7292. LessOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7293. void UnPackTo(LessOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7294. static flatbuffers::Offset<LessOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7295. };
  7296. struct LessOptionsBuilder {
  7297. typedef LessOptions Table;
  7298. flatbuffers::FlatBufferBuilder &fbb_;
  7299. flatbuffers::uoffset_t start_;
  7300. explicit LessOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7301. : fbb_(_fbb) {
  7302. start_ = fbb_.StartTable();
  7303. }
  7304. LessOptionsBuilder &operator=(const LessOptionsBuilder &);
  7305. flatbuffers::Offset<LessOptions> Finish() {
  7306. const auto end = fbb_.EndTable(start_);
  7307. auto o = flatbuffers::Offset<LessOptions>(end);
  7308. return o;
  7309. }
  7310. };
  7311. inline flatbuffers::Offset<LessOptions> CreateLessOptions(
  7312. flatbuffers::FlatBufferBuilder &_fbb) {
  7313. LessOptionsBuilder builder_(_fbb);
  7314. return builder_.Finish();
  7315. }
  7316. flatbuffers::Offset<LessOptions> CreateLessOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7317. struct LessEqualOptionsT : public flatbuffers::NativeTable {
  7318. typedef LessEqualOptions TableType;
  7319. LessEqualOptionsT() {
  7320. }
  7321. };
  7322. struct LessEqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7323. typedef LessEqualOptionsT NativeTableType;
  7324. typedef LessEqualOptionsBuilder Builder;
  7325. bool Verify(flatbuffers::Verifier &verifier) const {
  7326. return VerifyTableStart(verifier) &&
  7327. verifier.EndTable();
  7328. }
  7329. LessEqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7330. void UnPackTo(LessEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7331. static flatbuffers::Offset<LessEqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7332. };
  7333. struct LessEqualOptionsBuilder {
  7334. typedef LessEqualOptions Table;
  7335. flatbuffers::FlatBufferBuilder &fbb_;
  7336. flatbuffers::uoffset_t start_;
  7337. explicit LessEqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7338. : fbb_(_fbb) {
  7339. start_ = fbb_.StartTable();
  7340. }
  7341. LessEqualOptionsBuilder &operator=(const LessEqualOptionsBuilder &);
  7342. flatbuffers::Offset<LessEqualOptions> Finish() {
  7343. const auto end = fbb_.EndTable(start_);
  7344. auto o = flatbuffers::Offset<LessEqualOptions>(end);
  7345. return o;
  7346. }
  7347. };
  7348. inline flatbuffers::Offset<LessEqualOptions> CreateLessEqualOptions(
  7349. flatbuffers::FlatBufferBuilder &_fbb) {
  7350. LessEqualOptionsBuilder builder_(_fbb);
  7351. return builder_.Finish();
  7352. }
  7353. flatbuffers::Offset<LessEqualOptions> CreateLessEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7354. struct NegOptionsT : public flatbuffers::NativeTable {
  7355. typedef NegOptions TableType;
  7356. NegOptionsT() {
  7357. }
  7358. };
  7359. struct NegOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7360. typedef NegOptionsT NativeTableType;
  7361. typedef NegOptionsBuilder Builder;
  7362. bool Verify(flatbuffers::Verifier &verifier) const {
  7363. return VerifyTableStart(verifier) &&
  7364. verifier.EndTable();
  7365. }
  7366. NegOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7367. void UnPackTo(NegOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7368. static flatbuffers::Offset<NegOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7369. };
  7370. struct NegOptionsBuilder {
  7371. typedef NegOptions Table;
  7372. flatbuffers::FlatBufferBuilder &fbb_;
  7373. flatbuffers::uoffset_t start_;
  7374. explicit NegOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7375. : fbb_(_fbb) {
  7376. start_ = fbb_.StartTable();
  7377. }
  7378. NegOptionsBuilder &operator=(const NegOptionsBuilder &);
  7379. flatbuffers::Offset<NegOptions> Finish() {
  7380. const auto end = fbb_.EndTable(start_);
  7381. auto o = flatbuffers::Offset<NegOptions>(end);
  7382. return o;
  7383. }
  7384. };
  7385. inline flatbuffers::Offset<NegOptions> CreateNegOptions(
  7386. flatbuffers::FlatBufferBuilder &_fbb) {
  7387. NegOptionsBuilder builder_(_fbb);
  7388. return builder_.Finish();
  7389. }
  7390. flatbuffers::Offset<NegOptions> CreateNegOptions(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7391. struct SelectOptionsT : public flatbuffers::NativeTable {
  7392. typedef SelectOptions TableType;
  7393. SelectOptionsT() {
  7394. }
  7395. };
  7396. struct SelectOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7397. typedef SelectOptionsT NativeTableType;
  7398. typedef SelectOptionsBuilder Builder;
  7399. bool Verify(flatbuffers::Verifier &verifier) const {
  7400. return VerifyTableStart(verifier) &&
  7401. verifier.EndTable();
  7402. }
  7403. SelectOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7404. void UnPackTo(SelectOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7405. static flatbuffers::Offset<SelectOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7406. };
  7407. struct SelectOptionsBuilder {
  7408. typedef SelectOptions Table;
  7409. flatbuffers::FlatBufferBuilder &fbb_;
  7410. flatbuffers::uoffset_t start_;
  7411. explicit SelectOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7412. : fbb_(_fbb) {
  7413. start_ = fbb_.StartTable();
  7414. }
  7415. SelectOptionsBuilder &operator=(const SelectOptionsBuilder &);
  7416. flatbuffers::Offset<SelectOptions> Finish() {
  7417. const auto end = fbb_.EndTable(start_);
  7418. auto o = flatbuffers::Offset<SelectOptions>(end);
  7419. return o;
  7420. }
  7421. };
  7422. inline flatbuffers::Offset<SelectOptions> CreateSelectOptions(
  7423. flatbuffers::FlatBufferBuilder &_fbb) {
  7424. SelectOptionsBuilder builder_(_fbb);
  7425. return builder_.Finish();
  7426. }
  7427. flatbuffers::Offset<SelectOptions> CreateSelectOptions(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7428. struct SliceOptionsT : public flatbuffers::NativeTable {
  7429. typedef SliceOptions TableType;
  7430. SliceOptionsT() {
  7431. }
  7432. };
  7433. struct SliceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7434. typedef SliceOptionsT NativeTableType;
  7435. typedef SliceOptionsBuilder Builder;
  7436. bool Verify(flatbuffers::Verifier &verifier) const {
  7437. return VerifyTableStart(verifier) &&
  7438. verifier.EndTable();
  7439. }
  7440. SliceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7441. void UnPackTo(SliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7442. static flatbuffers::Offset<SliceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7443. };
  7444. struct SliceOptionsBuilder {
  7445. typedef SliceOptions Table;
  7446. flatbuffers::FlatBufferBuilder &fbb_;
  7447. flatbuffers::uoffset_t start_;
  7448. explicit SliceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7449. : fbb_(_fbb) {
  7450. start_ = fbb_.StartTable();
  7451. }
  7452. SliceOptionsBuilder &operator=(const SliceOptionsBuilder &);
  7453. flatbuffers::Offset<SliceOptions> Finish() {
  7454. const auto end = fbb_.EndTable(start_);
  7455. auto o = flatbuffers::Offset<SliceOptions>(end);
  7456. return o;
  7457. }
  7458. };
  7459. inline flatbuffers::Offset<SliceOptions> CreateSliceOptions(
  7460. flatbuffers::FlatBufferBuilder &_fbb) {
  7461. SliceOptionsBuilder builder_(_fbb);
  7462. return builder_.Finish();
  7463. }
  7464. flatbuffers::Offset<SliceOptions> CreateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7465. struct TransposeConvOptionsT : public flatbuffers::NativeTable {
  7466. typedef TransposeConvOptions TableType;
  7467. tflite::Padding padding;
  7468. int32_t stride_w;
  7469. int32_t stride_h;
  7470. TransposeConvOptionsT()
  7471. : padding(tflite::Padding_SAME),
  7472. stride_w(0),
  7473. stride_h(0) {
  7474. }
  7475. };
  7476. struct TransposeConvOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7477. typedef TransposeConvOptionsT NativeTableType;
  7478. typedef TransposeConvOptionsBuilder Builder;
  7479. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7480. VT_PADDING = 4,
  7481. VT_STRIDE_W = 6,
  7482. VT_STRIDE_H = 8
  7483. };
  7484. tflite::Padding padding() const {
  7485. return static_cast<tflite::Padding>(GetField<int8_t>(VT_PADDING, 0));
  7486. }
  7487. int32_t stride_w() const {
  7488. return GetField<int32_t>(VT_STRIDE_W, 0);
  7489. }
  7490. int32_t stride_h() const {
  7491. return GetField<int32_t>(VT_STRIDE_H, 0);
  7492. }
  7493. bool Verify(flatbuffers::Verifier &verifier) const {
  7494. return VerifyTableStart(verifier) &&
  7495. VerifyField<int8_t>(verifier, VT_PADDING) &&
  7496. VerifyField<int32_t>(verifier, VT_STRIDE_W) &&
  7497. VerifyField<int32_t>(verifier, VT_STRIDE_H) &&
  7498. verifier.EndTable();
  7499. }
  7500. TransposeConvOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7501. void UnPackTo(TransposeConvOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7502. static flatbuffers::Offset<TransposeConvOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7503. };
  7504. struct TransposeConvOptionsBuilder {
  7505. typedef TransposeConvOptions Table;
  7506. flatbuffers::FlatBufferBuilder &fbb_;
  7507. flatbuffers::uoffset_t start_;
  7508. void add_padding(tflite::Padding padding) {
  7509. fbb_.AddElement<int8_t>(TransposeConvOptions::VT_PADDING, static_cast<int8_t>(padding), 0);
  7510. }
  7511. void add_stride_w(int32_t stride_w) {
  7512. fbb_.AddElement<int32_t>(TransposeConvOptions::VT_STRIDE_W, stride_w, 0);
  7513. }
  7514. void add_stride_h(int32_t stride_h) {
  7515. fbb_.AddElement<int32_t>(TransposeConvOptions::VT_STRIDE_H, stride_h, 0);
  7516. }
  7517. explicit TransposeConvOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7518. : fbb_(_fbb) {
  7519. start_ = fbb_.StartTable();
  7520. }
  7521. TransposeConvOptionsBuilder &operator=(const TransposeConvOptionsBuilder &);
  7522. flatbuffers::Offset<TransposeConvOptions> Finish() {
  7523. const auto end = fbb_.EndTable(start_);
  7524. auto o = flatbuffers::Offset<TransposeConvOptions>(end);
  7525. return o;
  7526. }
  7527. };
  7528. inline flatbuffers::Offset<TransposeConvOptions> CreateTransposeConvOptions(
  7529. flatbuffers::FlatBufferBuilder &_fbb,
  7530. tflite::Padding padding = tflite::Padding_SAME,
  7531. int32_t stride_w = 0,
  7532. int32_t stride_h = 0) {
  7533. TransposeConvOptionsBuilder builder_(_fbb);
  7534. builder_.add_stride_h(stride_h);
  7535. builder_.add_stride_w(stride_w);
  7536. builder_.add_padding(padding);
  7537. return builder_.Finish();
  7538. }
  7539. flatbuffers::Offset<TransposeConvOptions> CreateTransposeConvOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7540. struct ExpandDimsOptionsT : public flatbuffers::NativeTable {
  7541. typedef ExpandDimsOptions TableType;
  7542. ExpandDimsOptionsT() {
  7543. }
  7544. };
  7545. struct ExpandDimsOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7546. typedef ExpandDimsOptionsT NativeTableType;
  7547. typedef ExpandDimsOptionsBuilder Builder;
  7548. bool Verify(flatbuffers::Verifier &verifier) const {
  7549. return VerifyTableStart(verifier) &&
  7550. verifier.EndTable();
  7551. }
  7552. ExpandDimsOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7553. void UnPackTo(ExpandDimsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7554. static flatbuffers::Offset<ExpandDimsOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7555. };
  7556. struct ExpandDimsOptionsBuilder {
  7557. typedef ExpandDimsOptions Table;
  7558. flatbuffers::FlatBufferBuilder &fbb_;
  7559. flatbuffers::uoffset_t start_;
  7560. explicit ExpandDimsOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7561. : fbb_(_fbb) {
  7562. start_ = fbb_.StartTable();
  7563. }
  7564. ExpandDimsOptionsBuilder &operator=(const ExpandDimsOptionsBuilder &);
  7565. flatbuffers::Offset<ExpandDimsOptions> Finish() {
  7566. const auto end = fbb_.EndTable(start_);
  7567. auto o = flatbuffers::Offset<ExpandDimsOptions>(end);
  7568. return o;
  7569. }
  7570. };
  7571. inline flatbuffers::Offset<ExpandDimsOptions> CreateExpandDimsOptions(
  7572. flatbuffers::FlatBufferBuilder &_fbb) {
  7573. ExpandDimsOptionsBuilder builder_(_fbb);
  7574. return builder_.Finish();
  7575. }
  7576. flatbuffers::Offset<ExpandDimsOptions> CreateExpandDimsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7577. struct SparseToDenseOptionsT : public flatbuffers::NativeTable {
  7578. typedef SparseToDenseOptions TableType;
  7579. bool validate_indices;
  7580. SparseToDenseOptionsT()
  7581. : validate_indices(false) {
  7582. }
  7583. };
  7584. struct SparseToDenseOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7585. typedef SparseToDenseOptionsT NativeTableType;
  7586. typedef SparseToDenseOptionsBuilder Builder;
  7587. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7588. VT_VALIDATE_INDICES = 4
  7589. };
  7590. bool validate_indices() const {
  7591. return GetField<uint8_t>(VT_VALIDATE_INDICES, 0) != 0;
  7592. }
  7593. bool Verify(flatbuffers::Verifier &verifier) const {
  7594. return VerifyTableStart(verifier) &&
  7595. VerifyField<uint8_t>(verifier, VT_VALIDATE_INDICES) &&
  7596. verifier.EndTable();
  7597. }
  7598. SparseToDenseOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7599. void UnPackTo(SparseToDenseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7600. static flatbuffers::Offset<SparseToDenseOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7601. };
  7602. struct SparseToDenseOptionsBuilder {
  7603. typedef SparseToDenseOptions Table;
  7604. flatbuffers::FlatBufferBuilder &fbb_;
  7605. flatbuffers::uoffset_t start_;
  7606. void add_validate_indices(bool validate_indices) {
  7607. fbb_.AddElement<uint8_t>(SparseToDenseOptions::VT_VALIDATE_INDICES, static_cast<uint8_t>(validate_indices), 0);
  7608. }
  7609. explicit SparseToDenseOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7610. : fbb_(_fbb) {
  7611. start_ = fbb_.StartTable();
  7612. }
  7613. SparseToDenseOptionsBuilder &operator=(const SparseToDenseOptionsBuilder &);
  7614. flatbuffers::Offset<SparseToDenseOptions> Finish() {
  7615. const auto end = fbb_.EndTable(start_);
  7616. auto o = flatbuffers::Offset<SparseToDenseOptions>(end);
  7617. return o;
  7618. }
  7619. };
  7620. inline flatbuffers::Offset<SparseToDenseOptions> CreateSparseToDenseOptions(
  7621. flatbuffers::FlatBufferBuilder &_fbb,
  7622. bool validate_indices = false) {
  7623. SparseToDenseOptionsBuilder builder_(_fbb);
  7624. builder_.add_validate_indices(validate_indices);
  7625. return builder_.Finish();
  7626. }
  7627. flatbuffers::Offset<SparseToDenseOptions> CreateSparseToDenseOptions(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7628. struct EqualOptionsT : public flatbuffers::NativeTable {
  7629. typedef EqualOptions TableType;
  7630. EqualOptionsT() {
  7631. }
  7632. };
  7633. struct EqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7634. typedef EqualOptionsT NativeTableType;
  7635. typedef EqualOptionsBuilder Builder;
  7636. bool Verify(flatbuffers::Verifier &verifier) const {
  7637. return VerifyTableStart(verifier) &&
  7638. verifier.EndTable();
  7639. }
  7640. EqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7641. void UnPackTo(EqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7642. static flatbuffers::Offset<EqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7643. };
  7644. struct EqualOptionsBuilder {
  7645. typedef EqualOptions Table;
  7646. flatbuffers::FlatBufferBuilder &fbb_;
  7647. flatbuffers::uoffset_t start_;
  7648. explicit EqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7649. : fbb_(_fbb) {
  7650. start_ = fbb_.StartTable();
  7651. }
  7652. EqualOptionsBuilder &operator=(const EqualOptionsBuilder &);
  7653. flatbuffers::Offset<EqualOptions> Finish() {
  7654. const auto end = fbb_.EndTable(start_);
  7655. auto o = flatbuffers::Offset<EqualOptions>(end);
  7656. return o;
  7657. }
  7658. };
  7659. inline flatbuffers::Offset<EqualOptions> CreateEqualOptions(
  7660. flatbuffers::FlatBufferBuilder &_fbb) {
  7661. EqualOptionsBuilder builder_(_fbb);
  7662. return builder_.Finish();
  7663. }
  7664. flatbuffers::Offset<EqualOptions> CreateEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7665. struct NotEqualOptionsT : public flatbuffers::NativeTable {
  7666. typedef NotEqualOptions TableType;
  7667. NotEqualOptionsT() {
  7668. }
  7669. };
  7670. struct NotEqualOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7671. typedef NotEqualOptionsT NativeTableType;
  7672. typedef NotEqualOptionsBuilder Builder;
  7673. bool Verify(flatbuffers::Verifier &verifier) const {
  7674. return VerifyTableStart(verifier) &&
  7675. verifier.EndTable();
  7676. }
  7677. NotEqualOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7678. void UnPackTo(NotEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7679. static flatbuffers::Offset<NotEqualOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7680. };
  7681. struct NotEqualOptionsBuilder {
  7682. typedef NotEqualOptions Table;
  7683. flatbuffers::FlatBufferBuilder &fbb_;
  7684. flatbuffers::uoffset_t start_;
  7685. explicit NotEqualOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7686. : fbb_(_fbb) {
  7687. start_ = fbb_.StartTable();
  7688. }
  7689. NotEqualOptionsBuilder &operator=(const NotEqualOptionsBuilder &);
  7690. flatbuffers::Offset<NotEqualOptions> Finish() {
  7691. const auto end = fbb_.EndTable(start_);
  7692. auto o = flatbuffers::Offset<NotEqualOptions>(end);
  7693. return o;
  7694. }
  7695. };
  7696. inline flatbuffers::Offset<NotEqualOptions> CreateNotEqualOptions(
  7697. flatbuffers::FlatBufferBuilder &_fbb) {
  7698. NotEqualOptionsBuilder builder_(_fbb);
  7699. return builder_.Finish();
  7700. }
  7701. flatbuffers::Offset<NotEqualOptions> CreateNotEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7702. struct ShapeOptionsT : public flatbuffers::NativeTable {
  7703. typedef ShapeOptions TableType;
  7704. tflite::TensorType out_type;
  7705. ShapeOptionsT()
  7706. : out_type(tflite::TensorType_FLOAT32) {
  7707. }
  7708. };
  7709. struct ShapeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7710. typedef ShapeOptionsT NativeTableType;
  7711. typedef ShapeOptionsBuilder Builder;
  7712. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7713. VT_OUT_TYPE = 4
  7714. };
  7715. tflite::TensorType out_type() const {
  7716. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_OUT_TYPE, 0));
  7717. }
  7718. bool Verify(flatbuffers::Verifier &verifier) const {
  7719. return VerifyTableStart(verifier) &&
  7720. VerifyField<int8_t>(verifier, VT_OUT_TYPE) &&
  7721. verifier.EndTable();
  7722. }
  7723. ShapeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7724. void UnPackTo(ShapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7725. static flatbuffers::Offset<ShapeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7726. };
  7727. struct ShapeOptionsBuilder {
  7728. typedef ShapeOptions Table;
  7729. flatbuffers::FlatBufferBuilder &fbb_;
  7730. flatbuffers::uoffset_t start_;
  7731. void add_out_type(tflite::TensorType out_type) {
  7732. fbb_.AddElement<int8_t>(ShapeOptions::VT_OUT_TYPE, static_cast<int8_t>(out_type), 0);
  7733. }
  7734. explicit ShapeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7735. : fbb_(_fbb) {
  7736. start_ = fbb_.StartTable();
  7737. }
  7738. ShapeOptionsBuilder &operator=(const ShapeOptionsBuilder &);
  7739. flatbuffers::Offset<ShapeOptions> Finish() {
  7740. const auto end = fbb_.EndTable(start_);
  7741. auto o = flatbuffers::Offset<ShapeOptions>(end);
  7742. return o;
  7743. }
  7744. };
  7745. inline flatbuffers::Offset<ShapeOptions> CreateShapeOptions(
  7746. flatbuffers::FlatBufferBuilder &_fbb,
  7747. tflite::TensorType out_type = tflite::TensorType_FLOAT32) {
  7748. ShapeOptionsBuilder builder_(_fbb);
  7749. builder_.add_out_type(out_type);
  7750. return builder_.Finish();
  7751. }
  7752. flatbuffers::Offset<ShapeOptions> CreateShapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7753. struct RankOptionsT : public flatbuffers::NativeTable {
  7754. typedef RankOptions TableType;
  7755. RankOptionsT() {
  7756. }
  7757. };
  7758. struct RankOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7759. typedef RankOptionsT NativeTableType;
  7760. typedef RankOptionsBuilder Builder;
  7761. bool Verify(flatbuffers::Verifier &verifier) const {
  7762. return VerifyTableStart(verifier) &&
  7763. verifier.EndTable();
  7764. }
  7765. RankOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7766. void UnPackTo(RankOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7767. static flatbuffers::Offset<RankOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7768. };
  7769. struct RankOptionsBuilder {
  7770. typedef RankOptions Table;
  7771. flatbuffers::FlatBufferBuilder &fbb_;
  7772. flatbuffers::uoffset_t start_;
  7773. explicit RankOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7774. : fbb_(_fbb) {
  7775. start_ = fbb_.StartTable();
  7776. }
  7777. RankOptionsBuilder &operator=(const RankOptionsBuilder &);
  7778. flatbuffers::Offset<RankOptions> Finish() {
  7779. const auto end = fbb_.EndTable(start_);
  7780. auto o = flatbuffers::Offset<RankOptions>(end);
  7781. return o;
  7782. }
  7783. };
  7784. inline flatbuffers::Offset<RankOptions> CreateRankOptions(
  7785. flatbuffers::FlatBufferBuilder &_fbb) {
  7786. RankOptionsBuilder builder_(_fbb);
  7787. return builder_.Finish();
  7788. }
  7789. flatbuffers::Offset<RankOptions> CreateRankOptions(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7790. struct PowOptionsT : public flatbuffers::NativeTable {
  7791. typedef PowOptions TableType;
  7792. PowOptionsT() {
  7793. }
  7794. };
  7795. struct PowOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7796. typedef PowOptionsT NativeTableType;
  7797. typedef PowOptionsBuilder Builder;
  7798. bool Verify(flatbuffers::Verifier &verifier) const {
  7799. return VerifyTableStart(verifier) &&
  7800. verifier.EndTable();
  7801. }
  7802. PowOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7803. void UnPackTo(PowOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7804. static flatbuffers::Offset<PowOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7805. };
  7806. struct PowOptionsBuilder {
  7807. typedef PowOptions Table;
  7808. flatbuffers::FlatBufferBuilder &fbb_;
  7809. flatbuffers::uoffset_t start_;
  7810. explicit PowOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7811. : fbb_(_fbb) {
  7812. start_ = fbb_.StartTable();
  7813. }
  7814. PowOptionsBuilder &operator=(const PowOptionsBuilder &);
  7815. flatbuffers::Offset<PowOptions> Finish() {
  7816. const auto end = fbb_.EndTable(start_);
  7817. auto o = flatbuffers::Offset<PowOptions>(end);
  7818. return o;
  7819. }
  7820. };
  7821. inline flatbuffers::Offset<PowOptions> CreatePowOptions(
  7822. flatbuffers::FlatBufferBuilder &_fbb) {
  7823. PowOptionsBuilder builder_(_fbb);
  7824. return builder_.Finish();
  7825. }
  7826. flatbuffers::Offset<PowOptions> CreatePowOptions(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7827. struct FakeQuantOptionsT : public flatbuffers::NativeTable {
  7828. typedef FakeQuantOptions TableType;
  7829. float min;
  7830. float max;
  7831. int32_t num_bits;
  7832. bool narrow_range;
  7833. FakeQuantOptionsT()
  7834. : min(0.0f),
  7835. max(0.0f),
  7836. num_bits(0),
  7837. narrow_range(false) {
  7838. }
  7839. };
  7840. struct FakeQuantOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7841. typedef FakeQuantOptionsT NativeTableType;
  7842. typedef FakeQuantOptionsBuilder Builder;
  7843. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7844. VT_MIN = 4,
  7845. VT_MAX = 6,
  7846. VT_NUM_BITS = 8,
  7847. VT_NARROW_RANGE = 10
  7848. };
  7849. float min() const {
  7850. return GetField<float>(VT_MIN, 0.0f);
  7851. }
  7852. float max() const {
  7853. return GetField<float>(VT_MAX, 0.0f);
  7854. }
  7855. int32_t num_bits() const {
  7856. return GetField<int32_t>(VT_NUM_BITS, 0);
  7857. }
  7858. bool narrow_range() const {
  7859. return GetField<uint8_t>(VT_NARROW_RANGE, 0) != 0;
  7860. }
  7861. bool Verify(flatbuffers::Verifier &verifier) const {
  7862. return VerifyTableStart(verifier) &&
  7863. VerifyField<float>(verifier, VT_MIN) &&
  7864. VerifyField<float>(verifier, VT_MAX) &&
  7865. VerifyField<int32_t>(verifier, VT_NUM_BITS) &&
  7866. VerifyField<uint8_t>(verifier, VT_NARROW_RANGE) &&
  7867. verifier.EndTable();
  7868. }
  7869. FakeQuantOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7870. void UnPackTo(FakeQuantOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7871. static flatbuffers::Offset<FakeQuantOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7872. };
  7873. struct FakeQuantOptionsBuilder {
  7874. typedef FakeQuantOptions Table;
  7875. flatbuffers::FlatBufferBuilder &fbb_;
  7876. flatbuffers::uoffset_t start_;
  7877. void add_min(float min) {
  7878. fbb_.AddElement<float>(FakeQuantOptions::VT_MIN, min, 0.0f);
  7879. }
  7880. void add_max(float max) {
  7881. fbb_.AddElement<float>(FakeQuantOptions::VT_MAX, max, 0.0f);
  7882. }
  7883. void add_num_bits(int32_t num_bits) {
  7884. fbb_.AddElement<int32_t>(FakeQuantOptions::VT_NUM_BITS, num_bits, 0);
  7885. }
  7886. void add_narrow_range(bool narrow_range) {
  7887. fbb_.AddElement<uint8_t>(FakeQuantOptions::VT_NARROW_RANGE, static_cast<uint8_t>(narrow_range), 0);
  7888. }
  7889. explicit FakeQuantOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7890. : fbb_(_fbb) {
  7891. start_ = fbb_.StartTable();
  7892. }
  7893. FakeQuantOptionsBuilder &operator=(const FakeQuantOptionsBuilder &);
  7894. flatbuffers::Offset<FakeQuantOptions> Finish() {
  7895. const auto end = fbb_.EndTable(start_);
  7896. auto o = flatbuffers::Offset<FakeQuantOptions>(end);
  7897. return o;
  7898. }
  7899. };
  7900. inline flatbuffers::Offset<FakeQuantOptions> CreateFakeQuantOptions(
  7901. flatbuffers::FlatBufferBuilder &_fbb,
  7902. float min = 0.0f,
  7903. float max = 0.0f,
  7904. int32_t num_bits = 0,
  7905. bool narrow_range = false) {
  7906. FakeQuantOptionsBuilder builder_(_fbb);
  7907. builder_.add_num_bits(num_bits);
  7908. builder_.add_max(max);
  7909. builder_.add_min(min);
  7910. builder_.add_narrow_range(narrow_range);
  7911. return builder_.Finish();
  7912. }
  7913. flatbuffers::Offset<FakeQuantOptions> CreateFakeQuantOptions(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7914. struct PackOptionsT : public flatbuffers::NativeTable {
  7915. typedef PackOptions TableType;
  7916. int32_t values_count;
  7917. int32_t axis;
  7918. PackOptionsT()
  7919. : values_count(0),
  7920. axis(0) {
  7921. }
  7922. };
  7923. struct PackOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7924. typedef PackOptionsT NativeTableType;
  7925. typedef PackOptionsBuilder Builder;
  7926. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  7927. VT_VALUES_COUNT = 4,
  7928. VT_AXIS = 6
  7929. };
  7930. int32_t values_count() const {
  7931. return GetField<int32_t>(VT_VALUES_COUNT, 0);
  7932. }
  7933. int32_t axis() const {
  7934. return GetField<int32_t>(VT_AXIS, 0);
  7935. }
  7936. bool Verify(flatbuffers::Verifier &verifier) const {
  7937. return VerifyTableStart(verifier) &&
  7938. VerifyField<int32_t>(verifier, VT_VALUES_COUNT) &&
  7939. VerifyField<int32_t>(verifier, VT_AXIS) &&
  7940. verifier.EndTable();
  7941. }
  7942. PackOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7943. void UnPackTo(PackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7944. static flatbuffers::Offset<PackOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7945. };
  7946. struct PackOptionsBuilder {
  7947. typedef PackOptions Table;
  7948. flatbuffers::FlatBufferBuilder &fbb_;
  7949. flatbuffers::uoffset_t start_;
  7950. void add_values_count(int32_t values_count) {
  7951. fbb_.AddElement<int32_t>(PackOptions::VT_VALUES_COUNT, values_count, 0);
  7952. }
  7953. void add_axis(int32_t axis) {
  7954. fbb_.AddElement<int32_t>(PackOptions::VT_AXIS, axis, 0);
  7955. }
  7956. explicit PackOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7957. : fbb_(_fbb) {
  7958. start_ = fbb_.StartTable();
  7959. }
  7960. PackOptionsBuilder &operator=(const PackOptionsBuilder &);
  7961. flatbuffers::Offset<PackOptions> Finish() {
  7962. const auto end = fbb_.EndTable(start_);
  7963. auto o = flatbuffers::Offset<PackOptions>(end);
  7964. return o;
  7965. }
  7966. };
  7967. inline flatbuffers::Offset<PackOptions> CreatePackOptions(
  7968. flatbuffers::FlatBufferBuilder &_fbb,
  7969. int32_t values_count = 0,
  7970. int32_t axis = 0) {
  7971. PackOptionsBuilder builder_(_fbb);
  7972. builder_.add_axis(axis);
  7973. builder_.add_values_count(values_count);
  7974. return builder_.Finish();
  7975. }
  7976. flatbuffers::Offset<PackOptions> CreatePackOptions(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7977. struct LogicalOrOptionsT : public flatbuffers::NativeTable {
  7978. typedef LogicalOrOptions TableType;
  7979. LogicalOrOptionsT() {
  7980. }
  7981. };
  7982. struct LogicalOrOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  7983. typedef LogicalOrOptionsT NativeTableType;
  7984. typedef LogicalOrOptionsBuilder Builder;
  7985. bool Verify(flatbuffers::Verifier &verifier) const {
  7986. return VerifyTableStart(verifier) &&
  7987. verifier.EndTable();
  7988. }
  7989. LogicalOrOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7990. void UnPackTo(LogicalOrOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  7991. static flatbuffers::Offset<LogicalOrOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  7992. };
  7993. struct LogicalOrOptionsBuilder {
  7994. typedef LogicalOrOptions Table;
  7995. flatbuffers::FlatBufferBuilder &fbb_;
  7996. flatbuffers::uoffset_t start_;
  7997. explicit LogicalOrOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  7998. : fbb_(_fbb) {
  7999. start_ = fbb_.StartTable();
  8000. }
  8001. LogicalOrOptionsBuilder &operator=(const LogicalOrOptionsBuilder &);
  8002. flatbuffers::Offset<LogicalOrOptions> Finish() {
  8003. const auto end = fbb_.EndTable(start_);
  8004. auto o = flatbuffers::Offset<LogicalOrOptions>(end);
  8005. return o;
  8006. }
  8007. };
  8008. inline flatbuffers::Offset<LogicalOrOptions> CreateLogicalOrOptions(
  8009. flatbuffers::FlatBufferBuilder &_fbb) {
  8010. LogicalOrOptionsBuilder builder_(_fbb);
  8011. return builder_.Finish();
  8012. }
  8013. flatbuffers::Offset<LogicalOrOptions> CreateLogicalOrOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8014. struct OneHotOptionsT : public flatbuffers::NativeTable {
  8015. typedef OneHotOptions TableType;
  8016. int32_t axis;
  8017. OneHotOptionsT()
  8018. : axis(0) {
  8019. }
  8020. };
  8021. struct OneHotOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8022. typedef OneHotOptionsT NativeTableType;
  8023. typedef OneHotOptionsBuilder Builder;
  8024. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8025. VT_AXIS = 4
  8026. };
  8027. int32_t axis() const {
  8028. return GetField<int32_t>(VT_AXIS, 0);
  8029. }
  8030. bool Verify(flatbuffers::Verifier &verifier) const {
  8031. return VerifyTableStart(verifier) &&
  8032. VerifyField<int32_t>(verifier, VT_AXIS) &&
  8033. verifier.EndTable();
  8034. }
  8035. OneHotOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8036. void UnPackTo(OneHotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8037. static flatbuffers::Offset<OneHotOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8038. };
  8039. struct OneHotOptionsBuilder {
  8040. typedef OneHotOptions Table;
  8041. flatbuffers::FlatBufferBuilder &fbb_;
  8042. flatbuffers::uoffset_t start_;
  8043. void add_axis(int32_t axis) {
  8044. fbb_.AddElement<int32_t>(OneHotOptions::VT_AXIS, axis, 0);
  8045. }
  8046. explicit OneHotOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8047. : fbb_(_fbb) {
  8048. start_ = fbb_.StartTable();
  8049. }
  8050. OneHotOptionsBuilder &operator=(const OneHotOptionsBuilder &);
  8051. flatbuffers::Offset<OneHotOptions> Finish() {
  8052. const auto end = fbb_.EndTable(start_);
  8053. auto o = flatbuffers::Offset<OneHotOptions>(end);
  8054. return o;
  8055. }
  8056. };
  8057. inline flatbuffers::Offset<OneHotOptions> CreateOneHotOptions(
  8058. flatbuffers::FlatBufferBuilder &_fbb,
  8059. int32_t axis = 0) {
  8060. OneHotOptionsBuilder builder_(_fbb);
  8061. builder_.add_axis(axis);
  8062. return builder_.Finish();
  8063. }
  8064. flatbuffers::Offset<OneHotOptions> CreateOneHotOptions(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8065. struct AbsOptionsT : public flatbuffers::NativeTable {
  8066. typedef AbsOptions TableType;
  8067. AbsOptionsT() {
  8068. }
  8069. };
  8070. struct AbsOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8071. typedef AbsOptionsT NativeTableType;
  8072. typedef AbsOptionsBuilder Builder;
  8073. bool Verify(flatbuffers::Verifier &verifier) const {
  8074. return VerifyTableStart(verifier) &&
  8075. verifier.EndTable();
  8076. }
  8077. AbsOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8078. void UnPackTo(AbsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8079. static flatbuffers::Offset<AbsOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8080. };
  8081. struct AbsOptionsBuilder {
  8082. typedef AbsOptions Table;
  8083. flatbuffers::FlatBufferBuilder &fbb_;
  8084. flatbuffers::uoffset_t start_;
  8085. explicit AbsOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8086. : fbb_(_fbb) {
  8087. start_ = fbb_.StartTable();
  8088. }
  8089. AbsOptionsBuilder &operator=(const AbsOptionsBuilder &);
  8090. flatbuffers::Offset<AbsOptions> Finish() {
  8091. const auto end = fbb_.EndTable(start_);
  8092. auto o = flatbuffers::Offset<AbsOptions>(end);
  8093. return o;
  8094. }
  8095. };
  8096. inline flatbuffers::Offset<AbsOptions> CreateAbsOptions(
  8097. flatbuffers::FlatBufferBuilder &_fbb) {
  8098. AbsOptionsBuilder builder_(_fbb);
  8099. return builder_.Finish();
  8100. }
  8101. flatbuffers::Offset<AbsOptions> CreateAbsOptions(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8102. struct HardSwishOptionsT : public flatbuffers::NativeTable {
  8103. typedef HardSwishOptions TableType;
  8104. HardSwishOptionsT() {
  8105. }
  8106. };
  8107. struct HardSwishOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8108. typedef HardSwishOptionsT NativeTableType;
  8109. typedef HardSwishOptionsBuilder Builder;
  8110. bool Verify(flatbuffers::Verifier &verifier) const {
  8111. return VerifyTableStart(verifier) &&
  8112. verifier.EndTable();
  8113. }
  8114. HardSwishOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8115. void UnPackTo(HardSwishOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8116. static flatbuffers::Offset<HardSwishOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8117. };
  8118. struct HardSwishOptionsBuilder {
  8119. typedef HardSwishOptions Table;
  8120. flatbuffers::FlatBufferBuilder &fbb_;
  8121. flatbuffers::uoffset_t start_;
  8122. explicit HardSwishOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8123. : fbb_(_fbb) {
  8124. start_ = fbb_.StartTable();
  8125. }
  8126. HardSwishOptionsBuilder &operator=(const HardSwishOptionsBuilder &);
  8127. flatbuffers::Offset<HardSwishOptions> Finish() {
  8128. const auto end = fbb_.EndTable(start_);
  8129. auto o = flatbuffers::Offset<HardSwishOptions>(end);
  8130. return o;
  8131. }
  8132. };
  8133. inline flatbuffers::Offset<HardSwishOptions> CreateHardSwishOptions(
  8134. flatbuffers::FlatBufferBuilder &_fbb) {
  8135. HardSwishOptionsBuilder builder_(_fbb);
  8136. return builder_.Finish();
  8137. }
  8138. flatbuffers::Offset<HardSwishOptions> CreateHardSwishOptions(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8139. struct LogicalAndOptionsT : public flatbuffers::NativeTable {
  8140. typedef LogicalAndOptions TableType;
  8141. LogicalAndOptionsT() {
  8142. }
  8143. };
  8144. struct LogicalAndOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8145. typedef LogicalAndOptionsT NativeTableType;
  8146. typedef LogicalAndOptionsBuilder Builder;
  8147. bool Verify(flatbuffers::Verifier &verifier) const {
  8148. return VerifyTableStart(verifier) &&
  8149. verifier.EndTable();
  8150. }
  8151. LogicalAndOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8152. void UnPackTo(LogicalAndOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8153. static flatbuffers::Offset<LogicalAndOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8154. };
  8155. struct LogicalAndOptionsBuilder {
  8156. typedef LogicalAndOptions Table;
  8157. flatbuffers::FlatBufferBuilder &fbb_;
  8158. flatbuffers::uoffset_t start_;
  8159. explicit LogicalAndOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8160. : fbb_(_fbb) {
  8161. start_ = fbb_.StartTable();
  8162. }
  8163. LogicalAndOptionsBuilder &operator=(const LogicalAndOptionsBuilder &);
  8164. flatbuffers::Offset<LogicalAndOptions> Finish() {
  8165. const auto end = fbb_.EndTable(start_);
  8166. auto o = flatbuffers::Offset<LogicalAndOptions>(end);
  8167. return o;
  8168. }
  8169. };
  8170. inline flatbuffers::Offset<LogicalAndOptions> CreateLogicalAndOptions(
  8171. flatbuffers::FlatBufferBuilder &_fbb) {
  8172. LogicalAndOptionsBuilder builder_(_fbb);
  8173. return builder_.Finish();
  8174. }
  8175. flatbuffers::Offset<LogicalAndOptions> CreateLogicalAndOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8176. struct LogicalNotOptionsT : public flatbuffers::NativeTable {
  8177. typedef LogicalNotOptions TableType;
  8178. LogicalNotOptionsT() {
  8179. }
  8180. };
  8181. struct LogicalNotOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8182. typedef LogicalNotOptionsT NativeTableType;
  8183. typedef LogicalNotOptionsBuilder Builder;
  8184. bool Verify(flatbuffers::Verifier &verifier) const {
  8185. return VerifyTableStart(verifier) &&
  8186. verifier.EndTable();
  8187. }
  8188. LogicalNotOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8189. void UnPackTo(LogicalNotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8190. static flatbuffers::Offset<LogicalNotOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8191. };
  8192. struct LogicalNotOptionsBuilder {
  8193. typedef LogicalNotOptions Table;
  8194. flatbuffers::FlatBufferBuilder &fbb_;
  8195. flatbuffers::uoffset_t start_;
  8196. explicit LogicalNotOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8197. : fbb_(_fbb) {
  8198. start_ = fbb_.StartTable();
  8199. }
  8200. LogicalNotOptionsBuilder &operator=(const LogicalNotOptionsBuilder &);
  8201. flatbuffers::Offset<LogicalNotOptions> Finish() {
  8202. const auto end = fbb_.EndTable(start_);
  8203. auto o = flatbuffers::Offset<LogicalNotOptions>(end);
  8204. return o;
  8205. }
  8206. };
  8207. inline flatbuffers::Offset<LogicalNotOptions> CreateLogicalNotOptions(
  8208. flatbuffers::FlatBufferBuilder &_fbb) {
  8209. LogicalNotOptionsBuilder builder_(_fbb);
  8210. return builder_.Finish();
  8211. }
  8212. flatbuffers::Offset<LogicalNotOptions> CreateLogicalNotOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8213. struct UnpackOptionsT : public flatbuffers::NativeTable {
  8214. typedef UnpackOptions TableType;
  8215. int32_t num;
  8216. int32_t axis;
  8217. UnpackOptionsT()
  8218. : num(0),
  8219. axis(0) {
  8220. }
  8221. };
  8222. struct UnpackOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8223. typedef UnpackOptionsT NativeTableType;
  8224. typedef UnpackOptionsBuilder Builder;
  8225. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8226. VT_NUM = 4,
  8227. VT_AXIS = 6
  8228. };
  8229. int32_t num() const {
  8230. return GetField<int32_t>(VT_NUM, 0);
  8231. }
  8232. int32_t axis() const {
  8233. return GetField<int32_t>(VT_AXIS, 0);
  8234. }
  8235. bool Verify(flatbuffers::Verifier &verifier) const {
  8236. return VerifyTableStart(verifier) &&
  8237. VerifyField<int32_t>(verifier, VT_NUM) &&
  8238. VerifyField<int32_t>(verifier, VT_AXIS) &&
  8239. verifier.EndTable();
  8240. }
  8241. UnpackOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8242. void UnPackTo(UnpackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8243. static flatbuffers::Offset<UnpackOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8244. };
  8245. struct UnpackOptionsBuilder {
  8246. typedef UnpackOptions Table;
  8247. flatbuffers::FlatBufferBuilder &fbb_;
  8248. flatbuffers::uoffset_t start_;
  8249. void add_num(int32_t num) {
  8250. fbb_.AddElement<int32_t>(UnpackOptions::VT_NUM, num, 0);
  8251. }
  8252. void add_axis(int32_t axis) {
  8253. fbb_.AddElement<int32_t>(UnpackOptions::VT_AXIS, axis, 0);
  8254. }
  8255. explicit UnpackOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8256. : fbb_(_fbb) {
  8257. start_ = fbb_.StartTable();
  8258. }
  8259. UnpackOptionsBuilder &operator=(const UnpackOptionsBuilder &);
  8260. flatbuffers::Offset<UnpackOptions> Finish() {
  8261. const auto end = fbb_.EndTable(start_);
  8262. auto o = flatbuffers::Offset<UnpackOptions>(end);
  8263. return o;
  8264. }
  8265. };
  8266. inline flatbuffers::Offset<UnpackOptions> CreateUnpackOptions(
  8267. flatbuffers::FlatBufferBuilder &_fbb,
  8268. int32_t num = 0,
  8269. int32_t axis = 0) {
  8270. UnpackOptionsBuilder builder_(_fbb);
  8271. builder_.add_axis(axis);
  8272. builder_.add_num(num);
  8273. return builder_.Finish();
  8274. }
  8275. flatbuffers::Offset<UnpackOptions> CreateUnpackOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8276. struct FloorDivOptionsT : public flatbuffers::NativeTable {
  8277. typedef FloorDivOptions TableType;
  8278. FloorDivOptionsT() {
  8279. }
  8280. };
  8281. struct FloorDivOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8282. typedef FloorDivOptionsT NativeTableType;
  8283. typedef FloorDivOptionsBuilder Builder;
  8284. bool Verify(flatbuffers::Verifier &verifier) const {
  8285. return VerifyTableStart(verifier) &&
  8286. verifier.EndTable();
  8287. }
  8288. FloorDivOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8289. void UnPackTo(FloorDivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8290. static flatbuffers::Offset<FloorDivOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8291. };
  8292. struct FloorDivOptionsBuilder {
  8293. typedef FloorDivOptions Table;
  8294. flatbuffers::FlatBufferBuilder &fbb_;
  8295. flatbuffers::uoffset_t start_;
  8296. explicit FloorDivOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8297. : fbb_(_fbb) {
  8298. start_ = fbb_.StartTable();
  8299. }
  8300. FloorDivOptionsBuilder &operator=(const FloorDivOptionsBuilder &);
  8301. flatbuffers::Offset<FloorDivOptions> Finish() {
  8302. const auto end = fbb_.EndTable(start_);
  8303. auto o = flatbuffers::Offset<FloorDivOptions>(end);
  8304. return o;
  8305. }
  8306. };
  8307. inline flatbuffers::Offset<FloorDivOptions> CreateFloorDivOptions(
  8308. flatbuffers::FlatBufferBuilder &_fbb) {
  8309. FloorDivOptionsBuilder builder_(_fbb);
  8310. return builder_.Finish();
  8311. }
  8312. flatbuffers::Offset<FloorDivOptions> CreateFloorDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8313. struct SquareOptionsT : public flatbuffers::NativeTable {
  8314. typedef SquareOptions TableType;
  8315. SquareOptionsT() {
  8316. }
  8317. };
  8318. struct SquareOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8319. typedef SquareOptionsT NativeTableType;
  8320. typedef SquareOptionsBuilder Builder;
  8321. bool Verify(flatbuffers::Verifier &verifier) const {
  8322. return VerifyTableStart(verifier) &&
  8323. verifier.EndTable();
  8324. }
  8325. SquareOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8326. void UnPackTo(SquareOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8327. static flatbuffers::Offset<SquareOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8328. };
  8329. struct SquareOptionsBuilder {
  8330. typedef SquareOptions Table;
  8331. flatbuffers::FlatBufferBuilder &fbb_;
  8332. flatbuffers::uoffset_t start_;
  8333. explicit SquareOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8334. : fbb_(_fbb) {
  8335. start_ = fbb_.StartTable();
  8336. }
  8337. SquareOptionsBuilder &operator=(const SquareOptionsBuilder &);
  8338. flatbuffers::Offset<SquareOptions> Finish() {
  8339. const auto end = fbb_.EndTable(start_);
  8340. auto o = flatbuffers::Offset<SquareOptions>(end);
  8341. return o;
  8342. }
  8343. };
  8344. inline flatbuffers::Offset<SquareOptions> CreateSquareOptions(
  8345. flatbuffers::FlatBufferBuilder &_fbb) {
  8346. SquareOptionsBuilder builder_(_fbb);
  8347. return builder_.Finish();
  8348. }
  8349. flatbuffers::Offset<SquareOptions> CreateSquareOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8350. struct ZerosLikeOptionsT : public flatbuffers::NativeTable {
  8351. typedef ZerosLikeOptions TableType;
  8352. ZerosLikeOptionsT() {
  8353. }
  8354. };
  8355. struct ZerosLikeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8356. typedef ZerosLikeOptionsT NativeTableType;
  8357. typedef ZerosLikeOptionsBuilder Builder;
  8358. bool Verify(flatbuffers::Verifier &verifier) const {
  8359. return VerifyTableStart(verifier) &&
  8360. verifier.EndTable();
  8361. }
  8362. ZerosLikeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8363. void UnPackTo(ZerosLikeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8364. static flatbuffers::Offset<ZerosLikeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8365. };
  8366. struct ZerosLikeOptionsBuilder {
  8367. typedef ZerosLikeOptions Table;
  8368. flatbuffers::FlatBufferBuilder &fbb_;
  8369. flatbuffers::uoffset_t start_;
  8370. explicit ZerosLikeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8371. : fbb_(_fbb) {
  8372. start_ = fbb_.StartTable();
  8373. }
  8374. ZerosLikeOptionsBuilder &operator=(const ZerosLikeOptionsBuilder &);
  8375. flatbuffers::Offset<ZerosLikeOptions> Finish() {
  8376. const auto end = fbb_.EndTable(start_);
  8377. auto o = flatbuffers::Offset<ZerosLikeOptions>(end);
  8378. return o;
  8379. }
  8380. };
  8381. inline flatbuffers::Offset<ZerosLikeOptions> CreateZerosLikeOptions(
  8382. flatbuffers::FlatBufferBuilder &_fbb) {
  8383. ZerosLikeOptionsBuilder builder_(_fbb);
  8384. return builder_.Finish();
  8385. }
  8386. flatbuffers::Offset<ZerosLikeOptions> CreateZerosLikeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8387. struct FillOptionsT : public flatbuffers::NativeTable {
  8388. typedef FillOptions TableType;
  8389. FillOptionsT() {
  8390. }
  8391. };
  8392. struct FillOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8393. typedef FillOptionsT NativeTableType;
  8394. typedef FillOptionsBuilder Builder;
  8395. bool Verify(flatbuffers::Verifier &verifier) const {
  8396. return VerifyTableStart(verifier) &&
  8397. verifier.EndTable();
  8398. }
  8399. FillOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8400. void UnPackTo(FillOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8401. static flatbuffers::Offset<FillOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8402. };
  8403. struct FillOptionsBuilder {
  8404. typedef FillOptions Table;
  8405. flatbuffers::FlatBufferBuilder &fbb_;
  8406. flatbuffers::uoffset_t start_;
  8407. explicit FillOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8408. : fbb_(_fbb) {
  8409. start_ = fbb_.StartTable();
  8410. }
  8411. FillOptionsBuilder &operator=(const FillOptionsBuilder &);
  8412. flatbuffers::Offset<FillOptions> Finish() {
  8413. const auto end = fbb_.EndTable(start_);
  8414. auto o = flatbuffers::Offset<FillOptions>(end);
  8415. return o;
  8416. }
  8417. };
  8418. inline flatbuffers::Offset<FillOptions> CreateFillOptions(
  8419. flatbuffers::FlatBufferBuilder &_fbb) {
  8420. FillOptionsBuilder builder_(_fbb);
  8421. return builder_.Finish();
  8422. }
  8423. flatbuffers::Offset<FillOptions> CreateFillOptions(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8424. struct FloorModOptionsT : public flatbuffers::NativeTable {
  8425. typedef FloorModOptions TableType;
  8426. FloorModOptionsT() {
  8427. }
  8428. };
  8429. struct FloorModOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8430. typedef FloorModOptionsT NativeTableType;
  8431. typedef FloorModOptionsBuilder Builder;
  8432. bool Verify(flatbuffers::Verifier &verifier) const {
  8433. return VerifyTableStart(verifier) &&
  8434. verifier.EndTable();
  8435. }
  8436. FloorModOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8437. void UnPackTo(FloorModOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8438. static flatbuffers::Offset<FloorModOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8439. };
  8440. struct FloorModOptionsBuilder {
  8441. typedef FloorModOptions Table;
  8442. flatbuffers::FlatBufferBuilder &fbb_;
  8443. flatbuffers::uoffset_t start_;
  8444. explicit FloorModOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8445. : fbb_(_fbb) {
  8446. start_ = fbb_.StartTable();
  8447. }
  8448. FloorModOptionsBuilder &operator=(const FloorModOptionsBuilder &);
  8449. flatbuffers::Offset<FloorModOptions> Finish() {
  8450. const auto end = fbb_.EndTable(start_);
  8451. auto o = flatbuffers::Offset<FloorModOptions>(end);
  8452. return o;
  8453. }
  8454. };
  8455. inline flatbuffers::Offset<FloorModOptions> CreateFloorModOptions(
  8456. flatbuffers::FlatBufferBuilder &_fbb) {
  8457. FloorModOptionsBuilder builder_(_fbb);
  8458. return builder_.Finish();
  8459. }
  8460. flatbuffers::Offset<FloorModOptions> CreateFloorModOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8461. struct RangeOptionsT : public flatbuffers::NativeTable {
  8462. typedef RangeOptions TableType;
  8463. RangeOptionsT() {
  8464. }
  8465. };
  8466. struct RangeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8467. typedef RangeOptionsT NativeTableType;
  8468. typedef RangeOptionsBuilder Builder;
  8469. bool Verify(flatbuffers::Verifier &verifier) const {
  8470. return VerifyTableStart(verifier) &&
  8471. verifier.EndTable();
  8472. }
  8473. RangeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8474. void UnPackTo(RangeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8475. static flatbuffers::Offset<RangeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8476. };
  8477. struct RangeOptionsBuilder {
  8478. typedef RangeOptions Table;
  8479. flatbuffers::FlatBufferBuilder &fbb_;
  8480. flatbuffers::uoffset_t start_;
  8481. explicit RangeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8482. : fbb_(_fbb) {
  8483. start_ = fbb_.StartTable();
  8484. }
  8485. RangeOptionsBuilder &operator=(const RangeOptionsBuilder &);
  8486. flatbuffers::Offset<RangeOptions> Finish() {
  8487. const auto end = fbb_.EndTable(start_);
  8488. auto o = flatbuffers::Offset<RangeOptions>(end);
  8489. return o;
  8490. }
  8491. };
  8492. inline flatbuffers::Offset<RangeOptions> CreateRangeOptions(
  8493. flatbuffers::FlatBufferBuilder &_fbb) {
  8494. RangeOptionsBuilder builder_(_fbb);
  8495. return builder_.Finish();
  8496. }
  8497. flatbuffers::Offset<RangeOptions> CreateRangeOptions(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8498. struct LeakyReluOptionsT : public flatbuffers::NativeTable {
  8499. typedef LeakyReluOptions TableType;
  8500. float alpha;
  8501. LeakyReluOptionsT()
  8502. : alpha(0.0f) {
  8503. }
  8504. };
  8505. struct LeakyReluOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8506. typedef LeakyReluOptionsT NativeTableType;
  8507. typedef LeakyReluOptionsBuilder Builder;
  8508. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8509. VT_ALPHA = 4
  8510. };
  8511. float alpha() const {
  8512. return GetField<float>(VT_ALPHA, 0.0f);
  8513. }
  8514. bool Verify(flatbuffers::Verifier &verifier) const {
  8515. return VerifyTableStart(verifier) &&
  8516. VerifyField<float>(verifier, VT_ALPHA) &&
  8517. verifier.EndTable();
  8518. }
  8519. LeakyReluOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8520. void UnPackTo(LeakyReluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8521. static flatbuffers::Offset<LeakyReluOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8522. };
  8523. struct LeakyReluOptionsBuilder {
  8524. typedef LeakyReluOptions Table;
  8525. flatbuffers::FlatBufferBuilder &fbb_;
  8526. flatbuffers::uoffset_t start_;
  8527. void add_alpha(float alpha) {
  8528. fbb_.AddElement<float>(LeakyReluOptions::VT_ALPHA, alpha, 0.0f);
  8529. }
  8530. explicit LeakyReluOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8531. : fbb_(_fbb) {
  8532. start_ = fbb_.StartTable();
  8533. }
  8534. LeakyReluOptionsBuilder &operator=(const LeakyReluOptionsBuilder &);
  8535. flatbuffers::Offset<LeakyReluOptions> Finish() {
  8536. const auto end = fbb_.EndTable(start_);
  8537. auto o = flatbuffers::Offset<LeakyReluOptions>(end);
  8538. return o;
  8539. }
  8540. };
  8541. inline flatbuffers::Offset<LeakyReluOptions> CreateLeakyReluOptions(
  8542. flatbuffers::FlatBufferBuilder &_fbb,
  8543. float alpha = 0.0f) {
  8544. LeakyReluOptionsBuilder builder_(_fbb);
  8545. builder_.add_alpha(alpha);
  8546. return builder_.Finish();
  8547. }
  8548. flatbuffers::Offset<LeakyReluOptions> CreateLeakyReluOptions(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8549. struct SquaredDifferenceOptionsT : public flatbuffers::NativeTable {
  8550. typedef SquaredDifferenceOptions TableType;
  8551. SquaredDifferenceOptionsT() {
  8552. }
  8553. };
  8554. struct SquaredDifferenceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8555. typedef SquaredDifferenceOptionsT NativeTableType;
  8556. typedef SquaredDifferenceOptionsBuilder Builder;
  8557. bool Verify(flatbuffers::Verifier &verifier) const {
  8558. return VerifyTableStart(verifier) &&
  8559. verifier.EndTable();
  8560. }
  8561. SquaredDifferenceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8562. void UnPackTo(SquaredDifferenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8563. static flatbuffers::Offset<SquaredDifferenceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8564. };
  8565. struct SquaredDifferenceOptionsBuilder {
  8566. typedef SquaredDifferenceOptions Table;
  8567. flatbuffers::FlatBufferBuilder &fbb_;
  8568. flatbuffers::uoffset_t start_;
  8569. explicit SquaredDifferenceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8570. : fbb_(_fbb) {
  8571. start_ = fbb_.StartTable();
  8572. }
  8573. SquaredDifferenceOptionsBuilder &operator=(const SquaredDifferenceOptionsBuilder &);
  8574. flatbuffers::Offset<SquaredDifferenceOptions> Finish() {
  8575. const auto end = fbb_.EndTable(start_);
  8576. auto o = flatbuffers::Offset<SquaredDifferenceOptions>(end);
  8577. return o;
  8578. }
  8579. };
  8580. inline flatbuffers::Offset<SquaredDifferenceOptions> CreateSquaredDifferenceOptions(
  8581. flatbuffers::FlatBufferBuilder &_fbb) {
  8582. SquaredDifferenceOptionsBuilder builder_(_fbb);
  8583. return builder_.Finish();
  8584. }
  8585. flatbuffers::Offset<SquaredDifferenceOptions> CreateSquaredDifferenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8586. struct MirrorPadOptionsT : public flatbuffers::NativeTable {
  8587. typedef MirrorPadOptions TableType;
  8588. tflite::MirrorPadMode mode;
  8589. MirrorPadOptionsT()
  8590. : mode(tflite::MirrorPadMode_REFLECT) {
  8591. }
  8592. };
  8593. struct MirrorPadOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8594. typedef MirrorPadOptionsT NativeTableType;
  8595. typedef MirrorPadOptionsBuilder Builder;
  8596. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8597. VT_MODE = 4
  8598. };
  8599. tflite::MirrorPadMode mode() const {
  8600. return static_cast<tflite::MirrorPadMode>(GetField<int8_t>(VT_MODE, 0));
  8601. }
  8602. bool Verify(flatbuffers::Verifier &verifier) const {
  8603. return VerifyTableStart(verifier) &&
  8604. VerifyField<int8_t>(verifier, VT_MODE) &&
  8605. verifier.EndTable();
  8606. }
  8607. MirrorPadOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8608. void UnPackTo(MirrorPadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8609. static flatbuffers::Offset<MirrorPadOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8610. };
  8611. struct MirrorPadOptionsBuilder {
  8612. typedef MirrorPadOptions Table;
  8613. flatbuffers::FlatBufferBuilder &fbb_;
  8614. flatbuffers::uoffset_t start_;
  8615. void add_mode(tflite::MirrorPadMode mode) {
  8616. fbb_.AddElement<int8_t>(MirrorPadOptions::VT_MODE, static_cast<int8_t>(mode), 0);
  8617. }
  8618. explicit MirrorPadOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8619. : fbb_(_fbb) {
  8620. start_ = fbb_.StartTable();
  8621. }
  8622. MirrorPadOptionsBuilder &operator=(const MirrorPadOptionsBuilder &);
  8623. flatbuffers::Offset<MirrorPadOptions> Finish() {
  8624. const auto end = fbb_.EndTable(start_);
  8625. auto o = flatbuffers::Offset<MirrorPadOptions>(end);
  8626. return o;
  8627. }
  8628. };
  8629. inline flatbuffers::Offset<MirrorPadOptions> CreateMirrorPadOptions(
  8630. flatbuffers::FlatBufferBuilder &_fbb,
  8631. tflite::MirrorPadMode mode = tflite::MirrorPadMode_REFLECT) {
  8632. MirrorPadOptionsBuilder builder_(_fbb);
  8633. builder_.add_mode(mode);
  8634. return builder_.Finish();
  8635. }
  8636. flatbuffers::Offset<MirrorPadOptions> CreateMirrorPadOptions(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8637. struct UniqueOptionsT : public flatbuffers::NativeTable {
  8638. typedef UniqueOptions TableType;
  8639. tflite::TensorType idx_out_type;
  8640. UniqueOptionsT()
  8641. : idx_out_type(tflite::TensorType_INT32) {
  8642. }
  8643. };
  8644. struct UniqueOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8645. typedef UniqueOptionsT NativeTableType;
  8646. typedef UniqueOptionsBuilder Builder;
  8647. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8648. VT_IDX_OUT_TYPE = 4
  8649. };
  8650. tflite::TensorType idx_out_type() const {
  8651. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_IDX_OUT_TYPE, 2));
  8652. }
  8653. bool Verify(flatbuffers::Verifier &verifier) const {
  8654. return VerifyTableStart(verifier) &&
  8655. VerifyField<int8_t>(verifier, VT_IDX_OUT_TYPE) &&
  8656. verifier.EndTable();
  8657. }
  8658. UniqueOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8659. void UnPackTo(UniqueOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8660. static flatbuffers::Offset<UniqueOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8661. };
  8662. struct UniqueOptionsBuilder {
  8663. typedef UniqueOptions Table;
  8664. flatbuffers::FlatBufferBuilder &fbb_;
  8665. flatbuffers::uoffset_t start_;
  8666. void add_idx_out_type(tflite::TensorType idx_out_type) {
  8667. fbb_.AddElement<int8_t>(UniqueOptions::VT_IDX_OUT_TYPE, static_cast<int8_t>(idx_out_type), 2);
  8668. }
  8669. explicit UniqueOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8670. : fbb_(_fbb) {
  8671. start_ = fbb_.StartTable();
  8672. }
  8673. UniqueOptionsBuilder &operator=(const UniqueOptionsBuilder &);
  8674. flatbuffers::Offset<UniqueOptions> Finish() {
  8675. const auto end = fbb_.EndTable(start_);
  8676. auto o = flatbuffers::Offset<UniqueOptions>(end);
  8677. return o;
  8678. }
  8679. };
  8680. inline flatbuffers::Offset<UniqueOptions> CreateUniqueOptions(
  8681. flatbuffers::FlatBufferBuilder &_fbb,
  8682. tflite::TensorType idx_out_type = tflite::TensorType_INT32) {
  8683. UniqueOptionsBuilder builder_(_fbb);
  8684. builder_.add_idx_out_type(idx_out_type);
  8685. return builder_.Finish();
  8686. }
  8687. flatbuffers::Offset<UniqueOptions> CreateUniqueOptions(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8688. struct ReverseV2OptionsT : public flatbuffers::NativeTable {
  8689. typedef ReverseV2Options TableType;
  8690. ReverseV2OptionsT() {
  8691. }
  8692. };
  8693. struct ReverseV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8694. typedef ReverseV2OptionsT NativeTableType;
  8695. typedef ReverseV2OptionsBuilder Builder;
  8696. bool Verify(flatbuffers::Verifier &verifier) const {
  8697. return VerifyTableStart(verifier) &&
  8698. verifier.EndTable();
  8699. }
  8700. ReverseV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8701. void UnPackTo(ReverseV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8702. static flatbuffers::Offset<ReverseV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8703. };
  8704. struct ReverseV2OptionsBuilder {
  8705. typedef ReverseV2Options Table;
  8706. flatbuffers::FlatBufferBuilder &fbb_;
  8707. flatbuffers::uoffset_t start_;
  8708. explicit ReverseV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8709. : fbb_(_fbb) {
  8710. start_ = fbb_.StartTable();
  8711. }
  8712. ReverseV2OptionsBuilder &operator=(const ReverseV2OptionsBuilder &);
  8713. flatbuffers::Offset<ReverseV2Options> Finish() {
  8714. const auto end = fbb_.EndTable(start_);
  8715. auto o = flatbuffers::Offset<ReverseV2Options>(end);
  8716. return o;
  8717. }
  8718. };
  8719. inline flatbuffers::Offset<ReverseV2Options> CreateReverseV2Options(
  8720. flatbuffers::FlatBufferBuilder &_fbb) {
  8721. ReverseV2OptionsBuilder builder_(_fbb);
  8722. return builder_.Finish();
  8723. }
  8724. flatbuffers::Offset<ReverseV2Options> CreateReverseV2Options(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8725. struct AddNOptionsT : public flatbuffers::NativeTable {
  8726. typedef AddNOptions TableType;
  8727. AddNOptionsT() {
  8728. }
  8729. };
  8730. struct AddNOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8731. typedef AddNOptionsT NativeTableType;
  8732. typedef AddNOptionsBuilder Builder;
  8733. bool Verify(flatbuffers::Verifier &verifier) const {
  8734. return VerifyTableStart(verifier) &&
  8735. verifier.EndTable();
  8736. }
  8737. AddNOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8738. void UnPackTo(AddNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8739. static flatbuffers::Offset<AddNOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8740. };
  8741. struct AddNOptionsBuilder {
  8742. typedef AddNOptions Table;
  8743. flatbuffers::FlatBufferBuilder &fbb_;
  8744. flatbuffers::uoffset_t start_;
  8745. explicit AddNOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8746. : fbb_(_fbb) {
  8747. start_ = fbb_.StartTable();
  8748. }
  8749. AddNOptionsBuilder &operator=(const AddNOptionsBuilder &);
  8750. flatbuffers::Offset<AddNOptions> Finish() {
  8751. const auto end = fbb_.EndTable(start_);
  8752. auto o = flatbuffers::Offset<AddNOptions>(end);
  8753. return o;
  8754. }
  8755. };
  8756. inline flatbuffers::Offset<AddNOptions> CreateAddNOptions(
  8757. flatbuffers::FlatBufferBuilder &_fbb) {
  8758. AddNOptionsBuilder builder_(_fbb);
  8759. return builder_.Finish();
  8760. }
  8761. flatbuffers::Offset<AddNOptions> CreateAddNOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8762. struct GatherNdOptionsT : public flatbuffers::NativeTable {
  8763. typedef GatherNdOptions TableType;
  8764. GatherNdOptionsT() {
  8765. }
  8766. };
  8767. struct GatherNdOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8768. typedef GatherNdOptionsT NativeTableType;
  8769. typedef GatherNdOptionsBuilder Builder;
  8770. bool Verify(flatbuffers::Verifier &verifier) const {
  8771. return VerifyTableStart(verifier) &&
  8772. verifier.EndTable();
  8773. }
  8774. GatherNdOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8775. void UnPackTo(GatherNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8776. static flatbuffers::Offset<GatherNdOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8777. };
  8778. struct GatherNdOptionsBuilder {
  8779. typedef GatherNdOptions Table;
  8780. flatbuffers::FlatBufferBuilder &fbb_;
  8781. flatbuffers::uoffset_t start_;
  8782. explicit GatherNdOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8783. : fbb_(_fbb) {
  8784. start_ = fbb_.StartTable();
  8785. }
  8786. GatherNdOptionsBuilder &operator=(const GatherNdOptionsBuilder &);
  8787. flatbuffers::Offset<GatherNdOptions> Finish() {
  8788. const auto end = fbb_.EndTable(start_);
  8789. auto o = flatbuffers::Offset<GatherNdOptions>(end);
  8790. return o;
  8791. }
  8792. };
  8793. inline flatbuffers::Offset<GatherNdOptions> CreateGatherNdOptions(
  8794. flatbuffers::FlatBufferBuilder &_fbb) {
  8795. GatherNdOptionsBuilder builder_(_fbb);
  8796. return builder_.Finish();
  8797. }
  8798. flatbuffers::Offset<GatherNdOptions> CreateGatherNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8799. struct WhereOptionsT : public flatbuffers::NativeTable {
  8800. typedef WhereOptions TableType;
  8801. WhereOptionsT() {
  8802. }
  8803. };
  8804. struct WhereOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8805. typedef WhereOptionsT NativeTableType;
  8806. typedef WhereOptionsBuilder Builder;
  8807. bool Verify(flatbuffers::Verifier &verifier) const {
  8808. return VerifyTableStart(verifier) &&
  8809. verifier.EndTable();
  8810. }
  8811. WhereOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8812. void UnPackTo(WhereOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8813. static flatbuffers::Offset<WhereOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8814. };
  8815. struct WhereOptionsBuilder {
  8816. typedef WhereOptions Table;
  8817. flatbuffers::FlatBufferBuilder &fbb_;
  8818. flatbuffers::uoffset_t start_;
  8819. explicit WhereOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8820. : fbb_(_fbb) {
  8821. start_ = fbb_.StartTable();
  8822. }
  8823. WhereOptionsBuilder &operator=(const WhereOptionsBuilder &);
  8824. flatbuffers::Offset<WhereOptions> Finish() {
  8825. const auto end = fbb_.EndTable(start_);
  8826. auto o = flatbuffers::Offset<WhereOptions>(end);
  8827. return o;
  8828. }
  8829. };
  8830. inline flatbuffers::Offset<WhereOptions> CreateWhereOptions(
  8831. flatbuffers::FlatBufferBuilder &_fbb) {
  8832. WhereOptionsBuilder builder_(_fbb);
  8833. return builder_.Finish();
  8834. }
  8835. flatbuffers::Offset<WhereOptions> CreateWhereOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8836. struct ReverseSequenceOptionsT : public flatbuffers::NativeTable {
  8837. typedef ReverseSequenceOptions TableType;
  8838. int32_t seq_dim;
  8839. int32_t batch_dim;
  8840. ReverseSequenceOptionsT()
  8841. : seq_dim(0),
  8842. batch_dim(0) {
  8843. }
  8844. };
  8845. struct ReverseSequenceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8846. typedef ReverseSequenceOptionsT NativeTableType;
  8847. typedef ReverseSequenceOptionsBuilder Builder;
  8848. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  8849. VT_SEQ_DIM = 4,
  8850. VT_BATCH_DIM = 6
  8851. };
  8852. int32_t seq_dim() const {
  8853. return GetField<int32_t>(VT_SEQ_DIM, 0);
  8854. }
  8855. int32_t batch_dim() const {
  8856. return GetField<int32_t>(VT_BATCH_DIM, 0);
  8857. }
  8858. bool Verify(flatbuffers::Verifier &verifier) const {
  8859. return VerifyTableStart(verifier) &&
  8860. VerifyField<int32_t>(verifier, VT_SEQ_DIM) &&
  8861. VerifyField<int32_t>(verifier, VT_BATCH_DIM) &&
  8862. verifier.EndTable();
  8863. }
  8864. ReverseSequenceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8865. void UnPackTo(ReverseSequenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8866. static flatbuffers::Offset<ReverseSequenceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8867. };
  8868. struct ReverseSequenceOptionsBuilder {
  8869. typedef ReverseSequenceOptions Table;
  8870. flatbuffers::FlatBufferBuilder &fbb_;
  8871. flatbuffers::uoffset_t start_;
  8872. void add_seq_dim(int32_t seq_dim) {
  8873. fbb_.AddElement<int32_t>(ReverseSequenceOptions::VT_SEQ_DIM, seq_dim, 0);
  8874. }
  8875. void add_batch_dim(int32_t batch_dim) {
  8876. fbb_.AddElement<int32_t>(ReverseSequenceOptions::VT_BATCH_DIM, batch_dim, 0);
  8877. }
  8878. explicit ReverseSequenceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8879. : fbb_(_fbb) {
  8880. start_ = fbb_.StartTable();
  8881. }
  8882. ReverseSequenceOptionsBuilder &operator=(const ReverseSequenceOptionsBuilder &);
  8883. flatbuffers::Offset<ReverseSequenceOptions> Finish() {
  8884. const auto end = fbb_.EndTable(start_);
  8885. auto o = flatbuffers::Offset<ReverseSequenceOptions>(end);
  8886. return o;
  8887. }
  8888. };
  8889. inline flatbuffers::Offset<ReverseSequenceOptions> CreateReverseSequenceOptions(
  8890. flatbuffers::FlatBufferBuilder &_fbb,
  8891. int32_t seq_dim = 0,
  8892. int32_t batch_dim = 0) {
  8893. ReverseSequenceOptionsBuilder builder_(_fbb);
  8894. builder_.add_batch_dim(batch_dim);
  8895. builder_.add_seq_dim(seq_dim);
  8896. return builder_.Finish();
  8897. }
  8898. flatbuffers::Offset<ReverseSequenceOptions> CreateReverseSequenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8899. struct MatrixDiagOptionsT : public flatbuffers::NativeTable {
  8900. typedef MatrixDiagOptions TableType;
  8901. MatrixDiagOptionsT() {
  8902. }
  8903. };
  8904. struct MatrixDiagOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8905. typedef MatrixDiagOptionsT NativeTableType;
  8906. typedef MatrixDiagOptionsBuilder Builder;
  8907. bool Verify(flatbuffers::Verifier &verifier) const {
  8908. return VerifyTableStart(verifier) &&
  8909. verifier.EndTable();
  8910. }
  8911. MatrixDiagOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8912. void UnPackTo(MatrixDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8913. static flatbuffers::Offset<MatrixDiagOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8914. };
  8915. struct MatrixDiagOptionsBuilder {
  8916. typedef MatrixDiagOptions Table;
  8917. flatbuffers::FlatBufferBuilder &fbb_;
  8918. flatbuffers::uoffset_t start_;
  8919. explicit MatrixDiagOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8920. : fbb_(_fbb) {
  8921. start_ = fbb_.StartTable();
  8922. }
  8923. MatrixDiagOptionsBuilder &operator=(const MatrixDiagOptionsBuilder &);
  8924. flatbuffers::Offset<MatrixDiagOptions> Finish() {
  8925. const auto end = fbb_.EndTable(start_);
  8926. auto o = flatbuffers::Offset<MatrixDiagOptions>(end);
  8927. return o;
  8928. }
  8929. };
  8930. inline flatbuffers::Offset<MatrixDiagOptions> CreateMatrixDiagOptions(
  8931. flatbuffers::FlatBufferBuilder &_fbb) {
  8932. MatrixDiagOptionsBuilder builder_(_fbb);
  8933. return builder_.Finish();
  8934. }
  8935. flatbuffers::Offset<MatrixDiagOptions> CreateMatrixDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8936. struct QuantizeOptionsT : public flatbuffers::NativeTable {
  8937. typedef QuantizeOptions TableType;
  8938. QuantizeOptionsT() {
  8939. }
  8940. };
  8941. struct QuantizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8942. typedef QuantizeOptionsT NativeTableType;
  8943. typedef QuantizeOptionsBuilder Builder;
  8944. bool Verify(flatbuffers::Verifier &verifier) const {
  8945. return VerifyTableStart(verifier) &&
  8946. verifier.EndTable();
  8947. }
  8948. QuantizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8949. void UnPackTo(QuantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8950. static flatbuffers::Offset<QuantizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8951. };
  8952. struct QuantizeOptionsBuilder {
  8953. typedef QuantizeOptions Table;
  8954. flatbuffers::FlatBufferBuilder &fbb_;
  8955. flatbuffers::uoffset_t start_;
  8956. explicit QuantizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8957. : fbb_(_fbb) {
  8958. start_ = fbb_.StartTable();
  8959. }
  8960. QuantizeOptionsBuilder &operator=(const QuantizeOptionsBuilder &);
  8961. flatbuffers::Offset<QuantizeOptions> Finish() {
  8962. const auto end = fbb_.EndTable(start_);
  8963. auto o = flatbuffers::Offset<QuantizeOptions>(end);
  8964. return o;
  8965. }
  8966. };
  8967. inline flatbuffers::Offset<QuantizeOptions> CreateQuantizeOptions(
  8968. flatbuffers::FlatBufferBuilder &_fbb) {
  8969. QuantizeOptionsBuilder builder_(_fbb);
  8970. return builder_.Finish();
  8971. }
  8972. flatbuffers::Offset<QuantizeOptions> CreateQuantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8973. struct MatrixSetDiagOptionsT : public flatbuffers::NativeTable {
  8974. typedef MatrixSetDiagOptions TableType;
  8975. MatrixSetDiagOptionsT() {
  8976. }
  8977. };
  8978. struct MatrixSetDiagOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  8979. typedef MatrixSetDiagOptionsT NativeTableType;
  8980. typedef MatrixSetDiagOptionsBuilder Builder;
  8981. bool Verify(flatbuffers::Verifier &verifier) const {
  8982. return VerifyTableStart(verifier) &&
  8983. verifier.EndTable();
  8984. }
  8985. MatrixSetDiagOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8986. void UnPackTo(MatrixSetDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  8987. static flatbuffers::Offset<MatrixSetDiagOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  8988. };
  8989. struct MatrixSetDiagOptionsBuilder {
  8990. typedef MatrixSetDiagOptions Table;
  8991. flatbuffers::FlatBufferBuilder &fbb_;
  8992. flatbuffers::uoffset_t start_;
  8993. explicit MatrixSetDiagOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  8994. : fbb_(_fbb) {
  8995. start_ = fbb_.StartTable();
  8996. }
  8997. MatrixSetDiagOptionsBuilder &operator=(const MatrixSetDiagOptionsBuilder &);
  8998. flatbuffers::Offset<MatrixSetDiagOptions> Finish() {
  8999. const auto end = fbb_.EndTable(start_);
  9000. auto o = flatbuffers::Offset<MatrixSetDiagOptions>(end);
  9001. return o;
  9002. }
  9003. };
  9004. inline flatbuffers::Offset<MatrixSetDiagOptions> CreateMatrixSetDiagOptions(
  9005. flatbuffers::FlatBufferBuilder &_fbb) {
  9006. MatrixSetDiagOptionsBuilder builder_(_fbb);
  9007. return builder_.Finish();
  9008. }
  9009. flatbuffers::Offset<MatrixSetDiagOptions> CreateMatrixSetDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9010. struct IfOptionsT : public flatbuffers::NativeTable {
  9011. typedef IfOptions TableType;
  9012. int32_t then_subgraph_index;
  9013. int32_t else_subgraph_index;
  9014. IfOptionsT()
  9015. : then_subgraph_index(0),
  9016. else_subgraph_index(0) {
  9017. }
  9018. };
  9019. struct IfOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9020. typedef IfOptionsT NativeTableType;
  9021. typedef IfOptionsBuilder Builder;
  9022. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9023. VT_THEN_SUBGRAPH_INDEX = 4,
  9024. VT_ELSE_SUBGRAPH_INDEX = 6
  9025. };
  9026. int32_t then_subgraph_index() const {
  9027. return GetField<int32_t>(VT_THEN_SUBGRAPH_INDEX, 0);
  9028. }
  9029. int32_t else_subgraph_index() const {
  9030. return GetField<int32_t>(VT_ELSE_SUBGRAPH_INDEX, 0);
  9031. }
  9032. bool Verify(flatbuffers::Verifier &verifier) const {
  9033. return VerifyTableStart(verifier) &&
  9034. VerifyField<int32_t>(verifier, VT_THEN_SUBGRAPH_INDEX) &&
  9035. VerifyField<int32_t>(verifier, VT_ELSE_SUBGRAPH_INDEX) &&
  9036. verifier.EndTable();
  9037. }
  9038. IfOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9039. void UnPackTo(IfOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9040. static flatbuffers::Offset<IfOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9041. };
  9042. struct IfOptionsBuilder {
  9043. typedef IfOptions Table;
  9044. flatbuffers::FlatBufferBuilder &fbb_;
  9045. flatbuffers::uoffset_t start_;
  9046. void add_then_subgraph_index(int32_t then_subgraph_index) {
  9047. fbb_.AddElement<int32_t>(IfOptions::VT_THEN_SUBGRAPH_INDEX, then_subgraph_index, 0);
  9048. }
  9049. void add_else_subgraph_index(int32_t else_subgraph_index) {
  9050. fbb_.AddElement<int32_t>(IfOptions::VT_ELSE_SUBGRAPH_INDEX, else_subgraph_index, 0);
  9051. }
  9052. explicit IfOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9053. : fbb_(_fbb) {
  9054. start_ = fbb_.StartTable();
  9055. }
  9056. IfOptionsBuilder &operator=(const IfOptionsBuilder &);
  9057. flatbuffers::Offset<IfOptions> Finish() {
  9058. const auto end = fbb_.EndTable(start_);
  9059. auto o = flatbuffers::Offset<IfOptions>(end);
  9060. return o;
  9061. }
  9062. };
  9063. inline flatbuffers::Offset<IfOptions> CreateIfOptions(
  9064. flatbuffers::FlatBufferBuilder &_fbb,
  9065. int32_t then_subgraph_index = 0,
  9066. int32_t else_subgraph_index = 0) {
  9067. IfOptionsBuilder builder_(_fbb);
  9068. builder_.add_else_subgraph_index(else_subgraph_index);
  9069. builder_.add_then_subgraph_index(then_subgraph_index);
  9070. return builder_.Finish();
  9071. }
  9072. flatbuffers::Offset<IfOptions> CreateIfOptions(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9073. struct CallOnceOptionsT : public flatbuffers::NativeTable {
  9074. typedef CallOnceOptions TableType;
  9075. int32_t init_subgraph_index;
  9076. CallOnceOptionsT()
  9077. : init_subgraph_index(0) {
  9078. }
  9079. };
  9080. struct CallOnceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9081. typedef CallOnceOptionsT NativeTableType;
  9082. typedef CallOnceOptionsBuilder Builder;
  9083. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9084. VT_INIT_SUBGRAPH_INDEX = 4
  9085. };
  9086. int32_t init_subgraph_index() const {
  9087. return GetField<int32_t>(VT_INIT_SUBGRAPH_INDEX, 0);
  9088. }
  9089. bool Verify(flatbuffers::Verifier &verifier) const {
  9090. return VerifyTableStart(verifier) &&
  9091. VerifyField<int32_t>(verifier, VT_INIT_SUBGRAPH_INDEX) &&
  9092. verifier.EndTable();
  9093. }
  9094. CallOnceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9095. void UnPackTo(CallOnceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9096. static flatbuffers::Offset<CallOnceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9097. };
  9098. struct CallOnceOptionsBuilder {
  9099. typedef CallOnceOptions Table;
  9100. flatbuffers::FlatBufferBuilder &fbb_;
  9101. flatbuffers::uoffset_t start_;
  9102. void add_init_subgraph_index(int32_t init_subgraph_index) {
  9103. fbb_.AddElement<int32_t>(CallOnceOptions::VT_INIT_SUBGRAPH_INDEX, init_subgraph_index, 0);
  9104. }
  9105. explicit CallOnceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9106. : fbb_(_fbb) {
  9107. start_ = fbb_.StartTable();
  9108. }
  9109. CallOnceOptionsBuilder &operator=(const CallOnceOptionsBuilder &);
  9110. flatbuffers::Offset<CallOnceOptions> Finish() {
  9111. const auto end = fbb_.EndTable(start_);
  9112. auto o = flatbuffers::Offset<CallOnceOptions>(end);
  9113. return o;
  9114. }
  9115. };
  9116. inline flatbuffers::Offset<CallOnceOptions> CreateCallOnceOptions(
  9117. flatbuffers::FlatBufferBuilder &_fbb,
  9118. int32_t init_subgraph_index = 0) {
  9119. CallOnceOptionsBuilder builder_(_fbb);
  9120. builder_.add_init_subgraph_index(init_subgraph_index);
  9121. return builder_.Finish();
  9122. }
  9123. flatbuffers::Offset<CallOnceOptions> CreateCallOnceOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9124. struct WhileOptionsT : public flatbuffers::NativeTable {
  9125. typedef WhileOptions TableType;
  9126. int32_t cond_subgraph_index;
  9127. int32_t body_subgraph_index;
  9128. WhileOptionsT()
  9129. : cond_subgraph_index(0),
  9130. body_subgraph_index(0) {
  9131. }
  9132. };
  9133. struct WhileOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9134. typedef WhileOptionsT NativeTableType;
  9135. typedef WhileOptionsBuilder Builder;
  9136. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9137. VT_COND_SUBGRAPH_INDEX = 4,
  9138. VT_BODY_SUBGRAPH_INDEX = 6
  9139. };
  9140. int32_t cond_subgraph_index() const {
  9141. return GetField<int32_t>(VT_COND_SUBGRAPH_INDEX, 0);
  9142. }
  9143. int32_t body_subgraph_index() const {
  9144. return GetField<int32_t>(VT_BODY_SUBGRAPH_INDEX, 0);
  9145. }
  9146. bool Verify(flatbuffers::Verifier &verifier) const {
  9147. return VerifyTableStart(verifier) &&
  9148. VerifyField<int32_t>(verifier, VT_COND_SUBGRAPH_INDEX) &&
  9149. VerifyField<int32_t>(verifier, VT_BODY_SUBGRAPH_INDEX) &&
  9150. verifier.EndTable();
  9151. }
  9152. WhileOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9153. void UnPackTo(WhileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9154. static flatbuffers::Offset<WhileOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9155. };
  9156. struct WhileOptionsBuilder {
  9157. typedef WhileOptions Table;
  9158. flatbuffers::FlatBufferBuilder &fbb_;
  9159. flatbuffers::uoffset_t start_;
  9160. void add_cond_subgraph_index(int32_t cond_subgraph_index) {
  9161. fbb_.AddElement<int32_t>(WhileOptions::VT_COND_SUBGRAPH_INDEX, cond_subgraph_index, 0);
  9162. }
  9163. void add_body_subgraph_index(int32_t body_subgraph_index) {
  9164. fbb_.AddElement<int32_t>(WhileOptions::VT_BODY_SUBGRAPH_INDEX, body_subgraph_index, 0);
  9165. }
  9166. explicit WhileOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9167. : fbb_(_fbb) {
  9168. start_ = fbb_.StartTable();
  9169. }
  9170. WhileOptionsBuilder &operator=(const WhileOptionsBuilder &);
  9171. flatbuffers::Offset<WhileOptions> Finish() {
  9172. const auto end = fbb_.EndTable(start_);
  9173. auto o = flatbuffers::Offset<WhileOptions>(end);
  9174. return o;
  9175. }
  9176. };
  9177. inline flatbuffers::Offset<WhileOptions> CreateWhileOptions(
  9178. flatbuffers::FlatBufferBuilder &_fbb,
  9179. int32_t cond_subgraph_index = 0,
  9180. int32_t body_subgraph_index = 0) {
  9181. WhileOptionsBuilder builder_(_fbb);
  9182. builder_.add_body_subgraph_index(body_subgraph_index);
  9183. builder_.add_cond_subgraph_index(cond_subgraph_index);
  9184. return builder_.Finish();
  9185. }
  9186. flatbuffers::Offset<WhileOptions> CreateWhileOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9187. struct NonMaxSuppressionV4OptionsT : public flatbuffers::NativeTable {
  9188. typedef NonMaxSuppressionV4Options TableType;
  9189. NonMaxSuppressionV4OptionsT() {
  9190. }
  9191. };
  9192. struct NonMaxSuppressionV4Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9193. typedef NonMaxSuppressionV4OptionsT NativeTableType;
  9194. typedef NonMaxSuppressionV4OptionsBuilder Builder;
  9195. bool Verify(flatbuffers::Verifier &verifier) const {
  9196. return VerifyTableStart(verifier) &&
  9197. verifier.EndTable();
  9198. }
  9199. NonMaxSuppressionV4OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9200. void UnPackTo(NonMaxSuppressionV4OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9201. static flatbuffers::Offset<NonMaxSuppressionV4Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9202. };
  9203. struct NonMaxSuppressionV4OptionsBuilder {
  9204. typedef NonMaxSuppressionV4Options Table;
  9205. flatbuffers::FlatBufferBuilder &fbb_;
  9206. flatbuffers::uoffset_t start_;
  9207. explicit NonMaxSuppressionV4OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9208. : fbb_(_fbb) {
  9209. start_ = fbb_.StartTable();
  9210. }
  9211. NonMaxSuppressionV4OptionsBuilder &operator=(const NonMaxSuppressionV4OptionsBuilder &);
  9212. flatbuffers::Offset<NonMaxSuppressionV4Options> Finish() {
  9213. const auto end = fbb_.EndTable(start_);
  9214. auto o = flatbuffers::Offset<NonMaxSuppressionV4Options>(end);
  9215. return o;
  9216. }
  9217. };
  9218. inline flatbuffers::Offset<NonMaxSuppressionV4Options> CreateNonMaxSuppressionV4Options(
  9219. flatbuffers::FlatBufferBuilder &_fbb) {
  9220. NonMaxSuppressionV4OptionsBuilder builder_(_fbb);
  9221. return builder_.Finish();
  9222. }
  9223. flatbuffers::Offset<NonMaxSuppressionV4Options> CreateNonMaxSuppressionV4Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9224. struct NonMaxSuppressionV5OptionsT : public flatbuffers::NativeTable {
  9225. typedef NonMaxSuppressionV5Options TableType;
  9226. NonMaxSuppressionV5OptionsT() {
  9227. }
  9228. };
  9229. struct NonMaxSuppressionV5Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9230. typedef NonMaxSuppressionV5OptionsT NativeTableType;
  9231. typedef NonMaxSuppressionV5OptionsBuilder Builder;
  9232. bool Verify(flatbuffers::Verifier &verifier) const {
  9233. return VerifyTableStart(verifier) &&
  9234. verifier.EndTable();
  9235. }
  9236. NonMaxSuppressionV5OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9237. void UnPackTo(NonMaxSuppressionV5OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9238. static flatbuffers::Offset<NonMaxSuppressionV5Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9239. };
  9240. struct NonMaxSuppressionV5OptionsBuilder {
  9241. typedef NonMaxSuppressionV5Options Table;
  9242. flatbuffers::FlatBufferBuilder &fbb_;
  9243. flatbuffers::uoffset_t start_;
  9244. explicit NonMaxSuppressionV5OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9245. : fbb_(_fbb) {
  9246. start_ = fbb_.StartTable();
  9247. }
  9248. NonMaxSuppressionV5OptionsBuilder &operator=(const NonMaxSuppressionV5OptionsBuilder &);
  9249. flatbuffers::Offset<NonMaxSuppressionV5Options> Finish() {
  9250. const auto end = fbb_.EndTable(start_);
  9251. auto o = flatbuffers::Offset<NonMaxSuppressionV5Options>(end);
  9252. return o;
  9253. }
  9254. };
  9255. inline flatbuffers::Offset<NonMaxSuppressionV5Options> CreateNonMaxSuppressionV5Options(
  9256. flatbuffers::FlatBufferBuilder &_fbb) {
  9257. NonMaxSuppressionV5OptionsBuilder builder_(_fbb);
  9258. return builder_.Finish();
  9259. }
  9260. flatbuffers::Offset<NonMaxSuppressionV5Options> CreateNonMaxSuppressionV5Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9261. struct ScatterNdOptionsT : public flatbuffers::NativeTable {
  9262. typedef ScatterNdOptions TableType;
  9263. ScatterNdOptionsT() {
  9264. }
  9265. };
  9266. struct ScatterNdOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9267. typedef ScatterNdOptionsT NativeTableType;
  9268. typedef ScatterNdOptionsBuilder Builder;
  9269. bool Verify(flatbuffers::Verifier &verifier) const {
  9270. return VerifyTableStart(verifier) &&
  9271. verifier.EndTable();
  9272. }
  9273. ScatterNdOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9274. void UnPackTo(ScatterNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9275. static flatbuffers::Offset<ScatterNdOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9276. };
  9277. struct ScatterNdOptionsBuilder {
  9278. typedef ScatterNdOptions Table;
  9279. flatbuffers::FlatBufferBuilder &fbb_;
  9280. flatbuffers::uoffset_t start_;
  9281. explicit ScatterNdOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9282. : fbb_(_fbb) {
  9283. start_ = fbb_.StartTable();
  9284. }
  9285. ScatterNdOptionsBuilder &operator=(const ScatterNdOptionsBuilder &);
  9286. flatbuffers::Offset<ScatterNdOptions> Finish() {
  9287. const auto end = fbb_.EndTable(start_);
  9288. auto o = flatbuffers::Offset<ScatterNdOptions>(end);
  9289. return o;
  9290. }
  9291. };
  9292. inline flatbuffers::Offset<ScatterNdOptions> CreateScatterNdOptions(
  9293. flatbuffers::FlatBufferBuilder &_fbb) {
  9294. ScatterNdOptionsBuilder builder_(_fbb);
  9295. return builder_.Finish();
  9296. }
  9297. flatbuffers::Offset<ScatterNdOptions> CreateScatterNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9298. struct SelectV2OptionsT : public flatbuffers::NativeTable {
  9299. typedef SelectV2Options TableType;
  9300. SelectV2OptionsT() {
  9301. }
  9302. };
  9303. struct SelectV2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9304. typedef SelectV2OptionsT NativeTableType;
  9305. typedef SelectV2OptionsBuilder Builder;
  9306. bool Verify(flatbuffers::Verifier &verifier) const {
  9307. return VerifyTableStart(verifier) &&
  9308. verifier.EndTable();
  9309. }
  9310. SelectV2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9311. void UnPackTo(SelectV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9312. static flatbuffers::Offset<SelectV2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9313. };
  9314. struct SelectV2OptionsBuilder {
  9315. typedef SelectV2Options Table;
  9316. flatbuffers::FlatBufferBuilder &fbb_;
  9317. flatbuffers::uoffset_t start_;
  9318. explicit SelectV2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9319. : fbb_(_fbb) {
  9320. start_ = fbb_.StartTable();
  9321. }
  9322. SelectV2OptionsBuilder &operator=(const SelectV2OptionsBuilder &);
  9323. flatbuffers::Offset<SelectV2Options> Finish() {
  9324. const auto end = fbb_.EndTable(start_);
  9325. auto o = flatbuffers::Offset<SelectV2Options>(end);
  9326. return o;
  9327. }
  9328. };
  9329. inline flatbuffers::Offset<SelectV2Options> CreateSelectV2Options(
  9330. flatbuffers::FlatBufferBuilder &_fbb) {
  9331. SelectV2OptionsBuilder builder_(_fbb);
  9332. return builder_.Finish();
  9333. }
  9334. flatbuffers::Offset<SelectV2Options> CreateSelectV2Options(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9335. struct DensifyOptionsT : public flatbuffers::NativeTable {
  9336. typedef DensifyOptions TableType;
  9337. DensifyOptionsT() {
  9338. }
  9339. };
  9340. struct DensifyOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9341. typedef DensifyOptionsT NativeTableType;
  9342. typedef DensifyOptionsBuilder Builder;
  9343. bool Verify(flatbuffers::Verifier &verifier) const {
  9344. return VerifyTableStart(verifier) &&
  9345. verifier.EndTable();
  9346. }
  9347. DensifyOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9348. void UnPackTo(DensifyOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9349. static flatbuffers::Offset<DensifyOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9350. };
  9351. struct DensifyOptionsBuilder {
  9352. typedef DensifyOptions Table;
  9353. flatbuffers::FlatBufferBuilder &fbb_;
  9354. flatbuffers::uoffset_t start_;
  9355. explicit DensifyOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9356. : fbb_(_fbb) {
  9357. start_ = fbb_.StartTable();
  9358. }
  9359. DensifyOptionsBuilder &operator=(const DensifyOptionsBuilder &);
  9360. flatbuffers::Offset<DensifyOptions> Finish() {
  9361. const auto end = fbb_.EndTable(start_);
  9362. auto o = flatbuffers::Offset<DensifyOptions>(end);
  9363. return o;
  9364. }
  9365. };
  9366. inline flatbuffers::Offset<DensifyOptions> CreateDensifyOptions(
  9367. flatbuffers::FlatBufferBuilder &_fbb) {
  9368. DensifyOptionsBuilder builder_(_fbb);
  9369. return builder_.Finish();
  9370. }
  9371. flatbuffers::Offset<DensifyOptions> CreateDensifyOptions(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9372. struct SegmentSumOptionsT : public flatbuffers::NativeTable {
  9373. typedef SegmentSumOptions TableType;
  9374. SegmentSumOptionsT() {
  9375. }
  9376. };
  9377. struct SegmentSumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9378. typedef SegmentSumOptionsT NativeTableType;
  9379. typedef SegmentSumOptionsBuilder Builder;
  9380. bool Verify(flatbuffers::Verifier &verifier) const {
  9381. return VerifyTableStart(verifier) &&
  9382. verifier.EndTable();
  9383. }
  9384. SegmentSumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9385. void UnPackTo(SegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9386. static flatbuffers::Offset<SegmentSumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9387. };
  9388. struct SegmentSumOptionsBuilder {
  9389. typedef SegmentSumOptions Table;
  9390. flatbuffers::FlatBufferBuilder &fbb_;
  9391. flatbuffers::uoffset_t start_;
  9392. explicit SegmentSumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9393. : fbb_(_fbb) {
  9394. start_ = fbb_.StartTable();
  9395. }
  9396. SegmentSumOptionsBuilder &operator=(const SegmentSumOptionsBuilder &);
  9397. flatbuffers::Offset<SegmentSumOptions> Finish() {
  9398. const auto end = fbb_.EndTable(start_);
  9399. auto o = flatbuffers::Offset<SegmentSumOptions>(end);
  9400. return o;
  9401. }
  9402. };
  9403. inline flatbuffers::Offset<SegmentSumOptions> CreateSegmentSumOptions(
  9404. flatbuffers::FlatBufferBuilder &_fbb) {
  9405. SegmentSumOptionsBuilder builder_(_fbb);
  9406. return builder_.Finish();
  9407. }
  9408. flatbuffers::Offset<SegmentSumOptions> CreateSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9409. struct BatchMatMulOptionsT : public flatbuffers::NativeTable {
  9410. typedef BatchMatMulOptions TableType;
  9411. bool adj_x;
  9412. bool adj_y;
  9413. bool asymmetric_quantize_inputs;
  9414. BatchMatMulOptionsT()
  9415. : adj_x(false),
  9416. adj_y(false),
  9417. asymmetric_quantize_inputs(false) {
  9418. }
  9419. };
  9420. struct BatchMatMulOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9421. typedef BatchMatMulOptionsT NativeTableType;
  9422. typedef BatchMatMulOptionsBuilder Builder;
  9423. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9424. VT_ADJ_X = 4,
  9425. VT_ADJ_Y = 6,
  9426. VT_ASYMMETRIC_QUANTIZE_INPUTS = 8
  9427. };
  9428. bool adj_x() const {
  9429. return GetField<uint8_t>(VT_ADJ_X, 0) != 0;
  9430. }
  9431. bool adj_y() const {
  9432. return GetField<uint8_t>(VT_ADJ_Y, 0) != 0;
  9433. }
  9434. bool asymmetric_quantize_inputs() const {
  9435. return GetField<uint8_t>(VT_ASYMMETRIC_QUANTIZE_INPUTS, 0) != 0;
  9436. }
  9437. bool Verify(flatbuffers::Verifier &verifier) const {
  9438. return VerifyTableStart(verifier) &&
  9439. VerifyField<uint8_t>(verifier, VT_ADJ_X) &&
  9440. VerifyField<uint8_t>(verifier, VT_ADJ_Y) &&
  9441. VerifyField<uint8_t>(verifier, VT_ASYMMETRIC_QUANTIZE_INPUTS) &&
  9442. verifier.EndTable();
  9443. }
  9444. BatchMatMulOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9445. void UnPackTo(BatchMatMulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9446. static flatbuffers::Offset<BatchMatMulOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9447. };
  9448. struct BatchMatMulOptionsBuilder {
  9449. typedef BatchMatMulOptions Table;
  9450. flatbuffers::FlatBufferBuilder &fbb_;
  9451. flatbuffers::uoffset_t start_;
  9452. void add_adj_x(bool adj_x) {
  9453. fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ADJ_X, static_cast<uint8_t>(adj_x), 0);
  9454. }
  9455. void add_adj_y(bool adj_y) {
  9456. fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ADJ_Y, static_cast<uint8_t>(adj_y), 0);
  9457. }
  9458. void add_asymmetric_quantize_inputs(bool asymmetric_quantize_inputs) {
  9459. fbb_.AddElement<uint8_t>(BatchMatMulOptions::VT_ASYMMETRIC_QUANTIZE_INPUTS, static_cast<uint8_t>(asymmetric_quantize_inputs), 0);
  9460. }
  9461. explicit BatchMatMulOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9462. : fbb_(_fbb) {
  9463. start_ = fbb_.StartTable();
  9464. }
  9465. BatchMatMulOptionsBuilder &operator=(const BatchMatMulOptionsBuilder &);
  9466. flatbuffers::Offset<BatchMatMulOptions> Finish() {
  9467. const auto end = fbb_.EndTable(start_);
  9468. auto o = flatbuffers::Offset<BatchMatMulOptions>(end);
  9469. return o;
  9470. }
  9471. };
  9472. inline flatbuffers::Offset<BatchMatMulOptions> CreateBatchMatMulOptions(
  9473. flatbuffers::FlatBufferBuilder &_fbb,
  9474. bool adj_x = false,
  9475. bool adj_y = false,
  9476. bool asymmetric_quantize_inputs = false) {
  9477. BatchMatMulOptionsBuilder builder_(_fbb);
  9478. builder_.add_asymmetric_quantize_inputs(asymmetric_quantize_inputs);
  9479. builder_.add_adj_y(adj_y);
  9480. builder_.add_adj_x(adj_x);
  9481. return builder_.Finish();
  9482. }
  9483. flatbuffers::Offset<BatchMatMulOptions> CreateBatchMatMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9484. struct CumsumOptionsT : public flatbuffers::NativeTable {
  9485. typedef CumsumOptions TableType;
  9486. bool exclusive;
  9487. bool reverse;
  9488. CumsumOptionsT()
  9489. : exclusive(false),
  9490. reverse(false) {
  9491. }
  9492. };
  9493. struct CumsumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9494. typedef CumsumOptionsT NativeTableType;
  9495. typedef CumsumOptionsBuilder Builder;
  9496. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9497. VT_EXCLUSIVE = 4,
  9498. VT_REVERSE = 6
  9499. };
  9500. bool exclusive() const {
  9501. return GetField<uint8_t>(VT_EXCLUSIVE, 0) != 0;
  9502. }
  9503. bool reverse() const {
  9504. return GetField<uint8_t>(VT_REVERSE, 0) != 0;
  9505. }
  9506. bool Verify(flatbuffers::Verifier &verifier) const {
  9507. return VerifyTableStart(verifier) &&
  9508. VerifyField<uint8_t>(verifier, VT_EXCLUSIVE) &&
  9509. VerifyField<uint8_t>(verifier, VT_REVERSE) &&
  9510. verifier.EndTable();
  9511. }
  9512. CumsumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9513. void UnPackTo(CumsumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9514. static flatbuffers::Offset<CumsumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9515. };
  9516. struct CumsumOptionsBuilder {
  9517. typedef CumsumOptions Table;
  9518. flatbuffers::FlatBufferBuilder &fbb_;
  9519. flatbuffers::uoffset_t start_;
  9520. void add_exclusive(bool exclusive) {
  9521. fbb_.AddElement<uint8_t>(CumsumOptions::VT_EXCLUSIVE, static_cast<uint8_t>(exclusive), 0);
  9522. }
  9523. void add_reverse(bool reverse) {
  9524. fbb_.AddElement<uint8_t>(CumsumOptions::VT_REVERSE, static_cast<uint8_t>(reverse), 0);
  9525. }
  9526. explicit CumsumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9527. : fbb_(_fbb) {
  9528. start_ = fbb_.StartTable();
  9529. }
  9530. CumsumOptionsBuilder &operator=(const CumsumOptionsBuilder &);
  9531. flatbuffers::Offset<CumsumOptions> Finish() {
  9532. const auto end = fbb_.EndTable(start_);
  9533. auto o = flatbuffers::Offset<CumsumOptions>(end);
  9534. return o;
  9535. }
  9536. };
  9537. inline flatbuffers::Offset<CumsumOptions> CreateCumsumOptions(
  9538. flatbuffers::FlatBufferBuilder &_fbb,
  9539. bool exclusive = false,
  9540. bool reverse = false) {
  9541. CumsumOptionsBuilder builder_(_fbb);
  9542. builder_.add_reverse(reverse);
  9543. builder_.add_exclusive(exclusive);
  9544. return builder_.Finish();
  9545. }
  9546. flatbuffers::Offset<CumsumOptions> CreateCumsumOptions(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9547. struct BroadcastToOptionsT : public flatbuffers::NativeTable {
  9548. typedef BroadcastToOptions TableType;
  9549. BroadcastToOptionsT() {
  9550. }
  9551. };
  9552. struct BroadcastToOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9553. typedef BroadcastToOptionsT NativeTableType;
  9554. typedef BroadcastToOptionsBuilder Builder;
  9555. bool Verify(flatbuffers::Verifier &verifier) const {
  9556. return VerifyTableStart(verifier) &&
  9557. verifier.EndTable();
  9558. }
  9559. BroadcastToOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9560. void UnPackTo(BroadcastToOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9561. static flatbuffers::Offset<BroadcastToOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9562. };
  9563. struct BroadcastToOptionsBuilder {
  9564. typedef BroadcastToOptions Table;
  9565. flatbuffers::FlatBufferBuilder &fbb_;
  9566. flatbuffers::uoffset_t start_;
  9567. explicit BroadcastToOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9568. : fbb_(_fbb) {
  9569. start_ = fbb_.StartTable();
  9570. }
  9571. BroadcastToOptionsBuilder &operator=(const BroadcastToOptionsBuilder &);
  9572. flatbuffers::Offset<BroadcastToOptions> Finish() {
  9573. const auto end = fbb_.EndTable(start_);
  9574. auto o = flatbuffers::Offset<BroadcastToOptions>(end);
  9575. return o;
  9576. }
  9577. };
  9578. inline flatbuffers::Offset<BroadcastToOptions> CreateBroadcastToOptions(
  9579. flatbuffers::FlatBufferBuilder &_fbb) {
  9580. BroadcastToOptionsBuilder builder_(_fbb);
  9581. return builder_.Finish();
  9582. }
  9583. flatbuffers::Offset<BroadcastToOptions> CreateBroadcastToOptions(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9584. struct Rfft2dOptionsT : public flatbuffers::NativeTable {
  9585. typedef Rfft2dOptions TableType;
  9586. Rfft2dOptionsT() {
  9587. }
  9588. };
  9589. struct Rfft2dOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9590. typedef Rfft2dOptionsT NativeTableType;
  9591. typedef Rfft2dOptionsBuilder Builder;
  9592. bool Verify(flatbuffers::Verifier &verifier) const {
  9593. return VerifyTableStart(verifier) &&
  9594. verifier.EndTable();
  9595. }
  9596. Rfft2dOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9597. void UnPackTo(Rfft2dOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9598. static flatbuffers::Offset<Rfft2dOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9599. };
  9600. struct Rfft2dOptionsBuilder {
  9601. typedef Rfft2dOptions Table;
  9602. flatbuffers::FlatBufferBuilder &fbb_;
  9603. flatbuffers::uoffset_t start_;
  9604. explicit Rfft2dOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9605. : fbb_(_fbb) {
  9606. start_ = fbb_.StartTable();
  9607. }
  9608. Rfft2dOptionsBuilder &operator=(const Rfft2dOptionsBuilder &);
  9609. flatbuffers::Offset<Rfft2dOptions> Finish() {
  9610. const auto end = fbb_.EndTable(start_);
  9611. auto o = flatbuffers::Offset<Rfft2dOptions>(end);
  9612. return o;
  9613. }
  9614. };
  9615. inline flatbuffers::Offset<Rfft2dOptions> CreateRfft2dOptions(
  9616. flatbuffers::FlatBufferBuilder &_fbb) {
  9617. Rfft2dOptionsBuilder builder_(_fbb);
  9618. return builder_.Finish();
  9619. }
  9620. flatbuffers::Offset<Rfft2dOptions> CreateRfft2dOptions(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9621. struct HashtableOptionsT : public flatbuffers::NativeTable {
  9622. typedef HashtableOptions TableType;
  9623. int32_t table_id;
  9624. tflite::TensorType key_dtype;
  9625. tflite::TensorType value_dtype;
  9626. HashtableOptionsT()
  9627. : table_id(0),
  9628. key_dtype(tflite::TensorType_FLOAT32),
  9629. value_dtype(tflite::TensorType_FLOAT32) {
  9630. }
  9631. };
  9632. struct HashtableOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9633. typedef HashtableOptionsT NativeTableType;
  9634. typedef HashtableOptionsBuilder Builder;
  9635. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9636. VT_TABLE_ID = 4,
  9637. VT_KEY_DTYPE = 6,
  9638. VT_VALUE_DTYPE = 8
  9639. };
  9640. int32_t table_id() const {
  9641. return GetField<int32_t>(VT_TABLE_ID, 0);
  9642. }
  9643. tflite::TensorType key_dtype() const {
  9644. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_KEY_DTYPE, 0));
  9645. }
  9646. tflite::TensorType value_dtype() const {
  9647. return static_cast<tflite::TensorType>(GetField<int8_t>(VT_VALUE_DTYPE, 0));
  9648. }
  9649. bool Verify(flatbuffers::Verifier &verifier) const {
  9650. return VerifyTableStart(verifier) &&
  9651. VerifyField<int32_t>(verifier, VT_TABLE_ID) &&
  9652. VerifyField<int8_t>(verifier, VT_KEY_DTYPE) &&
  9653. VerifyField<int8_t>(verifier, VT_VALUE_DTYPE) &&
  9654. verifier.EndTable();
  9655. }
  9656. HashtableOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9657. void UnPackTo(HashtableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9658. static flatbuffers::Offset<HashtableOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9659. };
  9660. struct HashtableOptionsBuilder {
  9661. typedef HashtableOptions Table;
  9662. flatbuffers::FlatBufferBuilder &fbb_;
  9663. flatbuffers::uoffset_t start_;
  9664. void add_table_id(int32_t table_id) {
  9665. fbb_.AddElement<int32_t>(HashtableOptions::VT_TABLE_ID, table_id, 0);
  9666. }
  9667. void add_key_dtype(tflite::TensorType key_dtype) {
  9668. fbb_.AddElement<int8_t>(HashtableOptions::VT_KEY_DTYPE, static_cast<int8_t>(key_dtype), 0);
  9669. }
  9670. void add_value_dtype(tflite::TensorType value_dtype) {
  9671. fbb_.AddElement<int8_t>(HashtableOptions::VT_VALUE_DTYPE, static_cast<int8_t>(value_dtype), 0);
  9672. }
  9673. explicit HashtableOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9674. : fbb_(_fbb) {
  9675. start_ = fbb_.StartTable();
  9676. }
  9677. HashtableOptionsBuilder &operator=(const HashtableOptionsBuilder &);
  9678. flatbuffers::Offset<HashtableOptions> Finish() {
  9679. const auto end = fbb_.EndTable(start_);
  9680. auto o = flatbuffers::Offset<HashtableOptions>(end);
  9681. return o;
  9682. }
  9683. };
  9684. inline flatbuffers::Offset<HashtableOptions> CreateHashtableOptions(
  9685. flatbuffers::FlatBufferBuilder &_fbb,
  9686. int32_t table_id = 0,
  9687. tflite::TensorType key_dtype = tflite::TensorType_FLOAT32,
  9688. tflite::TensorType value_dtype = tflite::TensorType_FLOAT32) {
  9689. HashtableOptionsBuilder builder_(_fbb);
  9690. builder_.add_table_id(table_id);
  9691. builder_.add_value_dtype(value_dtype);
  9692. builder_.add_key_dtype(key_dtype);
  9693. return builder_.Finish();
  9694. }
  9695. flatbuffers::Offset<HashtableOptions> CreateHashtableOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9696. struct HashtableFindOptionsT : public flatbuffers::NativeTable {
  9697. typedef HashtableFindOptions TableType;
  9698. HashtableFindOptionsT() {
  9699. }
  9700. };
  9701. struct HashtableFindOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9702. typedef HashtableFindOptionsT NativeTableType;
  9703. typedef HashtableFindOptionsBuilder Builder;
  9704. bool Verify(flatbuffers::Verifier &verifier) const {
  9705. return VerifyTableStart(verifier) &&
  9706. verifier.EndTable();
  9707. }
  9708. HashtableFindOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9709. void UnPackTo(HashtableFindOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9710. static flatbuffers::Offset<HashtableFindOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9711. };
  9712. struct HashtableFindOptionsBuilder {
  9713. typedef HashtableFindOptions Table;
  9714. flatbuffers::FlatBufferBuilder &fbb_;
  9715. flatbuffers::uoffset_t start_;
  9716. explicit HashtableFindOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9717. : fbb_(_fbb) {
  9718. start_ = fbb_.StartTable();
  9719. }
  9720. HashtableFindOptionsBuilder &operator=(const HashtableFindOptionsBuilder &);
  9721. flatbuffers::Offset<HashtableFindOptions> Finish() {
  9722. const auto end = fbb_.EndTable(start_);
  9723. auto o = flatbuffers::Offset<HashtableFindOptions>(end);
  9724. return o;
  9725. }
  9726. };
  9727. inline flatbuffers::Offset<HashtableFindOptions> CreateHashtableFindOptions(
  9728. flatbuffers::FlatBufferBuilder &_fbb) {
  9729. HashtableFindOptionsBuilder builder_(_fbb);
  9730. return builder_.Finish();
  9731. }
  9732. flatbuffers::Offset<HashtableFindOptions> CreateHashtableFindOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9733. struct HashtableImportOptionsT : public flatbuffers::NativeTable {
  9734. typedef HashtableImportOptions TableType;
  9735. HashtableImportOptionsT() {
  9736. }
  9737. };
  9738. struct HashtableImportOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9739. typedef HashtableImportOptionsT NativeTableType;
  9740. typedef HashtableImportOptionsBuilder Builder;
  9741. bool Verify(flatbuffers::Verifier &verifier) const {
  9742. return VerifyTableStart(verifier) &&
  9743. verifier.EndTable();
  9744. }
  9745. HashtableImportOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9746. void UnPackTo(HashtableImportOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9747. static flatbuffers::Offset<HashtableImportOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9748. };
  9749. struct HashtableImportOptionsBuilder {
  9750. typedef HashtableImportOptions Table;
  9751. flatbuffers::FlatBufferBuilder &fbb_;
  9752. flatbuffers::uoffset_t start_;
  9753. explicit HashtableImportOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9754. : fbb_(_fbb) {
  9755. start_ = fbb_.StartTable();
  9756. }
  9757. HashtableImportOptionsBuilder &operator=(const HashtableImportOptionsBuilder &);
  9758. flatbuffers::Offset<HashtableImportOptions> Finish() {
  9759. const auto end = fbb_.EndTable(start_);
  9760. auto o = flatbuffers::Offset<HashtableImportOptions>(end);
  9761. return o;
  9762. }
  9763. };
  9764. inline flatbuffers::Offset<HashtableImportOptions> CreateHashtableImportOptions(
  9765. flatbuffers::FlatBufferBuilder &_fbb) {
  9766. HashtableImportOptionsBuilder builder_(_fbb);
  9767. return builder_.Finish();
  9768. }
  9769. flatbuffers::Offset<HashtableImportOptions> CreateHashtableImportOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9770. struct HashtableSizeOptionsT : public flatbuffers::NativeTable {
  9771. typedef HashtableSizeOptions TableType;
  9772. HashtableSizeOptionsT() {
  9773. }
  9774. };
  9775. struct HashtableSizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9776. typedef HashtableSizeOptionsT NativeTableType;
  9777. typedef HashtableSizeOptionsBuilder Builder;
  9778. bool Verify(flatbuffers::Verifier &verifier) const {
  9779. return VerifyTableStart(verifier) &&
  9780. verifier.EndTable();
  9781. }
  9782. HashtableSizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9783. void UnPackTo(HashtableSizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9784. static flatbuffers::Offset<HashtableSizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9785. };
  9786. struct HashtableSizeOptionsBuilder {
  9787. typedef HashtableSizeOptions Table;
  9788. flatbuffers::FlatBufferBuilder &fbb_;
  9789. flatbuffers::uoffset_t start_;
  9790. explicit HashtableSizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9791. : fbb_(_fbb) {
  9792. start_ = fbb_.StartTable();
  9793. }
  9794. HashtableSizeOptionsBuilder &operator=(const HashtableSizeOptionsBuilder &);
  9795. flatbuffers::Offset<HashtableSizeOptions> Finish() {
  9796. const auto end = fbb_.EndTable(start_);
  9797. auto o = flatbuffers::Offset<HashtableSizeOptions>(end);
  9798. return o;
  9799. }
  9800. };
  9801. inline flatbuffers::Offset<HashtableSizeOptions> CreateHashtableSizeOptions(
  9802. flatbuffers::FlatBufferBuilder &_fbb) {
  9803. HashtableSizeOptionsBuilder builder_(_fbb);
  9804. return builder_.Finish();
  9805. }
  9806. flatbuffers::Offset<HashtableSizeOptions> CreateHashtableSizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9807. struct VarHandleOptionsT : public flatbuffers::NativeTable {
  9808. typedef VarHandleOptions TableType;
  9809. std::string container;
  9810. std::string shared_name;
  9811. VarHandleOptionsT() {
  9812. }
  9813. };
  9814. struct VarHandleOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9815. typedef VarHandleOptionsT NativeTableType;
  9816. typedef VarHandleOptionsBuilder Builder;
  9817. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9818. VT_CONTAINER = 4,
  9819. VT_SHARED_NAME = 6
  9820. };
  9821. const flatbuffers::String *container() const {
  9822. return GetPointer<const flatbuffers::String *>(VT_CONTAINER);
  9823. }
  9824. const flatbuffers::String *shared_name() const {
  9825. return GetPointer<const flatbuffers::String *>(VT_SHARED_NAME);
  9826. }
  9827. bool Verify(flatbuffers::Verifier &verifier) const {
  9828. return VerifyTableStart(verifier) &&
  9829. VerifyOffset(verifier, VT_CONTAINER) &&
  9830. verifier.VerifyString(container()) &&
  9831. VerifyOffset(verifier, VT_SHARED_NAME) &&
  9832. verifier.VerifyString(shared_name()) &&
  9833. verifier.EndTable();
  9834. }
  9835. VarHandleOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9836. void UnPackTo(VarHandleOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9837. static flatbuffers::Offset<VarHandleOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9838. };
  9839. struct VarHandleOptionsBuilder {
  9840. typedef VarHandleOptions Table;
  9841. flatbuffers::FlatBufferBuilder &fbb_;
  9842. flatbuffers::uoffset_t start_;
  9843. void add_container(flatbuffers::Offset<flatbuffers::String> container) {
  9844. fbb_.AddOffset(VarHandleOptions::VT_CONTAINER, container);
  9845. }
  9846. void add_shared_name(flatbuffers::Offset<flatbuffers::String> shared_name) {
  9847. fbb_.AddOffset(VarHandleOptions::VT_SHARED_NAME, shared_name);
  9848. }
  9849. explicit VarHandleOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9850. : fbb_(_fbb) {
  9851. start_ = fbb_.StartTable();
  9852. }
  9853. VarHandleOptionsBuilder &operator=(const VarHandleOptionsBuilder &);
  9854. flatbuffers::Offset<VarHandleOptions> Finish() {
  9855. const auto end = fbb_.EndTable(start_);
  9856. auto o = flatbuffers::Offset<VarHandleOptions>(end);
  9857. return o;
  9858. }
  9859. };
  9860. inline flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptions(
  9861. flatbuffers::FlatBufferBuilder &_fbb,
  9862. flatbuffers::Offset<flatbuffers::String> container = 0,
  9863. flatbuffers::Offset<flatbuffers::String> shared_name = 0) {
  9864. VarHandleOptionsBuilder builder_(_fbb);
  9865. builder_.add_shared_name(shared_name);
  9866. builder_.add_container(container);
  9867. return builder_.Finish();
  9868. }
  9869. inline flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptionsDirect(
  9870. flatbuffers::FlatBufferBuilder &_fbb,
  9871. const char *container = nullptr,
  9872. const char *shared_name = nullptr) {
  9873. auto container__ = container ? _fbb.CreateString(container) : 0;
  9874. auto shared_name__ = shared_name ? _fbb.CreateString(shared_name) : 0;
  9875. return tflite::CreateVarHandleOptions(
  9876. _fbb,
  9877. container__,
  9878. shared_name__);
  9879. }
  9880. flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptions(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9881. struct ReadVariableOptionsT : public flatbuffers::NativeTable {
  9882. typedef ReadVariableOptions TableType;
  9883. ReadVariableOptionsT() {
  9884. }
  9885. };
  9886. struct ReadVariableOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9887. typedef ReadVariableOptionsT NativeTableType;
  9888. typedef ReadVariableOptionsBuilder Builder;
  9889. bool Verify(flatbuffers::Verifier &verifier) const {
  9890. return VerifyTableStart(verifier) &&
  9891. verifier.EndTable();
  9892. }
  9893. ReadVariableOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9894. void UnPackTo(ReadVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9895. static flatbuffers::Offset<ReadVariableOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9896. };
  9897. struct ReadVariableOptionsBuilder {
  9898. typedef ReadVariableOptions Table;
  9899. flatbuffers::FlatBufferBuilder &fbb_;
  9900. flatbuffers::uoffset_t start_;
  9901. explicit ReadVariableOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9902. : fbb_(_fbb) {
  9903. start_ = fbb_.StartTable();
  9904. }
  9905. ReadVariableOptionsBuilder &operator=(const ReadVariableOptionsBuilder &);
  9906. flatbuffers::Offset<ReadVariableOptions> Finish() {
  9907. const auto end = fbb_.EndTable(start_);
  9908. auto o = flatbuffers::Offset<ReadVariableOptions>(end);
  9909. return o;
  9910. }
  9911. };
  9912. inline flatbuffers::Offset<ReadVariableOptions> CreateReadVariableOptions(
  9913. flatbuffers::FlatBufferBuilder &_fbb) {
  9914. ReadVariableOptionsBuilder builder_(_fbb);
  9915. return builder_.Finish();
  9916. }
  9917. flatbuffers::Offset<ReadVariableOptions> CreateReadVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9918. struct AssignVariableOptionsT : public flatbuffers::NativeTable {
  9919. typedef AssignVariableOptions TableType;
  9920. AssignVariableOptionsT() {
  9921. }
  9922. };
  9923. struct AssignVariableOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9924. typedef AssignVariableOptionsT NativeTableType;
  9925. typedef AssignVariableOptionsBuilder Builder;
  9926. bool Verify(flatbuffers::Verifier &verifier) const {
  9927. return VerifyTableStart(verifier) &&
  9928. verifier.EndTable();
  9929. }
  9930. AssignVariableOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9931. void UnPackTo(AssignVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9932. static flatbuffers::Offset<AssignVariableOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9933. };
  9934. struct AssignVariableOptionsBuilder {
  9935. typedef AssignVariableOptions Table;
  9936. flatbuffers::FlatBufferBuilder &fbb_;
  9937. flatbuffers::uoffset_t start_;
  9938. explicit AssignVariableOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9939. : fbb_(_fbb) {
  9940. start_ = fbb_.StartTable();
  9941. }
  9942. AssignVariableOptionsBuilder &operator=(const AssignVariableOptionsBuilder &);
  9943. flatbuffers::Offset<AssignVariableOptions> Finish() {
  9944. const auto end = fbb_.EndTable(start_);
  9945. auto o = flatbuffers::Offset<AssignVariableOptions>(end);
  9946. return o;
  9947. }
  9948. };
  9949. inline flatbuffers::Offset<AssignVariableOptions> CreateAssignVariableOptions(
  9950. flatbuffers::FlatBufferBuilder &_fbb) {
  9951. AssignVariableOptionsBuilder builder_(_fbb);
  9952. return builder_.Finish();
  9953. }
  9954. flatbuffers::Offset<AssignVariableOptions> CreateAssignVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9955. struct RandomOptionsT : public flatbuffers::NativeTable {
  9956. typedef RandomOptions TableType;
  9957. int64_t seed;
  9958. int64_t seed2;
  9959. RandomOptionsT()
  9960. : seed(0),
  9961. seed2(0) {
  9962. }
  9963. };
  9964. struct RandomOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  9965. typedef RandomOptionsT NativeTableType;
  9966. typedef RandomOptionsBuilder Builder;
  9967. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  9968. VT_SEED = 4,
  9969. VT_SEED2 = 6
  9970. };
  9971. int64_t seed() const {
  9972. return GetField<int64_t>(VT_SEED, 0);
  9973. }
  9974. int64_t seed2() const {
  9975. return GetField<int64_t>(VT_SEED2, 0);
  9976. }
  9977. bool Verify(flatbuffers::Verifier &verifier) const {
  9978. return VerifyTableStart(verifier) &&
  9979. VerifyField<int64_t>(verifier, VT_SEED) &&
  9980. VerifyField<int64_t>(verifier, VT_SEED2) &&
  9981. verifier.EndTable();
  9982. }
  9983. RandomOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9984. void UnPackTo(RandomOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  9985. static flatbuffers::Offset<RandomOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  9986. };
  9987. struct RandomOptionsBuilder {
  9988. typedef RandomOptions Table;
  9989. flatbuffers::FlatBufferBuilder &fbb_;
  9990. flatbuffers::uoffset_t start_;
  9991. void add_seed(int64_t seed) {
  9992. fbb_.AddElement<int64_t>(RandomOptions::VT_SEED, seed, 0);
  9993. }
  9994. void add_seed2(int64_t seed2) {
  9995. fbb_.AddElement<int64_t>(RandomOptions::VT_SEED2, seed2, 0);
  9996. }
  9997. explicit RandomOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  9998. : fbb_(_fbb) {
  9999. start_ = fbb_.StartTable();
  10000. }
  10001. RandomOptionsBuilder &operator=(const RandomOptionsBuilder &);
  10002. flatbuffers::Offset<RandomOptions> Finish() {
  10003. const auto end = fbb_.EndTable(start_);
  10004. auto o = flatbuffers::Offset<RandomOptions>(end);
  10005. return o;
  10006. }
  10007. };
  10008. inline flatbuffers::Offset<RandomOptions> CreateRandomOptions(
  10009. flatbuffers::FlatBufferBuilder &_fbb,
  10010. int64_t seed = 0,
  10011. int64_t seed2 = 0) {
  10012. RandomOptionsBuilder builder_(_fbb);
  10013. builder_.add_seed2(seed2);
  10014. builder_.add_seed(seed);
  10015. return builder_.Finish();
  10016. }
  10017. flatbuffers::Offset<RandomOptions> CreateRandomOptions(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10018. struct BucketizeOptionsT : public flatbuffers::NativeTable {
  10019. typedef BucketizeOptions TableType;
  10020. std::vector<float> boundaries;
  10021. BucketizeOptionsT() {
  10022. }
  10023. };
  10024. struct BucketizeOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10025. typedef BucketizeOptionsT NativeTableType;
  10026. typedef BucketizeOptionsBuilder Builder;
  10027. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  10028. VT_BOUNDARIES = 4
  10029. };
  10030. const flatbuffers::Vector<float> *boundaries() const {
  10031. return GetPointer<const flatbuffers::Vector<float> *>(VT_BOUNDARIES);
  10032. }
  10033. bool Verify(flatbuffers::Verifier &verifier) const {
  10034. return VerifyTableStart(verifier) &&
  10035. VerifyOffset(verifier, VT_BOUNDARIES) &&
  10036. verifier.VerifyVector(boundaries()) &&
  10037. verifier.EndTable();
  10038. }
  10039. BucketizeOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10040. void UnPackTo(BucketizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10041. static flatbuffers::Offset<BucketizeOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10042. };
  10043. struct BucketizeOptionsBuilder {
  10044. typedef BucketizeOptions Table;
  10045. flatbuffers::FlatBufferBuilder &fbb_;
  10046. flatbuffers::uoffset_t start_;
  10047. void add_boundaries(flatbuffers::Offset<flatbuffers::Vector<float>> boundaries) {
  10048. fbb_.AddOffset(BucketizeOptions::VT_BOUNDARIES, boundaries);
  10049. }
  10050. explicit BucketizeOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10051. : fbb_(_fbb) {
  10052. start_ = fbb_.StartTable();
  10053. }
  10054. BucketizeOptionsBuilder &operator=(const BucketizeOptionsBuilder &);
  10055. flatbuffers::Offset<BucketizeOptions> Finish() {
  10056. const auto end = fbb_.EndTable(start_);
  10057. auto o = flatbuffers::Offset<BucketizeOptions>(end);
  10058. return o;
  10059. }
  10060. };
  10061. inline flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptions(
  10062. flatbuffers::FlatBufferBuilder &_fbb,
  10063. flatbuffers::Offset<flatbuffers::Vector<float>> boundaries = 0) {
  10064. BucketizeOptionsBuilder builder_(_fbb);
  10065. builder_.add_boundaries(boundaries);
  10066. return builder_.Finish();
  10067. }
  10068. inline flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptionsDirect(
  10069. flatbuffers::FlatBufferBuilder &_fbb,
  10070. const std::vector<float> *boundaries = nullptr) {
  10071. auto boundaries__ = boundaries ? _fbb.CreateVector<float>(*boundaries) : 0;
  10072. return tflite::CreateBucketizeOptions(
  10073. _fbb,
  10074. boundaries__);
  10075. }
  10076. flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10077. struct GeluOptionsT : public flatbuffers::NativeTable {
  10078. typedef GeluOptions TableType;
  10079. bool approximate;
  10080. GeluOptionsT()
  10081. : approximate(false) {
  10082. }
  10083. };
  10084. struct GeluOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10085. typedef GeluOptionsT NativeTableType;
  10086. typedef GeluOptionsBuilder Builder;
  10087. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  10088. VT_APPROXIMATE = 4
  10089. };
  10090. bool approximate() const {
  10091. return GetField<uint8_t>(VT_APPROXIMATE, 0) != 0;
  10092. }
  10093. bool Verify(flatbuffers::Verifier &verifier) const {
  10094. return VerifyTableStart(verifier) &&
  10095. VerifyField<uint8_t>(verifier, VT_APPROXIMATE) &&
  10096. verifier.EndTable();
  10097. }
  10098. GeluOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10099. void UnPackTo(GeluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10100. static flatbuffers::Offset<GeluOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10101. };
  10102. struct GeluOptionsBuilder {
  10103. typedef GeluOptions Table;
  10104. flatbuffers::FlatBufferBuilder &fbb_;
  10105. flatbuffers::uoffset_t start_;
  10106. void add_approximate(bool approximate) {
  10107. fbb_.AddElement<uint8_t>(GeluOptions::VT_APPROXIMATE, static_cast<uint8_t>(approximate), 0);
  10108. }
  10109. explicit GeluOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10110. : fbb_(_fbb) {
  10111. start_ = fbb_.StartTable();
  10112. }
  10113. GeluOptionsBuilder &operator=(const GeluOptionsBuilder &);
  10114. flatbuffers::Offset<GeluOptions> Finish() {
  10115. const auto end = fbb_.EndTable(start_);
  10116. auto o = flatbuffers::Offset<GeluOptions>(end);
  10117. return o;
  10118. }
  10119. };
  10120. inline flatbuffers::Offset<GeluOptions> CreateGeluOptions(
  10121. flatbuffers::FlatBufferBuilder &_fbb,
  10122. bool approximate = false) {
  10123. GeluOptionsBuilder builder_(_fbb);
  10124. builder_.add_approximate(approximate);
  10125. return builder_.Finish();
  10126. }
  10127. flatbuffers::Offset<GeluOptions> CreateGeluOptions(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10128. struct DynamicUpdateSliceOptionsT : public flatbuffers::NativeTable {
  10129. typedef DynamicUpdateSliceOptions TableType;
  10130. DynamicUpdateSliceOptionsT() {
  10131. }
  10132. };
  10133. struct DynamicUpdateSliceOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10134. typedef DynamicUpdateSliceOptionsT NativeTableType;
  10135. typedef DynamicUpdateSliceOptionsBuilder Builder;
  10136. bool Verify(flatbuffers::Verifier &verifier) const {
  10137. return VerifyTableStart(verifier) &&
  10138. verifier.EndTable();
  10139. }
  10140. DynamicUpdateSliceOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10141. void UnPackTo(DynamicUpdateSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10142. static flatbuffers::Offset<DynamicUpdateSliceOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10143. };
  10144. struct DynamicUpdateSliceOptionsBuilder {
  10145. typedef DynamicUpdateSliceOptions Table;
  10146. flatbuffers::FlatBufferBuilder &fbb_;
  10147. flatbuffers::uoffset_t start_;
  10148. explicit DynamicUpdateSliceOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10149. : fbb_(_fbb) {
  10150. start_ = fbb_.StartTable();
  10151. }
  10152. DynamicUpdateSliceOptionsBuilder &operator=(const DynamicUpdateSliceOptionsBuilder &);
  10153. flatbuffers::Offset<DynamicUpdateSliceOptions> Finish() {
  10154. const auto end = fbb_.EndTable(start_);
  10155. auto o = flatbuffers::Offset<DynamicUpdateSliceOptions>(end);
  10156. return o;
  10157. }
  10158. };
  10159. inline flatbuffers::Offset<DynamicUpdateSliceOptions> CreateDynamicUpdateSliceOptions(
  10160. flatbuffers::FlatBufferBuilder &_fbb) {
  10161. DynamicUpdateSliceOptionsBuilder builder_(_fbb);
  10162. return builder_.Finish();
  10163. }
  10164. flatbuffers::Offset<DynamicUpdateSliceOptions> CreateDynamicUpdateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10165. struct UnsortedSegmentProdOptionsT : public flatbuffers::NativeTable {
  10166. typedef UnsortedSegmentProdOptions TableType;
  10167. UnsortedSegmentProdOptionsT() {
  10168. }
  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. UnsortedSegmentProdOptionsBuilder &operator=(const UnsortedSegmentProdOptionsBuilder &);
  10190. flatbuffers::Offset<UnsortedSegmentProdOptions> Finish() {
  10191. const auto end = fbb_.EndTable(start_);
  10192. auto o = flatbuffers::Offset<UnsortedSegmentProdOptions>(end);
  10193. return o;
  10194. }
  10195. };
  10196. inline flatbuffers::Offset<UnsortedSegmentProdOptions> CreateUnsortedSegmentProdOptions(
  10197. flatbuffers::FlatBufferBuilder &_fbb) {
  10198. UnsortedSegmentProdOptionsBuilder builder_(_fbb);
  10199. return builder_.Finish();
  10200. }
  10201. flatbuffers::Offset<UnsortedSegmentProdOptions> CreateUnsortedSegmentProdOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10202. struct UnsortedSegmentMaxOptionsT : public flatbuffers::NativeTable {
  10203. typedef UnsortedSegmentMaxOptions TableType;
  10204. UnsortedSegmentMaxOptionsT() {
  10205. }
  10206. };
  10207. struct UnsortedSegmentMaxOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10208. typedef UnsortedSegmentMaxOptionsT NativeTableType;
  10209. typedef UnsortedSegmentMaxOptionsBuilder Builder;
  10210. bool Verify(flatbuffers::Verifier &verifier) const {
  10211. return VerifyTableStart(verifier) &&
  10212. verifier.EndTable();
  10213. }
  10214. UnsortedSegmentMaxOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10215. void UnPackTo(UnsortedSegmentMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10216. static flatbuffers::Offset<UnsortedSegmentMaxOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10217. };
  10218. struct UnsortedSegmentMaxOptionsBuilder {
  10219. typedef UnsortedSegmentMaxOptions Table;
  10220. flatbuffers::FlatBufferBuilder &fbb_;
  10221. flatbuffers::uoffset_t start_;
  10222. explicit UnsortedSegmentMaxOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10223. : fbb_(_fbb) {
  10224. start_ = fbb_.StartTable();
  10225. }
  10226. UnsortedSegmentMaxOptionsBuilder &operator=(const UnsortedSegmentMaxOptionsBuilder &);
  10227. flatbuffers::Offset<UnsortedSegmentMaxOptions> Finish() {
  10228. const auto end = fbb_.EndTable(start_);
  10229. auto o = flatbuffers::Offset<UnsortedSegmentMaxOptions>(end);
  10230. return o;
  10231. }
  10232. };
  10233. inline flatbuffers::Offset<UnsortedSegmentMaxOptions> CreateUnsortedSegmentMaxOptions(
  10234. flatbuffers::FlatBufferBuilder &_fbb) {
  10235. UnsortedSegmentMaxOptionsBuilder builder_(_fbb);
  10236. return builder_.Finish();
  10237. }
  10238. flatbuffers::Offset<UnsortedSegmentMaxOptions> CreateUnsortedSegmentMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10239. struct UnsortedSegmentSumOptionsT : public flatbuffers::NativeTable {
  10240. typedef UnsortedSegmentSumOptions TableType;
  10241. UnsortedSegmentSumOptionsT() {
  10242. }
  10243. };
  10244. struct UnsortedSegmentSumOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10245. typedef UnsortedSegmentSumOptionsT NativeTableType;
  10246. typedef UnsortedSegmentSumOptionsBuilder Builder;
  10247. bool Verify(flatbuffers::Verifier &verifier) const {
  10248. return VerifyTableStart(verifier) &&
  10249. verifier.EndTable();
  10250. }
  10251. UnsortedSegmentSumOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10252. void UnPackTo(UnsortedSegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10253. static flatbuffers::Offset<UnsortedSegmentSumOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10254. };
  10255. struct UnsortedSegmentSumOptionsBuilder {
  10256. typedef UnsortedSegmentSumOptions Table;
  10257. flatbuffers::FlatBufferBuilder &fbb_;
  10258. flatbuffers::uoffset_t start_;
  10259. explicit UnsortedSegmentSumOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10260. : fbb_(_fbb) {
  10261. start_ = fbb_.StartTable();
  10262. }
  10263. UnsortedSegmentSumOptionsBuilder &operator=(const UnsortedSegmentSumOptionsBuilder &);
  10264. flatbuffers::Offset<UnsortedSegmentSumOptions> Finish() {
  10265. const auto end = fbb_.EndTable(start_);
  10266. auto o = flatbuffers::Offset<UnsortedSegmentSumOptions>(end);
  10267. return o;
  10268. }
  10269. };
  10270. inline flatbuffers::Offset<UnsortedSegmentSumOptions> CreateUnsortedSegmentSumOptions(
  10271. flatbuffers::FlatBufferBuilder &_fbb) {
  10272. UnsortedSegmentSumOptionsBuilder builder_(_fbb);
  10273. return builder_.Finish();
  10274. }
  10275. flatbuffers::Offset<UnsortedSegmentSumOptions> CreateUnsortedSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10276. struct ATan2OptionsT : public flatbuffers::NativeTable {
  10277. typedef ATan2Options TableType;
  10278. ATan2OptionsT() {
  10279. }
  10280. };
  10281. struct ATan2Options FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10282. typedef ATan2OptionsT NativeTableType;
  10283. typedef ATan2OptionsBuilder Builder;
  10284. bool Verify(flatbuffers::Verifier &verifier) const {
  10285. return VerifyTableStart(verifier) &&
  10286. verifier.EndTable();
  10287. }
  10288. ATan2OptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10289. void UnPackTo(ATan2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10290. static flatbuffers::Offset<ATan2Options> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10291. };
  10292. struct ATan2OptionsBuilder {
  10293. typedef ATan2Options Table;
  10294. flatbuffers::FlatBufferBuilder &fbb_;
  10295. flatbuffers::uoffset_t start_;
  10296. explicit ATan2OptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10297. : fbb_(_fbb) {
  10298. start_ = fbb_.StartTable();
  10299. }
  10300. ATan2OptionsBuilder &operator=(const ATan2OptionsBuilder &);
  10301. flatbuffers::Offset<ATan2Options> Finish() {
  10302. const auto end = fbb_.EndTable(start_);
  10303. auto o = flatbuffers::Offset<ATan2Options>(end);
  10304. return o;
  10305. }
  10306. };
  10307. inline flatbuffers::Offset<ATan2Options> CreateATan2Options(
  10308. flatbuffers::FlatBufferBuilder &_fbb) {
  10309. ATan2OptionsBuilder builder_(_fbb);
  10310. return builder_.Finish();
  10311. }
  10312. flatbuffers::Offset<ATan2Options> CreateATan2Options(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10313. struct UnsortedSegmentMinOptionsT : public flatbuffers::NativeTable {
  10314. typedef UnsortedSegmentMinOptions TableType;
  10315. UnsortedSegmentMinOptionsT() {
  10316. }
  10317. };
  10318. struct UnsortedSegmentMinOptions FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10319. typedef UnsortedSegmentMinOptionsT NativeTableType;
  10320. typedef UnsortedSegmentMinOptionsBuilder Builder;
  10321. bool Verify(flatbuffers::Verifier &verifier) const {
  10322. return VerifyTableStart(verifier) &&
  10323. verifier.EndTable();
  10324. }
  10325. UnsortedSegmentMinOptionsT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10326. void UnPackTo(UnsortedSegmentMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10327. static flatbuffers::Offset<UnsortedSegmentMinOptions> Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10328. };
  10329. struct UnsortedSegmentMinOptionsBuilder {
  10330. typedef UnsortedSegmentMinOptions Table;
  10331. flatbuffers::FlatBufferBuilder &fbb_;
  10332. flatbuffers::uoffset_t start_;
  10333. explicit UnsortedSegmentMinOptionsBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10334. : fbb_(_fbb) {
  10335. start_ = fbb_.StartTable();
  10336. }
  10337. UnsortedSegmentMinOptionsBuilder &operator=(const UnsortedSegmentMinOptionsBuilder &);
  10338. flatbuffers::Offset<UnsortedSegmentMinOptions> Finish() {
  10339. const auto end = fbb_.EndTable(start_);
  10340. auto o = flatbuffers::Offset<UnsortedSegmentMinOptions>(end);
  10341. return o;
  10342. }
  10343. };
  10344. inline flatbuffers::Offset<UnsortedSegmentMinOptions> CreateUnsortedSegmentMinOptions(
  10345. flatbuffers::FlatBufferBuilder &_fbb) {
  10346. UnsortedSegmentMinOptionsBuilder builder_(_fbb);
  10347. return builder_.Finish();
  10348. }
  10349. flatbuffers::Offset<UnsortedSegmentMinOptions> CreateUnsortedSegmentMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10350. struct OperatorCodeT : public flatbuffers::NativeTable {
  10351. typedef OperatorCode TableType;
  10352. int8_t deprecated_builtin_code;
  10353. std::string custom_code;
  10354. int32_t version;
  10355. tflite::BuiltinOperator builtin_code;
  10356. OperatorCodeT()
  10357. : deprecated_builtin_code(0),
  10358. version(1),
  10359. builtin_code(tflite::BuiltinOperator_ADD) {
  10360. }
  10361. };
  10362. struct OperatorCode FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10363. typedef OperatorCodeT NativeTableType;
  10364. typedef OperatorCodeBuilder Builder;
  10365. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  10366. VT_DEPRECATED_BUILTIN_CODE = 4,
  10367. VT_CUSTOM_CODE = 6,
  10368. VT_VERSION = 8,
  10369. VT_BUILTIN_CODE = 10
  10370. };
  10371. int8_t deprecated_builtin_code() const {
  10372. return GetField<int8_t>(VT_DEPRECATED_BUILTIN_CODE, 0);
  10373. }
  10374. const flatbuffers::String *custom_code() const {
  10375. return GetPointer<const flatbuffers::String *>(VT_CUSTOM_CODE);
  10376. }
  10377. int32_t version() const {
  10378. return GetField<int32_t>(VT_VERSION, 1);
  10379. }
  10380. tflite::BuiltinOperator builtin_code() const {
  10381. return static_cast<tflite::BuiltinOperator>(GetField<int32_t>(VT_BUILTIN_CODE, 0));
  10382. }
  10383. bool Verify(flatbuffers::Verifier &verifier) const {
  10384. return VerifyTableStart(verifier) &&
  10385. VerifyField<int8_t>(verifier, VT_DEPRECATED_BUILTIN_CODE) &&
  10386. VerifyOffset(verifier, VT_CUSTOM_CODE) &&
  10387. verifier.VerifyString(custom_code()) &&
  10388. VerifyField<int32_t>(verifier, VT_VERSION) &&
  10389. VerifyField<int32_t>(verifier, VT_BUILTIN_CODE) &&
  10390. verifier.EndTable();
  10391. }
  10392. OperatorCodeT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10393. void UnPackTo(OperatorCodeT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10394. static flatbuffers::Offset<OperatorCode> Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10395. };
  10396. struct OperatorCodeBuilder {
  10397. typedef OperatorCode Table;
  10398. flatbuffers::FlatBufferBuilder &fbb_;
  10399. flatbuffers::uoffset_t start_;
  10400. void add_deprecated_builtin_code(int8_t deprecated_builtin_code) {
  10401. fbb_.AddElement<int8_t>(OperatorCode::VT_DEPRECATED_BUILTIN_CODE, deprecated_builtin_code, 0);
  10402. }
  10403. void add_custom_code(flatbuffers::Offset<flatbuffers::String> custom_code) {
  10404. fbb_.AddOffset(OperatorCode::VT_CUSTOM_CODE, custom_code);
  10405. }
  10406. void add_version(int32_t version) {
  10407. fbb_.AddElement<int32_t>(OperatorCode::VT_VERSION, version, 1);
  10408. }
  10409. void add_builtin_code(tflite::BuiltinOperator builtin_code) {
  10410. fbb_.AddElement<int32_t>(OperatorCode::VT_BUILTIN_CODE, static_cast<int32_t>(builtin_code), 0);
  10411. }
  10412. explicit OperatorCodeBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  10413. : fbb_(_fbb) {
  10414. start_ = fbb_.StartTable();
  10415. }
  10416. OperatorCodeBuilder &operator=(const OperatorCodeBuilder &);
  10417. flatbuffers::Offset<OperatorCode> Finish() {
  10418. const auto end = fbb_.EndTable(start_);
  10419. auto o = flatbuffers::Offset<OperatorCode>(end);
  10420. return o;
  10421. }
  10422. };
  10423. inline flatbuffers::Offset<OperatorCode> CreateOperatorCode(
  10424. flatbuffers::FlatBufferBuilder &_fbb,
  10425. int8_t deprecated_builtin_code = 0,
  10426. flatbuffers::Offset<flatbuffers::String> custom_code = 0,
  10427. int32_t version = 1,
  10428. tflite::BuiltinOperator builtin_code = tflite::BuiltinOperator_ADD) {
  10429. OperatorCodeBuilder builder_(_fbb);
  10430. builder_.add_builtin_code(builtin_code);
  10431. builder_.add_version(version);
  10432. builder_.add_custom_code(custom_code);
  10433. builder_.add_deprecated_builtin_code(deprecated_builtin_code);
  10434. return builder_.Finish();
  10435. }
  10436. inline flatbuffers::Offset<OperatorCode> CreateOperatorCodeDirect(
  10437. flatbuffers::FlatBufferBuilder &_fbb,
  10438. int8_t deprecated_builtin_code = 0,
  10439. const char *custom_code = nullptr,
  10440. int32_t version = 1,
  10441. tflite::BuiltinOperator builtin_code = tflite::BuiltinOperator_ADD) {
  10442. auto custom_code__ = custom_code ? _fbb.CreateString(custom_code) : 0;
  10443. return tflite::CreateOperatorCode(
  10444. _fbb,
  10445. deprecated_builtin_code,
  10446. custom_code__,
  10447. version,
  10448. builtin_code);
  10449. }
  10450. flatbuffers::Offset<OperatorCode> CreateOperatorCode(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10451. struct OperatorT : public flatbuffers::NativeTable {
  10452. typedef Operator TableType;
  10453. uint32_t opcode_index;
  10454. std::vector<int32_t> inputs;
  10455. std::vector<int32_t> outputs;
  10456. tflite::BuiltinOptionsUnion builtin_options;
  10457. std::vector<uint8_t> custom_options;
  10458. tflite::CustomOptionsFormat custom_options_format;
  10459. std::vector<bool> mutating_variable_inputs;
  10460. std::vector<int32_t> intermediates;
  10461. OperatorT()
  10462. : opcode_index(0),
  10463. custom_options_format(tflite::CustomOptionsFormat_FLEXBUFFERS) {
  10464. }
  10465. };
  10466. struct Operator FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  10467. typedef OperatorT NativeTableType;
  10468. typedef OperatorBuilder Builder;
  10469. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  10470. VT_OPCODE_INDEX = 4,
  10471. VT_INPUTS = 6,
  10472. VT_OUTPUTS = 8,
  10473. VT_BUILTIN_OPTIONS_TYPE = 10,
  10474. VT_BUILTIN_OPTIONS = 12,
  10475. VT_CUSTOM_OPTIONS = 14,
  10476. VT_CUSTOM_OPTIONS_FORMAT = 16,
  10477. VT_MUTATING_VARIABLE_INPUTS = 18,
  10478. VT_INTERMEDIATES = 20
  10479. };
  10480. uint32_t opcode_index() const {
  10481. return GetField<uint32_t>(VT_OPCODE_INDEX, 0);
  10482. }
  10483. const flatbuffers::Vector<int32_t> *inputs() const {
  10484. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_INPUTS);
  10485. }
  10486. const flatbuffers::Vector<int32_t> *outputs() const {
  10487. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_OUTPUTS);
  10488. }
  10489. tflite::BuiltinOptions builtin_options_type() const {
  10490. return static_cast<tflite::BuiltinOptions>(GetField<uint8_t>(VT_BUILTIN_OPTIONS_TYPE, 0));
  10491. }
  10492. const void *builtin_options() const {
  10493. return GetPointer<const void *>(VT_BUILTIN_OPTIONS);
  10494. }
  10495. template<typename T> const T *builtin_options_as() const;
  10496. const tflite::Conv2DOptions *builtin_options_as_Conv2DOptions() const {
  10497. return builtin_options_type() == tflite::BuiltinOptions_Conv2DOptions ? static_cast<const tflite::Conv2DOptions *>(builtin_options()) : nullptr;
  10498. }
  10499. const tflite::DepthwiseConv2DOptions *builtin_options_as_DepthwiseConv2DOptions() const {
  10500. return builtin_options_type() == tflite::BuiltinOptions_DepthwiseConv2DOptions ? static_cast<const tflite::DepthwiseConv2DOptions *>(builtin_options()) : nullptr;
  10501. }
  10502. const tflite::ConcatEmbeddingsOptions *builtin_options_as_ConcatEmbeddingsOptions() const {
  10503. return builtin_options_type() == tflite::BuiltinOptions_ConcatEmbeddingsOptions ? static_cast<const tflite::ConcatEmbeddingsOptions *>(builtin_options()) : nullptr;
  10504. }
  10505. const tflite::LSHProjectionOptions *builtin_options_as_LSHProjectionOptions() const {
  10506. return builtin_options_type() == tflite::BuiltinOptions_LSHProjectionOptions ? static_cast<const tflite::LSHProjectionOptions *>(builtin_options()) : nullptr;
  10507. }
  10508. const tflite::Pool2DOptions *builtin_options_as_Pool2DOptions() const {
  10509. return builtin_options_type() == tflite::BuiltinOptions_Pool2DOptions ? static_cast<const tflite::Pool2DOptions *>(builtin_options()) : nullptr;
  10510. }
  10511. const tflite::SVDFOptions *builtin_options_as_SVDFOptions() const {
  10512. return builtin_options_type() == tflite::BuiltinOptions_SVDFOptions ? static_cast<const tflite::SVDFOptions *>(builtin_options()) : nullptr;
  10513. }
  10514. const tflite::RNNOptions *builtin_options_as_RNNOptions() const {
  10515. return builtin_options_type() == tflite::BuiltinOptions_RNNOptions ? static_cast<const tflite::RNNOptions *>(builtin_options()) : nullptr;
  10516. }
  10517. const tflite::FullyConnectedOptions *builtin_options_as_FullyConnectedOptions() const {
  10518. return builtin_options_type() == tflite::BuiltinOptions_FullyConnectedOptions ? static_cast<const tflite::FullyConnectedOptions *>(builtin_options()) : nullptr;
  10519. }
  10520. const tflite::SoftmaxOptions *builtin_options_as_SoftmaxOptions() const {
  10521. return builtin_options_type() == tflite::BuiltinOptions_SoftmaxOptions ? static_cast<const tflite::SoftmaxOptions *>(builtin_options()) : nullptr;
  10522. }
  10523. const tflite::ConcatenationOptions *builtin_options_as_ConcatenationOptions() const {
  10524. return builtin_options_type() == tflite::BuiltinOptions_ConcatenationOptions ? static_cast<const tflite::ConcatenationOptions *>(builtin_options()) : nullptr;
  10525. }
  10526. const tflite::AddOptions *builtin_options_as_AddOptions() const {
  10527. return builtin_options_type() == tflite::BuiltinOptions_AddOptions ? static_cast<const tflite::AddOptions *>(builtin_options()) : nullptr;
  10528. }
  10529. const tflite::L2NormOptions *builtin_options_as_L2NormOptions() const {
  10530. return builtin_options_type() == tflite::BuiltinOptions_L2NormOptions ? static_cast<const tflite::L2NormOptions *>(builtin_options()) : nullptr;
  10531. }
  10532. const tflite::LocalResponseNormalizationOptions *builtin_options_as_LocalResponseNormalizationOptions() const {
  10533. return builtin_options_type() == tflite::BuiltinOptions_LocalResponseNormalizationOptions ? static_cast<const tflite::LocalResponseNormalizationOptions *>(builtin_options()) : nullptr;
  10534. }
  10535. const tflite::LSTMOptions *builtin_options_as_LSTMOptions() const {
  10536. return builtin_options_type() == tflite::BuiltinOptions_LSTMOptions ? static_cast<const tflite::LSTMOptions *>(builtin_options()) : nullptr;
  10537. }
  10538. const tflite::ResizeBilinearOptions *builtin_options_as_ResizeBilinearOptions() const {
  10539. return builtin_options_type() == tflite::BuiltinOptions_ResizeBilinearOptions ? static_cast<const tflite::ResizeBilinearOptions *>(builtin_options()) : nullptr;
  10540. }
  10541. const tflite::CallOptions *builtin_options_as_CallOptions() const {
  10542. return builtin_options_type() == tflite::BuiltinOptions_CallOptions ? static_cast<const tflite::CallOptions *>(builtin_options()) : nullptr;
  10543. }
  10544. const tflite::ReshapeOptions *builtin_options_as_ReshapeOptions() const {
  10545. return builtin_options_type() == tflite::BuiltinOptions_ReshapeOptions ? static_cast<const tflite::ReshapeOptions *>(builtin_options()) : nullptr;
  10546. }
  10547. const tflite::SkipGramOptions *builtin_options_as_SkipGramOptions() const {
  10548. return builtin_options_type() == tflite::BuiltinOptions_SkipGramOptions ? static_cast<const tflite::SkipGramOptions *>(builtin_options()) : nullptr;
  10549. }
  10550. const tflite::SpaceToDepthOptions *builtin_options_as_SpaceToDepthOptions() const {
  10551. return builtin_options_type() == tflite::BuiltinOptions_SpaceToDepthOptions ? static_cast<const tflite::SpaceToDepthOptions *>(builtin_options()) : nullptr;
  10552. }
  10553. const tflite::EmbeddingLookupSparseOptions *builtin_options_as_EmbeddingLookupSparseOptions() const {
  10554. return builtin_options_type() == tflite::BuiltinOptions_EmbeddingLookupSparseOptions ? static_cast<const tflite::EmbeddingLookupSparseOptions *>(builtin_options()) : nullptr;
  10555. }
  10556. const tflite::MulOptions *builtin_options_as_MulOptions() const {
  10557. return builtin_options_type() == tflite::BuiltinOptions_MulOptions ? static_cast<const tflite::MulOptions *>(builtin_options()) : nullptr;
  10558. }
  10559. const tflite::PadOptions *builtin_options_as_PadOptions() const {
  10560. return builtin_options_type() == tflite::BuiltinOptions_PadOptions ? static_cast<const tflite::PadOptions *>(builtin_options()) : nullptr;
  10561. }
  10562. const tflite::GatherOptions *builtin_options_as_GatherOptions() const {
  10563. return builtin_options_type() == tflite::BuiltinOptions_GatherOptions ? static_cast<const tflite::GatherOptions *>(builtin_options()) : nullptr;
  10564. }
  10565. const tflite::BatchToSpaceNDOptions *builtin_options_as_BatchToSpaceNDOptions() const {
  10566. return builtin_options_type() == tflite::BuiltinOptions_BatchToSpaceNDOptions ? static_cast<const tflite::BatchToSpaceNDOptions *>(builtin_options()) : nullptr;
  10567. }
  10568. const tflite::SpaceToBatchNDOptions *builtin_options_as_SpaceToBatchNDOptions() const {
  10569. return builtin_options_type() == tflite::BuiltinOptions_SpaceToBatchNDOptions ? static_cast<const tflite::SpaceToBatchNDOptions *>(builtin_options()) : nullptr;
  10570. }
  10571. const tflite::TransposeOptions *builtin_options_as_TransposeOptions() const {
  10572. return builtin_options_type() == tflite::BuiltinOptions_TransposeOptions ? static_cast<const tflite::TransposeOptions *>(builtin_options()) : nullptr;
  10573. }
  10574. const tflite::ReducerOptions *builtin_options_as_ReducerOptions() const {
  10575. return builtin_options_type() == tflite::BuiltinOptions_ReducerOptions ? static_cast<const tflite::ReducerOptions *>(builtin_options()) : nullptr;
  10576. }
  10577. const tflite::SubOptions *builtin_options_as_SubOptions() const {
  10578. return builtin_options_type() == tflite::BuiltinOptions_SubOptions ? static_cast<const tflite::SubOptions *>(builtin_options()) : nullptr;
  10579. }
  10580. const tflite::DivOptions *builtin_options_as_DivOptions() const {
  10581. return builtin_options_type() == tflite::BuiltinOptions_DivOptions ? static_cast<const tflite::DivOptions *>(builtin_options()) : nullptr;
  10582. }
  10583. const tflite::SqueezeOptions *builtin_options_as_SqueezeOptions() const {
  10584. return builtin_options_type() == tflite::BuiltinOptions_SqueezeOptions ? static_cast<const tflite::SqueezeOptions *>(builtin_options()) : nullptr;
  10585. }
  10586. const tflite::SequenceRNNOptions *builtin_options_as_SequenceRNNOptions() const {
  10587. return builtin_options_type() == tflite::BuiltinOptions_SequenceRNNOptions ? static_cast<const tflite::SequenceRNNOptions *>(builtin_options()) : nullptr;
  10588. }
  10589. const tflite::StridedSliceOptions *builtin_options_as_StridedSliceOptions() const {
  10590. return builtin_options_type() == tflite::BuiltinOptions_StridedSliceOptions ? static_cast<const tflite::StridedSliceOptions *>(builtin_options()) : nullptr;
  10591. }
  10592. const tflite::ExpOptions *builtin_options_as_ExpOptions() const {
  10593. return builtin_options_type() == tflite::BuiltinOptions_ExpOptions ? static_cast<const tflite::ExpOptions *>(builtin_options()) : nullptr;
  10594. }
  10595. const tflite::TopKV2Options *builtin_options_as_TopKV2Options() const {
  10596. return builtin_options_type() == tflite::BuiltinOptions_TopKV2Options ? static_cast<const tflite::TopKV2Options *>(builtin_options()) : nullptr;
  10597. }
  10598. const tflite::SplitOptions *builtin_options_as_SplitOptions() const {
  10599. return builtin_options_type() == tflite::BuiltinOptions_SplitOptions ? static_cast<const tflite::SplitOptions *>(builtin_options()) : nullptr;
  10600. }
  10601. const tflite::LogSoftmaxOptions *builtin_options_as_LogSoftmaxOptions() const {
  10602. return builtin_options_type() == tflite::BuiltinOptions_LogSoftmaxOptions ? static_cast<const tflite::LogSoftmaxOptions *>(builtin_options()) : nullptr;
  10603. }
  10604. const tflite::CastOptions *builtin_options_as_CastOptions() const {
  10605. return builtin_options_type() == tflite::BuiltinOptions_CastOptions ? static_cast<const tflite::CastOptions *>(builtin_options()) : nullptr;
  10606. }
  10607. const tflite::DequantizeOptions *builtin_options_as_DequantizeOptions() const {
  10608. return builtin_options_type() == tflite::BuiltinOptions_DequantizeOptions ? static_cast<const tflite::DequantizeOptions *>(builtin_options()) : nullptr;
  10609. }
  10610. const tflite::MaximumMinimumOptions *builtin_options_as_MaximumMinimumOptions() const {
  10611. return builtin_options_type() == tflite::BuiltinOptions_MaximumMinimumOptions ? static_cast<const tflite::MaximumMinimumOptions *>(builtin_options()) : nullptr;
  10612. }
  10613. const tflite::ArgMaxOptions *builtin_options_as_ArgMaxOptions() const {
  10614. return builtin_options_type() == tflite::BuiltinOptions_ArgMaxOptions ? static_cast<const tflite::ArgMaxOptions *>(builtin_options()) : nullptr;
  10615. }
  10616. const tflite::LessOptions *builtin_options_as_LessOptions() const {
  10617. return builtin_options_type() == tflite::BuiltinOptions_LessOptions ? static_cast<const tflite::LessOptions *>(builtin_options()) : nullptr;
  10618. }
  10619. const tflite::NegOptions *builtin_options_as_NegOptions() const {
  10620. return builtin_options_type() == tflite::BuiltinOptions_NegOptions ? static_cast<const tflite::NegOptions *>(builtin_options()) : nullptr;
  10621. }
  10622. const tflite::PadV2Options *builtin_options_as_PadV2Options() const {
  10623. return builtin_options_type() == tflite::BuiltinOptions_PadV2Options ? static_cast<const tflite::PadV2Options *>(builtin_options()) : nullptr;
  10624. }
  10625. const tflite::GreaterOptions *builtin_options_as_GreaterOptions() const {
  10626. return builtin_options_type() == tflite::BuiltinOptions_GreaterOptions ? static_cast<const tflite::GreaterOptions *>(builtin_options()) : nullptr;
  10627. }
  10628. const tflite::GreaterEqualOptions *builtin_options_as_GreaterEqualOptions() const {
  10629. return builtin_options_type() == tflite::BuiltinOptions_GreaterEqualOptions ? static_cast<const tflite::GreaterEqualOptions *>(builtin_options()) : nullptr;
  10630. }
  10631. const tflite::LessEqualOptions *builtin_options_as_LessEqualOptions() const {
  10632. return builtin_options_type() == tflite::BuiltinOptions_LessEqualOptions ? static_cast<const tflite::LessEqualOptions *>(builtin_options()) : nullptr;
  10633. }
  10634. const tflite::SelectOptions *builtin_options_as_SelectOptions() const {
  10635. return builtin_options_type() == tflite::BuiltinOptions_SelectOptions ? static_cast<const tflite::SelectOptions *>(builtin_options()) : nullptr;
  10636. }
  10637. const tflite::SliceOptions *builtin_options_as_SliceOptions() const {
  10638. return builtin_options_type() == tflite::BuiltinOptions_SliceOptions ? static_cast<const tflite::SliceOptions *>(builtin_options()) : nullptr;
  10639. }
  10640. const tflite::TransposeConvOptions *builtin_options_as_TransposeConvOptions() const {
  10641. return builtin_options_type() == tflite::BuiltinOptions_TransposeConvOptions ? static_cast<const tflite::TransposeConvOptions *>(builtin_options()) : nullptr;
  10642. }
  10643. const tflite::SparseToDenseOptions *builtin_options_as_SparseToDenseOptions() const {
  10644. return builtin_options_type() == tflite::BuiltinOptions_SparseToDenseOptions ? static_cast<const tflite::SparseToDenseOptions *>(builtin_options()) : nullptr;
  10645. }
  10646. const tflite::TileOptions *builtin_options_as_TileOptions() const {
  10647. return builtin_options_type() == tflite::BuiltinOptions_TileOptions ? static_cast<const tflite::TileOptions *>(builtin_options()) : nullptr;
  10648. }
  10649. const tflite::ExpandDimsOptions *builtin_options_as_ExpandDimsOptions() const {
  10650. return builtin_options_type() == tflite::BuiltinOptions_ExpandDimsOptions ? static_cast<const tflite::ExpandDimsOptions *>(builtin_options()) : nullptr;
  10651. }
  10652. const tflite::EqualOptions *builtin_options_as_EqualOptions() const {
  10653. return builtin_options_type() == tflite::BuiltinOptions_EqualOptions ? static_cast<const tflite::EqualOptions *>(builtin_options()) : nullptr;
  10654. }
  10655. const tflite::NotEqualOptions *builtin_options_as_NotEqualOptions() const {
  10656. return builtin_options_type() == tflite::BuiltinOptions_NotEqualOptions ? static_cast<const tflite::NotEqualOptions *>(builtin_options()) : nullptr;
  10657. }
  10658. const tflite::ShapeOptions *builtin_options_as_ShapeOptions() const {
  10659. return builtin_options_type() == tflite::BuiltinOptions_ShapeOptions ? static_cast<const tflite::ShapeOptions *>(builtin_options()) : nullptr;
  10660. }
  10661. const tflite::PowOptions *builtin_options_as_PowOptions() const {
  10662. return builtin_options_type() == tflite::BuiltinOptions_PowOptions ? static_cast<const tflite::PowOptions *>(builtin_options()) : nullptr;
  10663. }
  10664. const tflite::ArgMinOptions *builtin_options_as_ArgMinOptions() const {
  10665. return builtin_options_type() == tflite::BuiltinOptions_ArgMinOptions ? static_cast<const tflite::ArgMinOptions *>(builtin_options()) : nullptr;
  10666. }
  10667. const tflite::FakeQuantOptions *builtin_options_as_FakeQuantOptions() const {
  10668. return builtin_options_type() == tflite::BuiltinOptions_FakeQuantOptions ? static_cast<const tflite::FakeQuantOptions *>(builtin_options()) : nullptr;
  10669. }
  10670. const tflite::PackOptions *builtin_options_as_PackOptions() const {
  10671. return builtin_options_type() == tflite::BuiltinOptions_PackOptions ? static_cast<const tflite::PackOptions *>(builtin_options()) : nullptr;
  10672. }
  10673. const tflite::LogicalOrOptions *builtin_options_as_LogicalOrOptions() const {
  10674. return builtin_options_type() == tflite::BuiltinOptions_LogicalOrOptions ? static_cast<const tflite::LogicalOrOptions *>(builtin_options()) : nullptr;
  10675. }
  10676. const tflite::OneHotOptions *builtin_options_as_OneHotOptions() const {
  10677. return builtin_options_type() == tflite::BuiltinOptions_OneHotOptions ? static_cast<const tflite::OneHotOptions *>(builtin_options()) : nullptr;
  10678. }
  10679. const tflite::LogicalAndOptions *builtin_options_as_LogicalAndOptions() const {
  10680. return builtin_options_type() == tflite::BuiltinOptions_LogicalAndOptions ? static_cast<const tflite::LogicalAndOptions *>(builtin_options()) : nullptr;
  10681. }
  10682. const tflite::LogicalNotOptions *builtin_options_as_LogicalNotOptions() const {
  10683. return builtin_options_type() == tflite::BuiltinOptions_LogicalNotOptions ? static_cast<const tflite::LogicalNotOptions *>(builtin_options()) : nullptr;
  10684. }
  10685. const tflite::UnpackOptions *builtin_options_as_UnpackOptions() const {
  10686. return builtin_options_type() == tflite::BuiltinOptions_UnpackOptions ? static_cast<const tflite::UnpackOptions *>(builtin_options()) : nullptr;
  10687. }
  10688. const tflite::FloorDivOptions *builtin_options_as_FloorDivOptions() const {
  10689. return builtin_options_type() == tflite::BuiltinOptions_FloorDivOptions ? static_cast<const tflite::FloorDivOptions *>(builtin_options()) : nullptr;
  10690. }
  10691. const tflite::SquareOptions *builtin_options_as_SquareOptions() const {
  10692. return builtin_options_type() == tflite::BuiltinOptions_SquareOptions ? static_cast<const tflite::SquareOptions *>(builtin_options()) : nullptr;
  10693. }
  10694. const tflite::ZerosLikeOptions *builtin_options_as_ZerosLikeOptions() const {
  10695. return builtin_options_type() == tflite::BuiltinOptions_ZerosLikeOptions ? static_cast<const tflite::ZerosLikeOptions *>(builtin_options()) : nullptr;
  10696. }
  10697. const tflite::FillOptions *builtin_options_as_FillOptions() const {
  10698. return builtin_options_type() == tflite::BuiltinOptions_FillOptions ? static_cast<const tflite::FillOptions *>(builtin_options()) : nullptr;
  10699. }
  10700. const tflite::BidirectionalSequenceLSTMOptions *builtin_options_as_BidirectionalSequenceLSTMOptions() const {
  10701. return builtin_options_type() == tflite::BuiltinOptions_BidirectionalSequenceLSTMOptions ? static_cast<const tflite::BidirectionalSequenceLSTMOptions *>(builtin_options()) : nullptr;
  10702. }
  10703. const tflite::BidirectionalSequenceRNNOptions *builtin_options_as_BidirectionalSequenceRNNOptions() const {
  10704. return builtin_options_type() == tflite::BuiltinOptions_BidirectionalSequenceRNNOptions ? static_cast<const tflite::BidirectionalSequenceRNNOptions *>(builtin_options()) : nullptr;
  10705. }
  10706. const tflite::UnidirectionalSequenceLSTMOptions *builtin_options_as_UnidirectionalSequenceLSTMOptions() const {
  10707. return builtin_options_type() == tflite::BuiltinOptions_UnidirectionalSequenceLSTMOptions ? static_cast<const tflite::UnidirectionalSequenceLSTMOptions *>(builtin_options()) : nullptr;
  10708. }
  10709. const tflite::FloorModOptions *builtin_options_as_FloorModOptions() const {
  10710. return builtin_options_type() == tflite::BuiltinOptions_FloorModOptions ? static_cast<const tflite::FloorModOptions *>(builtin_options()) : nullptr;
  10711. }
  10712. const tflite::RangeOptions *builtin_options_as_RangeOptions() const {
  10713. return builtin_options_type() == tflite::BuiltinOptions_RangeOptions ? static_cast<const tflite::RangeOptions *>(builtin_options()) : nullptr;
  10714. }
  10715. const tflite::ResizeNearestNeighborOptions *builtin_options_as_ResizeNearestNeighborOptions() const {
  10716. return builtin_options_type() == tflite::BuiltinOptions_ResizeNearestNeighborOptions ? static_cast<const tflite::ResizeNearestNeighborOptions *>(builtin_options()) : nullptr;
  10717. }
  10718. const tflite::LeakyReluOptions *builtin_options_as_LeakyReluOptions() const {
  10719. return builtin_options_type() == tflite::BuiltinOptions_LeakyReluOptions ? static_cast<const tflite::LeakyReluOptions *>(builtin_options()) : nullptr;
  10720. }
  10721. const tflite::SquaredDifferenceOptions *builtin_options_as_SquaredDifferenceOptions() const {
  10722. return builtin_options_type() == tflite::BuiltinOptions_SquaredDifferenceOptions ? static_cast<const tflite::SquaredDifferenceOptions *>(builtin_options()) : nullptr;
  10723. }
  10724. const tflite::MirrorPadOptions *builtin_options_as_MirrorPadOptions() const {
  10725. return builtin_options_type() == tflite::BuiltinOptions_MirrorPadOptions ? static_cast<const tflite::MirrorPadOptions *>(builtin_options()) : nullptr;
  10726. }
  10727. const tflite::AbsOptions *builtin_options_as_AbsOptions() const {
  10728. return builtin_options_type() == tflite::BuiltinOptions_AbsOptions ? static_cast<const tflite::AbsOptions *>(builtin_options()) : nullptr;
  10729. }
  10730. const tflite::SplitVOptions *builtin_options_as_SplitVOptions() const {
  10731. return builtin_options_type() == tflite::BuiltinOptions_SplitVOptions ? static_cast<const tflite::SplitVOptions *>(builtin_options()) : nullptr;
  10732. }
  10733. const tflite::UniqueOptions *builtin_options_as_UniqueOptions() const {
  10734. return builtin_options_type() == tflite::BuiltinOptions_UniqueOptions ? static_cast<const tflite::UniqueOptions *>(builtin_options()) : nullptr;
  10735. }
  10736. const tflite::ReverseV2Options *builtin_options_as_ReverseV2Options() const {
  10737. return builtin_options_type() == tflite::BuiltinOptions_ReverseV2Options ? static_cast<const tflite::ReverseV2Options *>(builtin_options()) : nullptr;
  10738. }
  10739. const tflite::AddNOptions *builtin_options_as_AddNOptions() const {
  10740. return builtin_options_type() == tflite::BuiltinOptions_AddNOptions ? static_cast<const tflite::AddNOptions *>(builtin_options()) : nullptr;
  10741. }
  10742. const tflite::GatherNdOptions *builtin_options_as_GatherNdOptions() const {
  10743. return builtin_options_type() == tflite::BuiltinOptions_GatherNdOptions ? static_cast<const tflite::GatherNdOptions *>(builtin_options()) : nullptr;
  10744. }
  10745. const tflite::CosOptions *builtin_options_as_CosOptions() const {
  10746. return builtin_options_type() == tflite::BuiltinOptions_CosOptions ? static_cast<const tflite::CosOptions *>(builtin_options()) : nullptr;
  10747. }
  10748. const tflite::WhereOptions *builtin_options_as_WhereOptions() const {
  10749. return builtin_options_type() == tflite::BuiltinOptions_WhereOptions ? static_cast<const tflite::WhereOptions *>(builtin_options()) : nullptr;
  10750. }
  10751. const tflite::RankOptions *builtin_options_as_RankOptions() const {
  10752. return builtin_options_type() == tflite::BuiltinOptions_RankOptions ? static_cast<const tflite::RankOptions *>(builtin_options()) : nullptr;
  10753. }
  10754. const tflite::ReverseSequenceOptions *builtin_options_as_ReverseSequenceOptions() const {
  10755. return builtin_options_type() == tflite::BuiltinOptions_ReverseSequenceOptions ? static_cast<const tflite::ReverseSequenceOptions *>(builtin_options()) : nullptr;
  10756. }
  10757. const tflite::MatrixDiagOptions *builtin_options_as_MatrixDiagOptions() const {
  10758. return builtin_options_type() == tflite::BuiltinOptions_MatrixDiagOptions ? static_cast<const tflite::MatrixDiagOptions *>(builtin_options()) : nullptr;
  10759. }
  10760. const tflite::QuantizeOptions *builtin_options_as_QuantizeOptions() const {
  10761. return builtin_options_type() == tflite::BuiltinOptions_QuantizeOptions ? static_cast<const tflite::QuantizeOptions *>(builtin_options()) : nullptr;
  10762. }
  10763. const tflite::MatrixSetDiagOptions *builtin_options_as_MatrixSetDiagOptions() const {
  10764. return builtin_options_type() == tflite::BuiltinOptions_MatrixSetDiagOptions ? static_cast<const tflite::MatrixSetDiagOptions *>(builtin_options()) : nullptr;
  10765. }
  10766. const tflite::HardSwishOptions *builtin_options_as_HardSwishOptions() const {
  10767. return builtin_options_type() == tflite::BuiltinOptions_HardSwishOptions ? static_cast<const tflite::HardSwishOptions *>(builtin_options()) : nullptr;
  10768. }
  10769. const tflite::IfOptions *builtin_options_as_IfOptions() const {
  10770. return builtin_options_type() == tflite::BuiltinOptions_IfOptions ? static_cast<const tflite::IfOptions *>(builtin_options()) : nullptr;
  10771. }
  10772. const tflite::WhileOptions *builtin_options_as_WhileOptions() const {
  10773. return builtin_options_type() == tflite::BuiltinOptions_WhileOptions ? static_cast<const tflite::WhileOptions *>(builtin_options()) : nullptr;
  10774. }
  10775. const tflite::DepthToSpaceOptions *builtin_options_as_DepthToSpaceOptions() const {
  10776. return builtin_options_type() == tflite::BuiltinOptions_DepthToSpaceOptions ? static_cast<const tflite::DepthToSpaceOptions *>(builtin_options()) : nullptr;
  10777. }
  10778. const tflite::NonMaxSuppressionV4Options *builtin_options_as_NonMaxSuppressionV4Options() const {
  10779. return builtin_options_type() == tflite::BuiltinOptions_NonMaxSuppressionV4Options ? static_cast<const tflite::NonMaxSuppressionV4Options *>(builtin_options()) : nullptr;
  10780. }
  10781. const tflite::NonMaxSuppressionV5Options *builtin_options_as_NonMaxSuppressionV5Options() const {
  10782. return builtin_options_type() == tflite::BuiltinOptions_NonMaxSuppressionV5Options ? static_cast<const tflite::NonMaxSuppressionV5Options *>(builtin_options()) : nullptr;
  10783. }
  10784. const tflite::ScatterNdOptions *builtin_options_as_ScatterNdOptions() const {
  10785. return builtin_options_type() == tflite::BuiltinOptions_ScatterNdOptions ? static_cast<const tflite::ScatterNdOptions *>(builtin_options()) : nullptr;
  10786. }
  10787. const tflite::SelectV2Options *builtin_options_as_SelectV2Options() const {
  10788. return builtin_options_type() == tflite::BuiltinOptions_SelectV2Options ? static_cast<const tflite::SelectV2Options *>(builtin_options()) : nullptr;
  10789. }
  10790. const tflite::DensifyOptions *builtin_options_as_DensifyOptions() const {
  10791. return builtin_options_type() == tflite::BuiltinOptions_DensifyOptions ? static_cast<const tflite::DensifyOptions *>(builtin_options()) : nullptr;
  10792. }
  10793. const tflite::SegmentSumOptions *builtin_options_as_SegmentSumOptions() const {
  10794. return builtin_options_type() == tflite::BuiltinOptions_SegmentSumOptions ? static_cast<const tflite::SegmentSumOptions *>(builtin_options()) : nullptr;
  10795. }
  10796. const tflite::BatchMatMulOptions *builtin_options_as_BatchMatMulOptions() const {
  10797. return builtin_options_type() == tflite::BuiltinOptions_BatchMatMulOptions ? static_cast<const tflite::BatchMatMulOptions *>(builtin_options()) : nullptr;
  10798. }
  10799. const tflite::CumsumOptions *builtin_options_as_CumsumOptions() const {
  10800. return builtin_options_type() == tflite::BuiltinOptions_CumsumOptions ? static_cast<const tflite::CumsumOptions *>(builtin_options()) : nullptr;
  10801. }
  10802. const tflite::CallOnceOptions *builtin_options_as_CallOnceOptions() const {
  10803. return builtin_options_type() == tflite::BuiltinOptions_CallOnceOptions ? static_cast<const tflite::CallOnceOptions *>(builtin_options()) : nullptr;
  10804. }
  10805. const tflite::BroadcastToOptions *builtin_options_as_BroadcastToOptions() const {
  10806. return builtin_options_type() == tflite::BuiltinOptions_BroadcastToOptions ? static_cast<const tflite::BroadcastToOptions *>(builtin_options()) : nullptr;
  10807. }
  10808. const tflite::Rfft2dOptions *builtin_options_as_Rfft2dOptions() const {
  10809. return builtin_options_type() == tflite::BuiltinOptions_Rfft2dOptions ? static_cast<const tflite::Rfft2dOptions *>(builtin_options()) : nullptr;
  10810. }
  10811. const tflite::Conv3DOptions *builtin_options_as_Conv3DOptions() const {
  10812. return builtin_options_type() == tflite::BuiltinOptions_Conv3DOptions ? static_cast<const tflite::Conv3DOptions *>(builtin_options()) : nullptr;
  10813. }
  10814. const tflite::HashtableOptions *builtin_options_as_HashtableOptions() const {
  10815. return builtin_options_type() == tflite::BuiltinOptions_HashtableOptions ? static_cast<const tflite::HashtableOptions *>(builtin_options()) : nullptr;
  10816. }
  10817. const tflite::HashtableFindOptions *builtin_options_as_HashtableFindOptions() const {
  10818. return builtin_options_type() == tflite::BuiltinOptions_HashtableFindOptions ? static_cast<const tflite::HashtableFindOptions *>(builtin_options()) : nullptr;
  10819. }
  10820. const tflite::HashtableImportOptions *builtin_options_as_HashtableImportOptions() const {
  10821. return builtin_options_type() == tflite::BuiltinOptions_HashtableImportOptions ? static_cast<const tflite::HashtableImportOptions *>(builtin_options()) : nullptr;
  10822. }
  10823. const tflite::HashtableSizeOptions *builtin_options_as_HashtableSizeOptions() const {
  10824. return builtin_options_type() == tflite::BuiltinOptions_HashtableSizeOptions ? static_cast<const tflite::HashtableSizeOptions *>(builtin_options()) : nullptr;
  10825. }
  10826. const tflite::VarHandleOptions *builtin_options_as_VarHandleOptions() const {
  10827. return builtin_options_type() == tflite::BuiltinOptions_VarHandleOptions ? static_cast<const tflite::VarHandleOptions *>(builtin_options()) : nullptr;
  10828. }
  10829. const tflite::ReadVariableOptions *builtin_options_as_ReadVariableOptions() const {
  10830. return builtin_options_type() == tflite::BuiltinOptions_ReadVariableOptions ? static_cast<const tflite::ReadVariableOptions *>(builtin_options()) : nullptr;
  10831. }
  10832. const tflite::AssignVariableOptions *builtin_options_as_AssignVariableOptions() const {
  10833. return builtin_options_type() == tflite::BuiltinOptions_AssignVariableOptions ? static_cast<const tflite::AssignVariableOptions *>(builtin_options()) : nullptr;
  10834. }
  10835. const tflite::RandomOptions *builtin_options_as_RandomOptions() const {
  10836. return builtin_options_type() == tflite::BuiltinOptions_RandomOptions ? static_cast<const tflite::RandomOptions *>(builtin_options()) : nullptr;
  10837. }
  10838. const tflite::BucketizeOptions *builtin_options_as_BucketizeOptions() const {
  10839. return builtin_options_type() == tflite::BuiltinOptions_BucketizeOptions ? static_cast<const tflite::BucketizeOptions *>(builtin_options()) : nullptr;
  10840. }
  10841. const tflite::GeluOptions *builtin_options_as_GeluOptions() const {
  10842. return builtin_options_type() == tflite::BuiltinOptions_GeluOptions ? static_cast<const tflite::GeluOptions *>(builtin_options()) : nullptr;
  10843. }
  10844. const tflite::DynamicUpdateSliceOptions *builtin_options_as_DynamicUpdateSliceOptions() const {
  10845. return builtin_options_type() == tflite::BuiltinOptions_DynamicUpdateSliceOptions ? static_cast<const tflite::DynamicUpdateSliceOptions *>(builtin_options()) : nullptr;
  10846. }
  10847. const tflite::UnsortedSegmentProdOptions *builtin_options_as_UnsortedSegmentProdOptions() const {
  10848. return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentProdOptions ? static_cast<const tflite::UnsortedSegmentProdOptions *>(builtin_options()) : nullptr;
  10849. }
  10850. const tflite::UnsortedSegmentMaxOptions *builtin_options_as_UnsortedSegmentMaxOptions() const {
  10851. return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentMaxOptions ? static_cast<const tflite::UnsortedSegmentMaxOptions *>(builtin_options()) : nullptr;
  10852. }
  10853. const tflite::UnsortedSegmentMinOptions *builtin_options_as_UnsortedSegmentMinOptions() const {
  10854. return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentMinOptions ? static_cast<const tflite::UnsortedSegmentMinOptions *>(builtin_options()) : nullptr;
  10855. }
  10856. const tflite::UnsortedSegmentSumOptions *builtin_options_as_UnsortedSegmentSumOptions() const {
  10857. return builtin_options_type() == tflite::BuiltinOptions_UnsortedSegmentSumOptions ? static_cast<const tflite::UnsortedSegmentSumOptions *>(builtin_options()) : nullptr;
  10858. }
  10859. const tflite::ATan2Options *builtin_options_as_ATan2Options() const {
  10860. return builtin_options_type() == tflite::BuiltinOptions_ATan2Options ? static_cast<const tflite::ATan2Options *>(builtin_options()) : nullptr;
  10861. }
  10862. const flatbuffers::Vector<uint8_t> *custom_options() const {
  10863. return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_CUSTOM_OPTIONS);
  10864. }
  10865. tflite::CustomOptionsFormat custom_options_format() const {
  10866. return static_cast<tflite::CustomOptionsFormat>(GetField<int8_t>(VT_CUSTOM_OPTIONS_FORMAT, 0));
  10867. }
  10868. const flatbuffers::Vector<uint8_t> *mutating_variable_inputs() const {
  10869. return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_MUTATING_VARIABLE_INPUTS);
  10870. }
  10871. const flatbuffers::Vector<int32_t> *intermediates() const {
  10872. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_INTERMEDIATES);
  10873. }
  10874. bool Verify(flatbuffers::Verifier &verifier) const {
  10875. return VerifyTableStart(verifier) &&
  10876. VerifyField<uint32_t>(verifier, VT_OPCODE_INDEX) &&
  10877. VerifyOffset(verifier, VT_INPUTS) &&
  10878. verifier.VerifyVector(inputs()) &&
  10879. VerifyOffset(verifier, VT_OUTPUTS) &&
  10880. verifier.VerifyVector(outputs()) &&
  10881. VerifyField<uint8_t>(verifier, VT_BUILTIN_OPTIONS_TYPE) &&
  10882. VerifyOffset(verifier, VT_BUILTIN_OPTIONS) &&
  10883. VerifyBuiltinOptions(verifier, builtin_options(), builtin_options_type()) &&
  10884. VerifyOffset(verifier, VT_CUSTOM_OPTIONS) &&
  10885. verifier.VerifyVector(custom_options()) &&
  10886. VerifyField<int8_t>(verifier, VT_CUSTOM_OPTIONS_FORMAT) &&
  10887. VerifyOffset(verifier, VT_MUTATING_VARIABLE_INPUTS) &&
  10888. verifier.VerifyVector(mutating_variable_inputs()) &&
  10889. VerifyOffset(verifier, VT_INTERMEDIATES) &&
  10890. verifier.VerifyVector(intermediates()) &&
  10891. verifier.EndTable();
  10892. }
  10893. OperatorT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10894. void UnPackTo(OperatorT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  10895. static flatbuffers::Offset<Operator> Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  10896. };
  10897. template<> inline const tflite::Conv2DOptions *Operator::builtin_options_as<tflite::Conv2DOptions>() const {
  10898. return builtin_options_as_Conv2DOptions();
  10899. }
  10900. template<> inline const tflite::DepthwiseConv2DOptions *Operator::builtin_options_as<tflite::DepthwiseConv2DOptions>() const {
  10901. return builtin_options_as_DepthwiseConv2DOptions();
  10902. }
  10903. template<> inline const tflite::ConcatEmbeddingsOptions *Operator::builtin_options_as<tflite::ConcatEmbeddingsOptions>() const {
  10904. return builtin_options_as_ConcatEmbeddingsOptions();
  10905. }
  10906. template<> inline const tflite::LSHProjectionOptions *Operator::builtin_options_as<tflite::LSHProjectionOptions>() const {
  10907. return builtin_options_as_LSHProjectionOptions();
  10908. }
  10909. template<> inline const tflite::Pool2DOptions *Operator::builtin_options_as<tflite::Pool2DOptions>() const {
  10910. return builtin_options_as_Pool2DOptions();
  10911. }
  10912. template<> inline const tflite::SVDFOptions *Operator::builtin_options_as<tflite::SVDFOptions>() const {
  10913. return builtin_options_as_SVDFOptions();
  10914. }
  10915. template<> inline const tflite::RNNOptions *Operator::builtin_options_as<tflite::RNNOptions>() const {
  10916. return builtin_options_as_RNNOptions();
  10917. }
  10918. template<> inline const tflite::FullyConnectedOptions *Operator::builtin_options_as<tflite::FullyConnectedOptions>() const {
  10919. return builtin_options_as_FullyConnectedOptions();
  10920. }
  10921. template<> inline const tflite::SoftmaxOptions *Operator::builtin_options_as<tflite::SoftmaxOptions>() const {
  10922. return builtin_options_as_SoftmaxOptions();
  10923. }
  10924. template<> inline const tflite::ConcatenationOptions *Operator::builtin_options_as<tflite::ConcatenationOptions>() const {
  10925. return builtin_options_as_ConcatenationOptions();
  10926. }
  10927. template<> inline const tflite::AddOptions *Operator::builtin_options_as<tflite::AddOptions>() const {
  10928. return builtin_options_as_AddOptions();
  10929. }
  10930. template<> inline const tflite::L2NormOptions *Operator::builtin_options_as<tflite::L2NormOptions>() const {
  10931. return builtin_options_as_L2NormOptions();
  10932. }
  10933. template<> inline const tflite::LocalResponseNormalizationOptions *Operator::builtin_options_as<tflite::LocalResponseNormalizationOptions>() const {
  10934. return builtin_options_as_LocalResponseNormalizationOptions();
  10935. }
  10936. template<> inline const tflite::LSTMOptions *Operator::builtin_options_as<tflite::LSTMOptions>() const {
  10937. return builtin_options_as_LSTMOptions();
  10938. }
  10939. template<> inline const tflite::ResizeBilinearOptions *Operator::builtin_options_as<tflite::ResizeBilinearOptions>() const {
  10940. return builtin_options_as_ResizeBilinearOptions();
  10941. }
  10942. template<> inline const tflite::CallOptions *Operator::builtin_options_as<tflite::CallOptions>() const {
  10943. return builtin_options_as_CallOptions();
  10944. }
  10945. template<> inline const tflite::ReshapeOptions *Operator::builtin_options_as<tflite::ReshapeOptions>() const {
  10946. return builtin_options_as_ReshapeOptions();
  10947. }
  10948. template<> inline const tflite::SkipGramOptions *Operator::builtin_options_as<tflite::SkipGramOptions>() const {
  10949. return builtin_options_as_SkipGramOptions();
  10950. }
  10951. template<> inline const tflite::SpaceToDepthOptions *Operator::builtin_options_as<tflite::SpaceToDepthOptions>() const {
  10952. return builtin_options_as_SpaceToDepthOptions();
  10953. }
  10954. template<> inline const tflite::EmbeddingLookupSparseOptions *Operator::builtin_options_as<tflite::EmbeddingLookupSparseOptions>() const {
  10955. return builtin_options_as_EmbeddingLookupSparseOptions();
  10956. }
  10957. template<> inline const tflite::MulOptions *Operator::builtin_options_as<tflite::MulOptions>() const {
  10958. return builtin_options_as_MulOptions();
  10959. }
  10960. template<> inline const tflite::PadOptions *Operator::builtin_options_as<tflite::PadOptions>() const {
  10961. return builtin_options_as_PadOptions();
  10962. }
  10963. template<> inline const tflite::GatherOptions *Operator::builtin_options_as<tflite::GatherOptions>() const {
  10964. return builtin_options_as_GatherOptions();
  10965. }
  10966. template<> inline const tflite::BatchToSpaceNDOptions *Operator::builtin_options_as<tflite::BatchToSpaceNDOptions>() const {
  10967. return builtin_options_as_BatchToSpaceNDOptions();
  10968. }
  10969. template<> inline const tflite::SpaceToBatchNDOptions *Operator::builtin_options_as<tflite::SpaceToBatchNDOptions>() const {
  10970. return builtin_options_as_SpaceToBatchNDOptions();
  10971. }
  10972. template<> inline const tflite::TransposeOptions *Operator::builtin_options_as<tflite::TransposeOptions>() const {
  10973. return builtin_options_as_TransposeOptions();
  10974. }
  10975. template<> inline const tflite::ReducerOptions *Operator::builtin_options_as<tflite::ReducerOptions>() const {
  10976. return builtin_options_as_ReducerOptions();
  10977. }
  10978. template<> inline const tflite::SubOptions *Operator::builtin_options_as<tflite::SubOptions>() const {
  10979. return builtin_options_as_SubOptions();
  10980. }
  10981. template<> inline const tflite::DivOptions *Operator::builtin_options_as<tflite::DivOptions>() const {
  10982. return builtin_options_as_DivOptions();
  10983. }
  10984. template<> inline const tflite::SqueezeOptions *Operator::builtin_options_as<tflite::SqueezeOptions>() const {
  10985. return builtin_options_as_SqueezeOptions();
  10986. }
  10987. template<> inline const tflite::SequenceRNNOptions *Operator::builtin_options_as<tflite::SequenceRNNOptions>() const {
  10988. return builtin_options_as_SequenceRNNOptions();
  10989. }
  10990. template<> inline const tflite::StridedSliceOptions *Operator::builtin_options_as<tflite::StridedSliceOptions>() const {
  10991. return builtin_options_as_StridedSliceOptions();
  10992. }
  10993. template<> inline const tflite::ExpOptions *Operator::builtin_options_as<tflite::ExpOptions>() const {
  10994. return builtin_options_as_ExpOptions();
  10995. }
  10996. template<> inline const tflite::TopKV2Options *Operator::builtin_options_as<tflite::TopKV2Options>() const {
  10997. return builtin_options_as_TopKV2Options();
  10998. }
  10999. template<> inline const tflite::SplitOptions *Operator::builtin_options_as<tflite::SplitOptions>() const {
  11000. return builtin_options_as_SplitOptions();
  11001. }
  11002. template<> inline const tflite::LogSoftmaxOptions *Operator::builtin_options_as<tflite::LogSoftmaxOptions>() const {
  11003. return builtin_options_as_LogSoftmaxOptions();
  11004. }
  11005. template<> inline const tflite::CastOptions *Operator::builtin_options_as<tflite::CastOptions>() const {
  11006. return builtin_options_as_CastOptions();
  11007. }
  11008. template<> inline const tflite::DequantizeOptions *Operator::builtin_options_as<tflite::DequantizeOptions>() const {
  11009. return builtin_options_as_DequantizeOptions();
  11010. }
  11011. template<> inline const tflite::MaximumMinimumOptions *Operator::builtin_options_as<tflite::MaximumMinimumOptions>() const {
  11012. return builtin_options_as_MaximumMinimumOptions();
  11013. }
  11014. template<> inline const tflite::ArgMaxOptions *Operator::builtin_options_as<tflite::ArgMaxOptions>() const {
  11015. return builtin_options_as_ArgMaxOptions();
  11016. }
  11017. template<> inline const tflite::LessOptions *Operator::builtin_options_as<tflite::LessOptions>() const {
  11018. return builtin_options_as_LessOptions();
  11019. }
  11020. template<> inline const tflite::NegOptions *Operator::builtin_options_as<tflite::NegOptions>() const {
  11021. return builtin_options_as_NegOptions();
  11022. }
  11023. template<> inline const tflite::PadV2Options *Operator::builtin_options_as<tflite::PadV2Options>() const {
  11024. return builtin_options_as_PadV2Options();
  11025. }
  11026. template<> inline const tflite::GreaterOptions *Operator::builtin_options_as<tflite::GreaterOptions>() const {
  11027. return builtin_options_as_GreaterOptions();
  11028. }
  11029. template<> inline const tflite::GreaterEqualOptions *Operator::builtin_options_as<tflite::GreaterEqualOptions>() const {
  11030. return builtin_options_as_GreaterEqualOptions();
  11031. }
  11032. template<> inline const tflite::LessEqualOptions *Operator::builtin_options_as<tflite::LessEqualOptions>() const {
  11033. return builtin_options_as_LessEqualOptions();
  11034. }
  11035. template<> inline const tflite::SelectOptions *Operator::builtin_options_as<tflite::SelectOptions>() const {
  11036. return builtin_options_as_SelectOptions();
  11037. }
  11038. template<> inline const tflite::SliceOptions *Operator::builtin_options_as<tflite::SliceOptions>() const {
  11039. return builtin_options_as_SliceOptions();
  11040. }
  11041. template<> inline const tflite::TransposeConvOptions *Operator::builtin_options_as<tflite::TransposeConvOptions>() const {
  11042. return builtin_options_as_TransposeConvOptions();
  11043. }
  11044. template<> inline const tflite::SparseToDenseOptions *Operator::builtin_options_as<tflite::SparseToDenseOptions>() const {
  11045. return builtin_options_as_SparseToDenseOptions();
  11046. }
  11047. template<> inline const tflite::TileOptions *Operator::builtin_options_as<tflite::TileOptions>() const {
  11048. return builtin_options_as_TileOptions();
  11049. }
  11050. template<> inline const tflite::ExpandDimsOptions *Operator::builtin_options_as<tflite::ExpandDimsOptions>() const {
  11051. return builtin_options_as_ExpandDimsOptions();
  11052. }
  11053. template<> inline const tflite::EqualOptions *Operator::builtin_options_as<tflite::EqualOptions>() const {
  11054. return builtin_options_as_EqualOptions();
  11055. }
  11056. template<> inline const tflite::NotEqualOptions *Operator::builtin_options_as<tflite::NotEqualOptions>() const {
  11057. return builtin_options_as_NotEqualOptions();
  11058. }
  11059. template<> inline const tflite::ShapeOptions *Operator::builtin_options_as<tflite::ShapeOptions>() const {
  11060. return builtin_options_as_ShapeOptions();
  11061. }
  11062. template<> inline const tflite::PowOptions *Operator::builtin_options_as<tflite::PowOptions>() const {
  11063. return builtin_options_as_PowOptions();
  11064. }
  11065. template<> inline const tflite::ArgMinOptions *Operator::builtin_options_as<tflite::ArgMinOptions>() const {
  11066. return builtin_options_as_ArgMinOptions();
  11067. }
  11068. template<> inline const tflite::FakeQuantOptions *Operator::builtin_options_as<tflite::FakeQuantOptions>() const {
  11069. return builtin_options_as_FakeQuantOptions();
  11070. }
  11071. template<> inline const tflite::PackOptions *Operator::builtin_options_as<tflite::PackOptions>() const {
  11072. return builtin_options_as_PackOptions();
  11073. }
  11074. template<> inline const tflite::LogicalOrOptions *Operator::builtin_options_as<tflite::LogicalOrOptions>() const {
  11075. return builtin_options_as_LogicalOrOptions();
  11076. }
  11077. template<> inline const tflite::OneHotOptions *Operator::builtin_options_as<tflite::OneHotOptions>() const {
  11078. return builtin_options_as_OneHotOptions();
  11079. }
  11080. template<> inline const tflite::LogicalAndOptions *Operator::builtin_options_as<tflite::LogicalAndOptions>() const {
  11081. return builtin_options_as_LogicalAndOptions();
  11082. }
  11083. template<> inline const tflite::LogicalNotOptions *Operator::builtin_options_as<tflite::LogicalNotOptions>() const {
  11084. return builtin_options_as_LogicalNotOptions();
  11085. }
  11086. template<> inline const tflite::UnpackOptions *Operator::builtin_options_as<tflite::UnpackOptions>() const {
  11087. return builtin_options_as_UnpackOptions();
  11088. }
  11089. template<> inline const tflite::FloorDivOptions *Operator::builtin_options_as<tflite::FloorDivOptions>() const {
  11090. return builtin_options_as_FloorDivOptions();
  11091. }
  11092. template<> inline const tflite::SquareOptions *Operator::builtin_options_as<tflite::SquareOptions>() const {
  11093. return builtin_options_as_SquareOptions();
  11094. }
  11095. template<> inline const tflite::ZerosLikeOptions *Operator::builtin_options_as<tflite::ZerosLikeOptions>() const {
  11096. return builtin_options_as_ZerosLikeOptions();
  11097. }
  11098. template<> inline const tflite::FillOptions *Operator::builtin_options_as<tflite::FillOptions>() const {
  11099. return builtin_options_as_FillOptions();
  11100. }
  11101. template<> inline const tflite::BidirectionalSequenceLSTMOptions *Operator::builtin_options_as<tflite::BidirectionalSequenceLSTMOptions>() const {
  11102. return builtin_options_as_BidirectionalSequenceLSTMOptions();
  11103. }
  11104. template<> inline const tflite::BidirectionalSequenceRNNOptions *Operator::builtin_options_as<tflite::BidirectionalSequenceRNNOptions>() const {
  11105. return builtin_options_as_BidirectionalSequenceRNNOptions();
  11106. }
  11107. template<> inline const tflite::UnidirectionalSequenceLSTMOptions *Operator::builtin_options_as<tflite::UnidirectionalSequenceLSTMOptions>() const {
  11108. return builtin_options_as_UnidirectionalSequenceLSTMOptions();
  11109. }
  11110. template<> inline const tflite::FloorModOptions *Operator::builtin_options_as<tflite::FloorModOptions>() const {
  11111. return builtin_options_as_FloorModOptions();
  11112. }
  11113. template<> inline const tflite::RangeOptions *Operator::builtin_options_as<tflite::RangeOptions>() const {
  11114. return builtin_options_as_RangeOptions();
  11115. }
  11116. template<> inline const tflite::ResizeNearestNeighborOptions *Operator::builtin_options_as<tflite::ResizeNearestNeighborOptions>() const {
  11117. return builtin_options_as_ResizeNearestNeighborOptions();
  11118. }
  11119. template<> inline const tflite::LeakyReluOptions *Operator::builtin_options_as<tflite::LeakyReluOptions>() const {
  11120. return builtin_options_as_LeakyReluOptions();
  11121. }
  11122. template<> inline const tflite::SquaredDifferenceOptions *Operator::builtin_options_as<tflite::SquaredDifferenceOptions>() const {
  11123. return builtin_options_as_SquaredDifferenceOptions();
  11124. }
  11125. template<> inline const tflite::MirrorPadOptions *Operator::builtin_options_as<tflite::MirrorPadOptions>() const {
  11126. return builtin_options_as_MirrorPadOptions();
  11127. }
  11128. template<> inline const tflite::AbsOptions *Operator::builtin_options_as<tflite::AbsOptions>() const {
  11129. return builtin_options_as_AbsOptions();
  11130. }
  11131. template<> inline const tflite::SplitVOptions *Operator::builtin_options_as<tflite::SplitVOptions>() const {
  11132. return builtin_options_as_SplitVOptions();
  11133. }
  11134. template<> inline const tflite::UniqueOptions *Operator::builtin_options_as<tflite::UniqueOptions>() const {
  11135. return builtin_options_as_UniqueOptions();
  11136. }
  11137. template<> inline const tflite::ReverseV2Options *Operator::builtin_options_as<tflite::ReverseV2Options>() const {
  11138. return builtin_options_as_ReverseV2Options();
  11139. }
  11140. template<> inline const tflite::AddNOptions *Operator::builtin_options_as<tflite::AddNOptions>() const {
  11141. return builtin_options_as_AddNOptions();
  11142. }
  11143. template<> inline const tflite::GatherNdOptions *Operator::builtin_options_as<tflite::GatherNdOptions>() const {
  11144. return builtin_options_as_GatherNdOptions();
  11145. }
  11146. template<> inline const tflite::CosOptions *Operator::builtin_options_as<tflite::CosOptions>() const {
  11147. return builtin_options_as_CosOptions();
  11148. }
  11149. template<> inline const tflite::WhereOptions *Operator::builtin_options_as<tflite::WhereOptions>() const {
  11150. return builtin_options_as_WhereOptions();
  11151. }
  11152. template<> inline const tflite::RankOptions *Operator::builtin_options_as<tflite::RankOptions>() const {
  11153. return builtin_options_as_RankOptions();
  11154. }
  11155. template<> inline const tflite::ReverseSequenceOptions *Operator::builtin_options_as<tflite::ReverseSequenceOptions>() const {
  11156. return builtin_options_as_ReverseSequenceOptions();
  11157. }
  11158. template<> inline const tflite::MatrixDiagOptions *Operator::builtin_options_as<tflite::MatrixDiagOptions>() const {
  11159. return builtin_options_as_MatrixDiagOptions();
  11160. }
  11161. template<> inline const tflite::QuantizeOptions *Operator::builtin_options_as<tflite::QuantizeOptions>() const {
  11162. return builtin_options_as_QuantizeOptions();
  11163. }
  11164. template<> inline const tflite::MatrixSetDiagOptions *Operator::builtin_options_as<tflite::MatrixSetDiagOptions>() const {
  11165. return builtin_options_as_MatrixSetDiagOptions();
  11166. }
  11167. template<> inline const tflite::HardSwishOptions *Operator::builtin_options_as<tflite::HardSwishOptions>() const {
  11168. return builtin_options_as_HardSwishOptions();
  11169. }
  11170. template<> inline const tflite::IfOptions *Operator::builtin_options_as<tflite::IfOptions>() const {
  11171. return builtin_options_as_IfOptions();
  11172. }
  11173. template<> inline const tflite::WhileOptions *Operator::builtin_options_as<tflite::WhileOptions>() const {
  11174. return builtin_options_as_WhileOptions();
  11175. }
  11176. template<> inline const tflite::DepthToSpaceOptions *Operator::builtin_options_as<tflite::DepthToSpaceOptions>() const {
  11177. return builtin_options_as_DepthToSpaceOptions();
  11178. }
  11179. template<> inline const tflite::NonMaxSuppressionV4Options *Operator::builtin_options_as<tflite::NonMaxSuppressionV4Options>() const {
  11180. return builtin_options_as_NonMaxSuppressionV4Options();
  11181. }
  11182. template<> inline const tflite::NonMaxSuppressionV5Options *Operator::builtin_options_as<tflite::NonMaxSuppressionV5Options>() const {
  11183. return builtin_options_as_NonMaxSuppressionV5Options();
  11184. }
  11185. template<> inline const tflite::ScatterNdOptions *Operator::builtin_options_as<tflite::ScatterNdOptions>() const {
  11186. return builtin_options_as_ScatterNdOptions();
  11187. }
  11188. template<> inline const tflite::SelectV2Options *Operator::builtin_options_as<tflite::SelectV2Options>() const {
  11189. return builtin_options_as_SelectV2Options();
  11190. }
  11191. template<> inline const tflite::DensifyOptions *Operator::builtin_options_as<tflite::DensifyOptions>() const {
  11192. return builtin_options_as_DensifyOptions();
  11193. }
  11194. template<> inline const tflite::SegmentSumOptions *Operator::builtin_options_as<tflite::SegmentSumOptions>() const {
  11195. return builtin_options_as_SegmentSumOptions();
  11196. }
  11197. template<> inline const tflite::BatchMatMulOptions *Operator::builtin_options_as<tflite::BatchMatMulOptions>() const {
  11198. return builtin_options_as_BatchMatMulOptions();
  11199. }
  11200. template<> inline const tflite::CumsumOptions *Operator::builtin_options_as<tflite::CumsumOptions>() const {
  11201. return builtin_options_as_CumsumOptions();
  11202. }
  11203. template<> inline const tflite::CallOnceOptions *Operator::builtin_options_as<tflite::CallOnceOptions>() const {
  11204. return builtin_options_as_CallOnceOptions();
  11205. }
  11206. template<> inline const tflite::BroadcastToOptions *Operator::builtin_options_as<tflite::BroadcastToOptions>() const {
  11207. return builtin_options_as_BroadcastToOptions();
  11208. }
  11209. template<> inline const tflite::Rfft2dOptions *Operator::builtin_options_as<tflite::Rfft2dOptions>() const {
  11210. return builtin_options_as_Rfft2dOptions();
  11211. }
  11212. template<> inline const tflite::Conv3DOptions *Operator::builtin_options_as<tflite::Conv3DOptions>() const {
  11213. return builtin_options_as_Conv3DOptions();
  11214. }
  11215. template<> inline const tflite::HashtableOptions *Operator::builtin_options_as<tflite::HashtableOptions>() const {
  11216. return builtin_options_as_HashtableOptions();
  11217. }
  11218. template<> inline const tflite::HashtableFindOptions *Operator::builtin_options_as<tflite::HashtableFindOptions>() const {
  11219. return builtin_options_as_HashtableFindOptions();
  11220. }
  11221. template<> inline const tflite::HashtableImportOptions *Operator::builtin_options_as<tflite::HashtableImportOptions>() const {
  11222. return builtin_options_as_HashtableImportOptions();
  11223. }
  11224. template<> inline const tflite::HashtableSizeOptions *Operator::builtin_options_as<tflite::HashtableSizeOptions>() const {
  11225. return builtin_options_as_HashtableSizeOptions();
  11226. }
  11227. template<> inline const tflite::VarHandleOptions *Operator::builtin_options_as<tflite::VarHandleOptions>() const {
  11228. return builtin_options_as_VarHandleOptions();
  11229. }
  11230. template<> inline const tflite::ReadVariableOptions *Operator::builtin_options_as<tflite::ReadVariableOptions>() const {
  11231. return builtin_options_as_ReadVariableOptions();
  11232. }
  11233. template<> inline const tflite::AssignVariableOptions *Operator::builtin_options_as<tflite::AssignVariableOptions>() const {
  11234. return builtin_options_as_AssignVariableOptions();
  11235. }
  11236. template<> inline const tflite::RandomOptions *Operator::builtin_options_as<tflite::RandomOptions>() const {
  11237. return builtin_options_as_RandomOptions();
  11238. }
  11239. template<> inline const tflite::BucketizeOptions *Operator::builtin_options_as<tflite::BucketizeOptions>() const {
  11240. return builtin_options_as_BucketizeOptions();
  11241. }
  11242. template<> inline const tflite::GeluOptions *Operator::builtin_options_as<tflite::GeluOptions>() const {
  11243. return builtin_options_as_GeluOptions();
  11244. }
  11245. template<> inline const tflite::DynamicUpdateSliceOptions *Operator::builtin_options_as<tflite::DynamicUpdateSliceOptions>() const {
  11246. return builtin_options_as_DynamicUpdateSliceOptions();
  11247. }
  11248. template<> inline const tflite::UnsortedSegmentProdOptions *Operator::builtin_options_as<tflite::UnsortedSegmentProdOptions>() const {
  11249. return builtin_options_as_UnsortedSegmentProdOptions();
  11250. }
  11251. template<> inline const tflite::UnsortedSegmentMaxOptions *Operator::builtin_options_as<tflite::UnsortedSegmentMaxOptions>() const {
  11252. return builtin_options_as_UnsortedSegmentMaxOptions();
  11253. }
  11254. template<> inline const tflite::UnsortedSegmentMinOptions *Operator::builtin_options_as<tflite::UnsortedSegmentMinOptions>() const {
  11255. return builtin_options_as_UnsortedSegmentMinOptions();
  11256. }
  11257. template<> inline const tflite::UnsortedSegmentSumOptions *Operator::builtin_options_as<tflite::UnsortedSegmentSumOptions>() const {
  11258. return builtin_options_as_UnsortedSegmentSumOptions();
  11259. }
  11260. template<> inline const tflite::ATan2Options *Operator::builtin_options_as<tflite::ATan2Options>() const {
  11261. return builtin_options_as_ATan2Options();
  11262. }
  11263. struct OperatorBuilder {
  11264. typedef Operator Table;
  11265. flatbuffers::FlatBufferBuilder &fbb_;
  11266. flatbuffers::uoffset_t start_;
  11267. void add_opcode_index(uint32_t opcode_index) {
  11268. fbb_.AddElement<uint32_t>(Operator::VT_OPCODE_INDEX, opcode_index, 0);
  11269. }
  11270. void add_inputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs) {
  11271. fbb_.AddOffset(Operator::VT_INPUTS, inputs);
  11272. }
  11273. void add_outputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs) {
  11274. fbb_.AddOffset(Operator::VT_OUTPUTS, outputs);
  11275. }
  11276. void add_builtin_options_type(tflite::BuiltinOptions builtin_options_type) {
  11277. fbb_.AddElement<uint8_t>(Operator::VT_BUILTIN_OPTIONS_TYPE, static_cast<uint8_t>(builtin_options_type), 0);
  11278. }
  11279. void add_builtin_options(flatbuffers::Offset<void> builtin_options) {
  11280. fbb_.AddOffset(Operator::VT_BUILTIN_OPTIONS, builtin_options);
  11281. }
  11282. void add_custom_options(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom_options) {
  11283. fbb_.AddOffset(Operator::VT_CUSTOM_OPTIONS, custom_options);
  11284. }
  11285. void add_custom_options_format(tflite::CustomOptionsFormat custom_options_format) {
  11286. fbb_.AddElement<int8_t>(Operator::VT_CUSTOM_OPTIONS_FORMAT, static_cast<int8_t>(custom_options_format), 0);
  11287. }
  11288. void add_mutating_variable_inputs(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> mutating_variable_inputs) {
  11289. fbb_.AddOffset(Operator::VT_MUTATING_VARIABLE_INPUTS, mutating_variable_inputs);
  11290. }
  11291. void add_intermediates(flatbuffers::Offset<flatbuffers::Vector<int32_t>> intermediates) {
  11292. fbb_.AddOffset(Operator::VT_INTERMEDIATES, intermediates);
  11293. }
  11294. explicit OperatorBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11295. : fbb_(_fbb) {
  11296. start_ = fbb_.StartTable();
  11297. }
  11298. OperatorBuilder &operator=(const OperatorBuilder &);
  11299. flatbuffers::Offset<Operator> Finish() {
  11300. const auto end = fbb_.EndTable(start_);
  11301. auto o = flatbuffers::Offset<Operator>(end);
  11302. return o;
  11303. }
  11304. };
  11305. inline flatbuffers::Offset<Operator> CreateOperator(
  11306. flatbuffers::FlatBufferBuilder &_fbb,
  11307. uint32_t opcode_index = 0,
  11308. flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs = 0,
  11309. flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs = 0,
  11310. tflite::BuiltinOptions builtin_options_type = tflite::BuiltinOptions_NONE,
  11311. flatbuffers::Offset<void> builtin_options = 0,
  11312. flatbuffers::Offset<flatbuffers::Vector<uint8_t>> custom_options = 0,
  11313. tflite::CustomOptionsFormat custom_options_format = tflite::CustomOptionsFormat_FLEXBUFFERS,
  11314. flatbuffers::Offset<flatbuffers::Vector<uint8_t>> mutating_variable_inputs = 0,
  11315. flatbuffers::Offset<flatbuffers::Vector<int32_t>> intermediates = 0) {
  11316. OperatorBuilder builder_(_fbb);
  11317. builder_.add_intermediates(intermediates);
  11318. builder_.add_mutating_variable_inputs(mutating_variable_inputs);
  11319. builder_.add_custom_options(custom_options);
  11320. builder_.add_builtin_options(builtin_options);
  11321. builder_.add_outputs(outputs);
  11322. builder_.add_inputs(inputs);
  11323. builder_.add_opcode_index(opcode_index);
  11324. builder_.add_custom_options_format(custom_options_format);
  11325. builder_.add_builtin_options_type(builtin_options_type);
  11326. return builder_.Finish();
  11327. }
  11328. inline flatbuffers::Offset<Operator> CreateOperatorDirect(
  11329. flatbuffers::FlatBufferBuilder &_fbb,
  11330. uint32_t opcode_index = 0,
  11331. const std::vector<int32_t> *inputs = nullptr,
  11332. const std::vector<int32_t> *outputs = nullptr,
  11333. tflite::BuiltinOptions builtin_options_type = tflite::BuiltinOptions_NONE,
  11334. flatbuffers::Offset<void> builtin_options = 0,
  11335. const std::vector<uint8_t> *custom_options = nullptr,
  11336. tflite::CustomOptionsFormat custom_options_format = tflite::CustomOptionsFormat_FLEXBUFFERS,
  11337. const std::vector<uint8_t> *mutating_variable_inputs = nullptr,
  11338. const std::vector<int32_t> *intermediates = nullptr) {
  11339. auto inputs__ = inputs ? _fbb.CreateVector<int32_t>(*inputs) : 0;
  11340. auto outputs__ = outputs ? _fbb.CreateVector<int32_t>(*outputs) : 0;
  11341. auto custom_options__ = custom_options ? _fbb.CreateVector<uint8_t>(*custom_options) : 0;
  11342. auto mutating_variable_inputs__ = mutating_variable_inputs ? _fbb.CreateVector<uint8_t>(*mutating_variable_inputs) : 0;
  11343. auto intermediates__ = intermediates ? _fbb.CreateVector<int32_t>(*intermediates) : 0;
  11344. return tflite::CreateOperator(
  11345. _fbb,
  11346. opcode_index,
  11347. inputs__,
  11348. outputs__,
  11349. builtin_options_type,
  11350. builtin_options,
  11351. custom_options__,
  11352. custom_options_format,
  11353. mutating_variable_inputs__,
  11354. intermediates__);
  11355. }
  11356. flatbuffers::Offset<Operator> CreateOperator(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11357. struct SubGraphT : public flatbuffers::NativeTable {
  11358. typedef SubGraph TableType;
  11359. std::vector<std::unique_ptr<tflite::TensorT>> tensors;
  11360. std::vector<int32_t> inputs;
  11361. std::vector<int32_t> outputs;
  11362. std::vector<std::unique_ptr<tflite::OperatorT>> operators;
  11363. std::string name;
  11364. SubGraphT() {
  11365. }
  11366. };
  11367. struct SubGraph FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11368. typedef SubGraphT NativeTableType;
  11369. typedef SubGraphBuilder Builder;
  11370. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11371. VT_TENSORS = 4,
  11372. VT_INPUTS = 6,
  11373. VT_OUTPUTS = 8,
  11374. VT_OPERATORS = 10,
  11375. VT_NAME = 12
  11376. };
  11377. const flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>> *tensors() const {
  11378. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>> *>(VT_TENSORS);
  11379. }
  11380. const flatbuffers::Vector<int32_t> *inputs() const {
  11381. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_INPUTS);
  11382. }
  11383. const flatbuffers::Vector<int32_t> *outputs() const {
  11384. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_OUTPUTS);
  11385. }
  11386. const flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>> *operators() const {
  11387. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>> *>(VT_OPERATORS);
  11388. }
  11389. const flatbuffers::String *name() const {
  11390. return GetPointer<const flatbuffers::String *>(VT_NAME);
  11391. }
  11392. bool Verify(flatbuffers::Verifier &verifier) const {
  11393. return VerifyTableStart(verifier) &&
  11394. VerifyOffset(verifier, VT_TENSORS) &&
  11395. verifier.VerifyVector(tensors()) &&
  11396. verifier.VerifyVectorOfTables(tensors()) &&
  11397. VerifyOffset(verifier, VT_INPUTS) &&
  11398. verifier.VerifyVector(inputs()) &&
  11399. VerifyOffset(verifier, VT_OUTPUTS) &&
  11400. verifier.VerifyVector(outputs()) &&
  11401. VerifyOffset(verifier, VT_OPERATORS) &&
  11402. verifier.VerifyVector(operators()) &&
  11403. verifier.VerifyVectorOfTables(operators()) &&
  11404. VerifyOffset(verifier, VT_NAME) &&
  11405. verifier.VerifyString(name()) &&
  11406. verifier.EndTable();
  11407. }
  11408. SubGraphT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11409. void UnPackTo(SubGraphT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11410. static flatbuffers::Offset<SubGraph> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11411. };
  11412. struct SubGraphBuilder {
  11413. typedef SubGraph Table;
  11414. flatbuffers::FlatBufferBuilder &fbb_;
  11415. flatbuffers::uoffset_t start_;
  11416. void add_tensors(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>>> tensors) {
  11417. fbb_.AddOffset(SubGraph::VT_TENSORS, tensors);
  11418. }
  11419. void add_inputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs) {
  11420. fbb_.AddOffset(SubGraph::VT_INPUTS, inputs);
  11421. }
  11422. void add_outputs(flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs) {
  11423. fbb_.AddOffset(SubGraph::VT_OUTPUTS, outputs);
  11424. }
  11425. void add_operators(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>>> operators) {
  11426. fbb_.AddOffset(SubGraph::VT_OPERATORS, operators);
  11427. }
  11428. void add_name(flatbuffers::Offset<flatbuffers::String> name) {
  11429. fbb_.AddOffset(SubGraph::VT_NAME, name);
  11430. }
  11431. explicit SubGraphBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11432. : fbb_(_fbb) {
  11433. start_ = fbb_.StartTable();
  11434. }
  11435. SubGraphBuilder &operator=(const SubGraphBuilder &);
  11436. flatbuffers::Offset<SubGraph> Finish() {
  11437. const auto end = fbb_.EndTable(start_);
  11438. auto o = flatbuffers::Offset<SubGraph>(end);
  11439. return o;
  11440. }
  11441. };
  11442. inline flatbuffers::Offset<SubGraph> CreateSubGraph(
  11443. flatbuffers::FlatBufferBuilder &_fbb,
  11444. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Tensor>>> tensors = 0,
  11445. flatbuffers::Offset<flatbuffers::Vector<int32_t>> inputs = 0,
  11446. flatbuffers::Offset<flatbuffers::Vector<int32_t>> outputs = 0,
  11447. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Operator>>> operators = 0,
  11448. flatbuffers::Offset<flatbuffers::String> name = 0) {
  11449. SubGraphBuilder builder_(_fbb);
  11450. builder_.add_name(name);
  11451. builder_.add_operators(operators);
  11452. builder_.add_outputs(outputs);
  11453. builder_.add_inputs(inputs);
  11454. builder_.add_tensors(tensors);
  11455. return builder_.Finish();
  11456. }
  11457. inline flatbuffers::Offset<SubGraph> CreateSubGraphDirect(
  11458. flatbuffers::FlatBufferBuilder &_fbb,
  11459. const std::vector<flatbuffers::Offset<tflite::Tensor>> *tensors = nullptr,
  11460. const std::vector<int32_t> *inputs = nullptr,
  11461. const std::vector<int32_t> *outputs = nullptr,
  11462. const std::vector<flatbuffers::Offset<tflite::Operator>> *operators = nullptr,
  11463. const char *name = nullptr) {
  11464. auto tensors__ = tensors ? _fbb.CreateVector<flatbuffers::Offset<tflite::Tensor>>(*tensors) : 0;
  11465. auto inputs__ = inputs ? _fbb.CreateVector<int32_t>(*inputs) : 0;
  11466. auto outputs__ = outputs ? _fbb.CreateVector<int32_t>(*outputs) : 0;
  11467. auto operators__ = operators ? _fbb.CreateVector<flatbuffers::Offset<tflite::Operator>>(*operators) : 0;
  11468. auto name__ = name ? _fbb.CreateString(name) : 0;
  11469. return tflite::CreateSubGraph(
  11470. _fbb,
  11471. tensors__,
  11472. inputs__,
  11473. outputs__,
  11474. operators__,
  11475. name__);
  11476. }
  11477. flatbuffers::Offset<SubGraph> CreateSubGraph(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11478. struct BufferT : public flatbuffers::NativeTable {
  11479. typedef Buffer TableType;
  11480. std::vector<uint8_t> data;
  11481. BufferT() {
  11482. }
  11483. };
  11484. struct Buffer FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11485. typedef BufferT NativeTableType;
  11486. typedef BufferBuilder Builder;
  11487. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11488. VT_DATA = 4
  11489. };
  11490. const flatbuffers::Vector<uint8_t> *data() const {
  11491. return GetPointer<const flatbuffers::Vector<uint8_t> *>(VT_DATA);
  11492. }
  11493. bool Verify(flatbuffers::Verifier &verifier) const {
  11494. return VerifyTableStart(verifier) &&
  11495. VerifyOffset(verifier, VT_DATA) &&
  11496. verifier.VerifyVector(data()) &&
  11497. verifier.EndTable();
  11498. }
  11499. BufferT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11500. void UnPackTo(BufferT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11501. static flatbuffers::Offset<Buffer> Pack(flatbuffers::FlatBufferBuilder &_fbb, const BufferT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11502. };
  11503. struct BufferBuilder {
  11504. typedef Buffer Table;
  11505. flatbuffers::FlatBufferBuilder &fbb_;
  11506. flatbuffers::uoffset_t start_;
  11507. void add_data(flatbuffers::Offset<flatbuffers::Vector<uint8_t>> data) {
  11508. fbb_.AddOffset(Buffer::VT_DATA, data);
  11509. }
  11510. explicit BufferBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11511. : fbb_(_fbb) {
  11512. start_ = fbb_.StartTable();
  11513. }
  11514. BufferBuilder &operator=(const BufferBuilder &);
  11515. flatbuffers::Offset<Buffer> Finish() {
  11516. const auto end = fbb_.EndTable(start_);
  11517. auto o = flatbuffers::Offset<Buffer>(end);
  11518. return o;
  11519. }
  11520. };
  11521. inline flatbuffers::Offset<Buffer> CreateBuffer(
  11522. flatbuffers::FlatBufferBuilder &_fbb,
  11523. flatbuffers::Offset<flatbuffers::Vector<uint8_t>> data = 0) {
  11524. BufferBuilder builder_(_fbb);
  11525. builder_.add_data(data);
  11526. return builder_.Finish();
  11527. }
  11528. inline flatbuffers::Offset<Buffer> CreateBufferDirect(
  11529. flatbuffers::FlatBufferBuilder &_fbb,
  11530. const std::vector<uint8_t> *data = nullptr) {
  11531. if (data) { _fbb.ForceVectorAlignment(data->size(), sizeof(uint8_t), 16); }
  11532. auto data__ = data ? _fbb.CreateVector<uint8_t>(*data) : 0;
  11533. return tflite::CreateBuffer(
  11534. _fbb,
  11535. data__);
  11536. }
  11537. flatbuffers::Offset<Buffer> CreateBuffer(flatbuffers::FlatBufferBuilder &_fbb, const BufferT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11538. struct MetadataT : public flatbuffers::NativeTable {
  11539. typedef Metadata TableType;
  11540. std::string name;
  11541. uint32_t buffer;
  11542. MetadataT()
  11543. : buffer(0) {
  11544. }
  11545. };
  11546. struct Metadata FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11547. typedef MetadataT NativeTableType;
  11548. typedef MetadataBuilder Builder;
  11549. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11550. VT_NAME = 4,
  11551. VT_BUFFER = 6
  11552. };
  11553. const flatbuffers::String *name() const {
  11554. return GetPointer<const flatbuffers::String *>(VT_NAME);
  11555. }
  11556. uint32_t buffer() const {
  11557. return GetField<uint32_t>(VT_BUFFER, 0);
  11558. }
  11559. bool Verify(flatbuffers::Verifier &verifier) const {
  11560. return VerifyTableStart(verifier) &&
  11561. VerifyOffset(verifier, VT_NAME) &&
  11562. verifier.VerifyString(name()) &&
  11563. VerifyField<uint32_t>(verifier, VT_BUFFER) &&
  11564. verifier.EndTable();
  11565. }
  11566. MetadataT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11567. void UnPackTo(MetadataT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11568. static flatbuffers::Offset<Metadata> Pack(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11569. };
  11570. struct MetadataBuilder {
  11571. typedef Metadata Table;
  11572. flatbuffers::FlatBufferBuilder &fbb_;
  11573. flatbuffers::uoffset_t start_;
  11574. void add_name(flatbuffers::Offset<flatbuffers::String> name) {
  11575. fbb_.AddOffset(Metadata::VT_NAME, name);
  11576. }
  11577. void add_buffer(uint32_t buffer) {
  11578. fbb_.AddElement<uint32_t>(Metadata::VT_BUFFER, buffer, 0);
  11579. }
  11580. explicit MetadataBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11581. : fbb_(_fbb) {
  11582. start_ = fbb_.StartTable();
  11583. }
  11584. MetadataBuilder &operator=(const MetadataBuilder &);
  11585. flatbuffers::Offset<Metadata> Finish() {
  11586. const auto end = fbb_.EndTable(start_);
  11587. auto o = flatbuffers::Offset<Metadata>(end);
  11588. return o;
  11589. }
  11590. };
  11591. inline flatbuffers::Offset<Metadata> CreateMetadata(
  11592. flatbuffers::FlatBufferBuilder &_fbb,
  11593. flatbuffers::Offset<flatbuffers::String> name = 0,
  11594. uint32_t buffer = 0) {
  11595. MetadataBuilder builder_(_fbb);
  11596. builder_.add_buffer(buffer);
  11597. builder_.add_name(name);
  11598. return builder_.Finish();
  11599. }
  11600. inline flatbuffers::Offset<Metadata> CreateMetadataDirect(
  11601. flatbuffers::FlatBufferBuilder &_fbb,
  11602. const char *name = nullptr,
  11603. uint32_t buffer = 0) {
  11604. auto name__ = name ? _fbb.CreateString(name) : 0;
  11605. return tflite::CreateMetadata(
  11606. _fbb,
  11607. name__,
  11608. buffer);
  11609. }
  11610. flatbuffers::Offset<Metadata> CreateMetadata(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11611. struct TensorMapT : public flatbuffers::NativeTable {
  11612. typedef TensorMap TableType;
  11613. std::string name;
  11614. uint32_t tensor_index;
  11615. TensorMapT()
  11616. : tensor_index(0) {
  11617. }
  11618. };
  11619. struct TensorMap FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11620. typedef TensorMapT NativeTableType;
  11621. typedef TensorMapBuilder Builder;
  11622. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11623. VT_NAME = 4,
  11624. VT_TENSOR_INDEX = 6
  11625. };
  11626. const flatbuffers::String *name() const {
  11627. return GetPointer<const flatbuffers::String *>(VT_NAME);
  11628. }
  11629. uint32_t tensor_index() const {
  11630. return GetField<uint32_t>(VT_TENSOR_INDEX, 0);
  11631. }
  11632. bool Verify(flatbuffers::Verifier &verifier) const {
  11633. return VerifyTableStart(verifier) &&
  11634. VerifyOffset(verifier, VT_NAME) &&
  11635. verifier.VerifyString(name()) &&
  11636. VerifyField<uint32_t>(verifier, VT_TENSOR_INDEX) &&
  11637. verifier.EndTable();
  11638. }
  11639. TensorMapT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11640. void UnPackTo(TensorMapT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11641. static flatbuffers::Offset<TensorMap> Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11642. };
  11643. struct TensorMapBuilder {
  11644. typedef TensorMap Table;
  11645. flatbuffers::FlatBufferBuilder &fbb_;
  11646. flatbuffers::uoffset_t start_;
  11647. void add_name(flatbuffers::Offset<flatbuffers::String> name) {
  11648. fbb_.AddOffset(TensorMap::VT_NAME, name);
  11649. }
  11650. void add_tensor_index(uint32_t tensor_index) {
  11651. fbb_.AddElement<uint32_t>(TensorMap::VT_TENSOR_INDEX, tensor_index, 0);
  11652. }
  11653. explicit TensorMapBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11654. : fbb_(_fbb) {
  11655. start_ = fbb_.StartTable();
  11656. }
  11657. TensorMapBuilder &operator=(const TensorMapBuilder &);
  11658. flatbuffers::Offset<TensorMap> Finish() {
  11659. const auto end = fbb_.EndTable(start_);
  11660. auto o = flatbuffers::Offset<TensorMap>(end);
  11661. return o;
  11662. }
  11663. };
  11664. inline flatbuffers::Offset<TensorMap> CreateTensorMap(
  11665. flatbuffers::FlatBufferBuilder &_fbb,
  11666. flatbuffers::Offset<flatbuffers::String> name = 0,
  11667. uint32_t tensor_index = 0) {
  11668. TensorMapBuilder builder_(_fbb);
  11669. builder_.add_tensor_index(tensor_index);
  11670. builder_.add_name(name);
  11671. return builder_.Finish();
  11672. }
  11673. inline flatbuffers::Offset<TensorMap> CreateTensorMapDirect(
  11674. flatbuffers::FlatBufferBuilder &_fbb,
  11675. const char *name = nullptr,
  11676. uint32_t tensor_index = 0) {
  11677. auto name__ = name ? _fbb.CreateString(name) : 0;
  11678. return tflite::CreateTensorMap(
  11679. _fbb,
  11680. name__,
  11681. tensor_index);
  11682. }
  11683. flatbuffers::Offset<TensorMap> CreateTensorMap(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11684. struct SignatureDefT : public flatbuffers::NativeTable {
  11685. typedef SignatureDef TableType;
  11686. std::vector<std::unique_ptr<tflite::TensorMapT>> inputs;
  11687. std::vector<std::unique_ptr<tflite::TensorMapT>> outputs;
  11688. std::string signature_key;
  11689. uint32_t subgraph_index;
  11690. SignatureDefT()
  11691. : subgraph_index(0) {
  11692. }
  11693. };
  11694. struct SignatureDef FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11695. typedef SignatureDefT NativeTableType;
  11696. typedef SignatureDefBuilder Builder;
  11697. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11698. VT_INPUTS = 4,
  11699. VT_OUTPUTS = 6,
  11700. VT_SIGNATURE_KEY = 8,
  11701. VT_SUBGRAPH_INDEX = 12
  11702. };
  11703. const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *inputs() const {
  11704. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *>(VT_INPUTS);
  11705. }
  11706. const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *outputs() const {
  11707. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>> *>(VT_OUTPUTS);
  11708. }
  11709. const flatbuffers::String *signature_key() const {
  11710. return GetPointer<const flatbuffers::String *>(VT_SIGNATURE_KEY);
  11711. }
  11712. uint32_t subgraph_index() const {
  11713. return GetField<uint32_t>(VT_SUBGRAPH_INDEX, 0);
  11714. }
  11715. bool Verify(flatbuffers::Verifier &verifier) const {
  11716. return VerifyTableStart(verifier) &&
  11717. VerifyOffset(verifier, VT_INPUTS) &&
  11718. verifier.VerifyVector(inputs()) &&
  11719. verifier.VerifyVectorOfTables(inputs()) &&
  11720. VerifyOffset(verifier, VT_OUTPUTS) &&
  11721. verifier.VerifyVector(outputs()) &&
  11722. verifier.VerifyVectorOfTables(outputs()) &&
  11723. VerifyOffset(verifier, VT_SIGNATURE_KEY) &&
  11724. verifier.VerifyString(signature_key()) &&
  11725. VerifyField<uint32_t>(verifier, VT_SUBGRAPH_INDEX) &&
  11726. verifier.EndTable();
  11727. }
  11728. SignatureDefT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11729. void UnPackTo(SignatureDefT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11730. static flatbuffers::Offset<SignatureDef> Pack(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11731. };
  11732. struct SignatureDefBuilder {
  11733. typedef SignatureDef Table;
  11734. flatbuffers::FlatBufferBuilder &fbb_;
  11735. flatbuffers::uoffset_t start_;
  11736. void add_inputs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> inputs) {
  11737. fbb_.AddOffset(SignatureDef::VT_INPUTS, inputs);
  11738. }
  11739. void add_outputs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> outputs) {
  11740. fbb_.AddOffset(SignatureDef::VT_OUTPUTS, outputs);
  11741. }
  11742. void add_signature_key(flatbuffers::Offset<flatbuffers::String> signature_key) {
  11743. fbb_.AddOffset(SignatureDef::VT_SIGNATURE_KEY, signature_key);
  11744. }
  11745. void add_subgraph_index(uint32_t subgraph_index) {
  11746. fbb_.AddElement<uint32_t>(SignatureDef::VT_SUBGRAPH_INDEX, subgraph_index, 0);
  11747. }
  11748. explicit SignatureDefBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11749. : fbb_(_fbb) {
  11750. start_ = fbb_.StartTable();
  11751. }
  11752. SignatureDefBuilder &operator=(const SignatureDefBuilder &);
  11753. flatbuffers::Offset<SignatureDef> Finish() {
  11754. const auto end = fbb_.EndTable(start_);
  11755. auto o = flatbuffers::Offset<SignatureDef>(end);
  11756. return o;
  11757. }
  11758. };
  11759. inline flatbuffers::Offset<SignatureDef> CreateSignatureDef(
  11760. flatbuffers::FlatBufferBuilder &_fbb,
  11761. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> inputs = 0,
  11762. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::TensorMap>>> outputs = 0,
  11763. flatbuffers::Offset<flatbuffers::String> signature_key = 0,
  11764. uint32_t subgraph_index = 0) {
  11765. SignatureDefBuilder builder_(_fbb);
  11766. builder_.add_subgraph_index(subgraph_index);
  11767. builder_.add_signature_key(signature_key);
  11768. builder_.add_outputs(outputs);
  11769. builder_.add_inputs(inputs);
  11770. return builder_.Finish();
  11771. }
  11772. inline flatbuffers::Offset<SignatureDef> CreateSignatureDefDirect(
  11773. flatbuffers::FlatBufferBuilder &_fbb,
  11774. const std::vector<flatbuffers::Offset<tflite::TensorMap>> *inputs = nullptr,
  11775. const std::vector<flatbuffers::Offset<tflite::TensorMap>> *outputs = nullptr,
  11776. const char *signature_key = nullptr,
  11777. uint32_t subgraph_index = 0) {
  11778. auto inputs__ = inputs ? _fbb.CreateVector<flatbuffers::Offset<tflite::TensorMap>>(*inputs) : 0;
  11779. auto outputs__ = outputs ? _fbb.CreateVector<flatbuffers::Offset<tflite::TensorMap>>(*outputs) : 0;
  11780. auto signature_key__ = signature_key ? _fbb.CreateString(signature_key) : 0;
  11781. return tflite::CreateSignatureDef(
  11782. _fbb,
  11783. inputs__,
  11784. outputs__,
  11785. signature_key__,
  11786. subgraph_index);
  11787. }
  11788. flatbuffers::Offset<SignatureDef> CreateSignatureDef(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11789. struct ModelT : public flatbuffers::NativeTable {
  11790. typedef Model TableType;
  11791. uint32_t version;
  11792. std::vector<std::unique_ptr<tflite::OperatorCodeT>> operator_codes;
  11793. std::vector<std::unique_ptr<tflite::SubGraphT>> subgraphs;
  11794. std::string description;
  11795. std::vector<std::unique_ptr<tflite::BufferT>> buffers;
  11796. std::vector<int32_t> metadata_buffer;
  11797. std::vector<std::unique_ptr<tflite::MetadataT>> metadata;
  11798. std::vector<std::unique_ptr<tflite::SignatureDefT>> signature_defs;
  11799. ModelT()
  11800. : version(0) {
  11801. }
  11802. };
  11803. struct Model FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
  11804. typedef ModelT NativeTableType;
  11805. typedef ModelBuilder Builder;
  11806. enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
  11807. VT_VERSION = 4,
  11808. VT_OPERATOR_CODES = 6,
  11809. VT_SUBGRAPHS = 8,
  11810. VT_DESCRIPTION = 10,
  11811. VT_BUFFERS = 12,
  11812. VT_METADATA_BUFFER = 14,
  11813. VT_METADATA = 16,
  11814. VT_SIGNATURE_DEFS = 18
  11815. };
  11816. uint32_t version() const {
  11817. return GetField<uint32_t>(VT_VERSION, 0);
  11818. }
  11819. const flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>> *operator_codes() const {
  11820. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>> *>(VT_OPERATOR_CODES);
  11821. }
  11822. const flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>> *subgraphs() const {
  11823. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>> *>(VT_SUBGRAPHS);
  11824. }
  11825. const flatbuffers::String *description() const {
  11826. return GetPointer<const flatbuffers::String *>(VT_DESCRIPTION);
  11827. }
  11828. const flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>> *buffers() const {
  11829. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>> *>(VT_BUFFERS);
  11830. }
  11831. const flatbuffers::Vector<int32_t> *metadata_buffer() const {
  11832. return GetPointer<const flatbuffers::Vector<int32_t> *>(VT_METADATA_BUFFER);
  11833. }
  11834. const flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>> *metadata() const {
  11835. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>> *>(VT_METADATA);
  11836. }
  11837. const flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>> *signature_defs() const {
  11838. return GetPointer<const flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>> *>(VT_SIGNATURE_DEFS);
  11839. }
  11840. bool Verify(flatbuffers::Verifier &verifier) const {
  11841. return VerifyTableStart(verifier) &&
  11842. VerifyField<uint32_t>(verifier, VT_VERSION) &&
  11843. VerifyOffset(verifier, VT_OPERATOR_CODES) &&
  11844. verifier.VerifyVector(operator_codes()) &&
  11845. verifier.VerifyVectorOfTables(operator_codes()) &&
  11846. VerifyOffset(verifier, VT_SUBGRAPHS) &&
  11847. verifier.VerifyVector(subgraphs()) &&
  11848. verifier.VerifyVectorOfTables(subgraphs()) &&
  11849. VerifyOffset(verifier, VT_DESCRIPTION) &&
  11850. verifier.VerifyString(description()) &&
  11851. VerifyOffset(verifier, VT_BUFFERS) &&
  11852. verifier.VerifyVector(buffers()) &&
  11853. verifier.VerifyVectorOfTables(buffers()) &&
  11854. VerifyOffset(verifier, VT_METADATA_BUFFER) &&
  11855. verifier.VerifyVector(metadata_buffer()) &&
  11856. VerifyOffset(verifier, VT_METADATA) &&
  11857. verifier.VerifyVector(metadata()) &&
  11858. verifier.VerifyVectorOfTables(metadata()) &&
  11859. VerifyOffset(verifier, VT_SIGNATURE_DEFS) &&
  11860. verifier.VerifyVector(signature_defs()) &&
  11861. verifier.VerifyVectorOfTables(signature_defs()) &&
  11862. verifier.EndTable();
  11863. }
  11864. ModelT *UnPack(const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11865. void UnPackTo(ModelT *_o, const flatbuffers::resolver_function_t *_resolver = nullptr) const;
  11866. static flatbuffers::Offset<Model> Pack(flatbuffers::FlatBufferBuilder &_fbb, const ModelT* _o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11867. };
  11868. struct ModelBuilder {
  11869. typedef Model Table;
  11870. flatbuffers::FlatBufferBuilder &fbb_;
  11871. flatbuffers::uoffset_t start_;
  11872. void add_version(uint32_t version) {
  11873. fbb_.AddElement<uint32_t>(Model::VT_VERSION, version, 0);
  11874. }
  11875. void add_operator_codes(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>>> operator_codes) {
  11876. fbb_.AddOffset(Model::VT_OPERATOR_CODES, operator_codes);
  11877. }
  11878. void add_subgraphs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>>> subgraphs) {
  11879. fbb_.AddOffset(Model::VT_SUBGRAPHS, subgraphs);
  11880. }
  11881. void add_description(flatbuffers::Offset<flatbuffers::String> description) {
  11882. fbb_.AddOffset(Model::VT_DESCRIPTION, description);
  11883. }
  11884. void add_buffers(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>>> buffers) {
  11885. fbb_.AddOffset(Model::VT_BUFFERS, buffers);
  11886. }
  11887. void add_metadata_buffer(flatbuffers::Offset<flatbuffers::Vector<int32_t>> metadata_buffer) {
  11888. fbb_.AddOffset(Model::VT_METADATA_BUFFER, metadata_buffer);
  11889. }
  11890. void add_metadata(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>>> metadata) {
  11891. fbb_.AddOffset(Model::VT_METADATA, metadata);
  11892. }
  11893. void add_signature_defs(flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>>> signature_defs) {
  11894. fbb_.AddOffset(Model::VT_SIGNATURE_DEFS, signature_defs);
  11895. }
  11896. explicit ModelBuilder(flatbuffers::FlatBufferBuilder &_fbb)
  11897. : fbb_(_fbb) {
  11898. start_ = fbb_.StartTable();
  11899. }
  11900. ModelBuilder &operator=(const ModelBuilder &);
  11901. flatbuffers::Offset<Model> Finish() {
  11902. const auto end = fbb_.EndTable(start_);
  11903. auto o = flatbuffers::Offset<Model>(end);
  11904. return o;
  11905. }
  11906. };
  11907. inline flatbuffers::Offset<Model> CreateModel(
  11908. flatbuffers::FlatBufferBuilder &_fbb,
  11909. uint32_t version = 0,
  11910. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::OperatorCode>>> operator_codes = 0,
  11911. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SubGraph>>> subgraphs = 0,
  11912. flatbuffers::Offset<flatbuffers::String> description = 0,
  11913. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Buffer>>> buffers = 0,
  11914. flatbuffers::Offset<flatbuffers::Vector<int32_t>> metadata_buffer = 0,
  11915. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::Metadata>>> metadata = 0,
  11916. flatbuffers::Offset<flatbuffers::Vector<flatbuffers::Offset<tflite::SignatureDef>>> signature_defs = 0) {
  11917. ModelBuilder builder_(_fbb);
  11918. builder_.add_signature_defs(signature_defs);
  11919. builder_.add_metadata(metadata);
  11920. builder_.add_metadata_buffer(metadata_buffer);
  11921. builder_.add_buffers(buffers);
  11922. builder_.add_description(description);
  11923. builder_.add_subgraphs(subgraphs);
  11924. builder_.add_operator_codes(operator_codes);
  11925. builder_.add_version(version);
  11926. return builder_.Finish();
  11927. }
  11928. inline flatbuffers::Offset<Model> CreateModelDirect(
  11929. flatbuffers::FlatBufferBuilder &_fbb,
  11930. uint32_t version = 0,
  11931. const std::vector<flatbuffers::Offset<tflite::OperatorCode>> *operator_codes = nullptr,
  11932. const std::vector<flatbuffers::Offset<tflite::SubGraph>> *subgraphs = nullptr,
  11933. const char *description = nullptr,
  11934. const std::vector<flatbuffers::Offset<tflite::Buffer>> *buffers = nullptr,
  11935. const std::vector<int32_t> *metadata_buffer = nullptr,
  11936. const std::vector<flatbuffers::Offset<tflite::Metadata>> *metadata = nullptr,
  11937. const std::vector<flatbuffers::Offset<tflite::SignatureDef>> *signature_defs = nullptr) {
  11938. auto operator_codes__ = operator_codes ? _fbb.CreateVector<flatbuffers::Offset<tflite::OperatorCode>>(*operator_codes) : 0;
  11939. auto subgraphs__ = subgraphs ? _fbb.CreateVector<flatbuffers::Offset<tflite::SubGraph>>(*subgraphs) : 0;
  11940. auto description__ = description ? _fbb.CreateString(description) : 0;
  11941. auto buffers__ = buffers ? _fbb.CreateVector<flatbuffers::Offset<tflite::Buffer>>(*buffers) : 0;
  11942. auto metadata_buffer__ = metadata_buffer ? _fbb.CreateVector<int32_t>(*metadata_buffer) : 0;
  11943. auto metadata__ = metadata ? _fbb.CreateVector<flatbuffers::Offset<tflite::Metadata>>(*metadata) : 0;
  11944. auto signature_defs__ = signature_defs ? _fbb.CreateVector<flatbuffers::Offset<tflite::SignatureDef>>(*signature_defs) : 0;
  11945. return tflite::CreateModel(
  11946. _fbb,
  11947. version,
  11948. operator_codes__,
  11949. subgraphs__,
  11950. description__,
  11951. buffers__,
  11952. metadata_buffer__,
  11953. metadata__,
  11954. signature_defs__);
  11955. }
  11956. flatbuffers::Offset<Model> CreateModel(flatbuffers::FlatBufferBuilder &_fbb, const ModelT *_o, const flatbuffers::rehasher_function_t *_rehasher = nullptr);
  11957. inline CustomQuantizationT *CustomQuantization::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  11958. std::unique_ptr<tflite::CustomQuantizationT> _o = std::unique_ptr<tflite::CustomQuantizationT>(new CustomQuantizationT());
  11959. UnPackTo(_o.get(), _resolver);
  11960. return _o.release();
  11961. }
  11962. inline void CustomQuantization::UnPackTo(CustomQuantizationT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  11963. (void)_o;
  11964. (void)_resolver;
  11965. { auto _e = custom(); if (_e) { _o->custom.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->custom[_i] = _e->Get(_i); } } }
  11966. }
  11967. inline flatbuffers::Offset<CustomQuantization> CustomQuantization::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  11968. return CreateCustomQuantization(_fbb, _o, _rehasher);
  11969. }
  11970. inline flatbuffers::Offset<CustomQuantization> CreateCustomQuantization(flatbuffers::FlatBufferBuilder &_fbb, const CustomQuantizationT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  11971. (void)_rehasher;
  11972. (void)_o;
  11973. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CustomQuantizationT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  11974. _fbb.ForceVectorAlignment(_o->custom.size(), sizeof(uint8_t), 16);
  11975. auto _custom = _o->custom.size() ? _fbb.CreateVector(_o->custom) : 0;
  11976. return tflite::CreateCustomQuantization(
  11977. _fbb,
  11978. _custom);
  11979. }
  11980. inline QuantizationParametersT *QuantizationParameters::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  11981. std::unique_ptr<tflite::QuantizationParametersT> _o = std::unique_ptr<tflite::QuantizationParametersT>(new QuantizationParametersT());
  11982. UnPackTo(_o.get(), _resolver);
  11983. return _o.release();
  11984. }
  11985. inline void QuantizationParameters::UnPackTo(QuantizationParametersT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  11986. (void)_o;
  11987. (void)_resolver;
  11988. { 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); } } }
  11989. { 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); } } }
  11990. { 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); } } }
  11991. { 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); } } }
  11992. { auto _e = details_type(); _o->details.type = _e; }
  11993. { auto _e = details(); if (_e) _o->details.value = tflite::QuantizationDetailsUnion::UnPack(_e, details_type(), _resolver); }
  11994. { auto _e = quantized_dimension(); _o->quantized_dimension = _e; }
  11995. }
  11996. inline flatbuffers::Offset<QuantizationParameters> QuantizationParameters::Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  11997. return CreateQuantizationParameters(_fbb, _o, _rehasher);
  11998. }
  11999. inline flatbuffers::Offset<QuantizationParameters> CreateQuantizationParameters(flatbuffers::FlatBufferBuilder &_fbb, const QuantizationParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12000. (void)_rehasher;
  12001. (void)_o;
  12002. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const QuantizationParametersT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12003. auto _min = _o->min.size() ? _fbb.CreateVector(_o->min) : 0;
  12004. auto _max = _o->max.size() ? _fbb.CreateVector(_o->max) : 0;
  12005. auto _scale = _o->scale.size() ? _fbb.CreateVector(_o->scale) : 0;
  12006. auto _zero_point = _o->zero_point.size() ? _fbb.CreateVector(_o->zero_point) : 0;
  12007. auto _details_type = _o->details.type;
  12008. auto _details = _o->details.Pack(_fbb);
  12009. auto _quantized_dimension = _o->quantized_dimension;
  12010. return tflite::CreateQuantizationParameters(
  12011. _fbb,
  12012. _min,
  12013. _max,
  12014. _scale,
  12015. _zero_point,
  12016. _details_type,
  12017. _details,
  12018. _quantized_dimension);
  12019. }
  12020. inline Int32VectorT *Int32Vector::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12021. std::unique_ptr<tflite::Int32VectorT> _o = std::unique_ptr<tflite::Int32VectorT>(new Int32VectorT());
  12022. UnPackTo(_o.get(), _resolver);
  12023. return _o.release();
  12024. }
  12025. inline void Int32Vector::UnPackTo(Int32VectorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12026. (void)_o;
  12027. (void)_resolver;
  12028. { 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); } } }
  12029. }
  12030. inline flatbuffers::Offset<Int32Vector> Int32Vector::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12031. return CreateInt32Vector(_fbb, _o, _rehasher);
  12032. }
  12033. inline flatbuffers::Offset<Int32Vector> CreateInt32Vector(flatbuffers::FlatBufferBuilder &_fbb, const Int32VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12034. (void)_rehasher;
  12035. (void)_o;
  12036. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Int32VectorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12037. auto _values = _o->values.size() ? _fbb.CreateVector(_o->values) : 0;
  12038. return tflite::CreateInt32Vector(
  12039. _fbb,
  12040. _values);
  12041. }
  12042. inline Uint16VectorT *Uint16Vector::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12043. std::unique_ptr<tflite::Uint16VectorT> _o = std::unique_ptr<tflite::Uint16VectorT>(new Uint16VectorT());
  12044. UnPackTo(_o.get(), _resolver);
  12045. return _o.release();
  12046. }
  12047. inline void Uint16Vector::UnPackTo(Uint16VectorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12048. (void)_o;
  12049. (void)_resolver;
  12050. { 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); } } }
  12051. }
  12052. inline flatbuffers::Offset<Uint16Vector> Uint16Vector::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12053. return CreateUint16Vector(_fbb, _o, _rehasher);
  12054. }
  12055. inline flatbuffers::Offset<Uint16Vector> CreateUint16Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint16VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12056. (void)_rehasher;
  12057. (void)_o;
  12058. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Uint16VectorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12059. _fbb.ForceVectorAlignment(_o->values.size(), sizeof(uint16_t), 4);
  12060. auto _values = _o->values.size() ? _fbb.CreateVector(_o->values) : 0;
  12061. return tflite::CreateUint16Vector(
  12062. _fbb,
  12063. _values);
  12064. }
  12065. inline Uint8VectorT *Uint8Vector::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12066. std::unique_ptr<tflite::Uint8VectorT> _o = std::unique_ptr<tflite::Uint8VectorT>(new Uint8VectorT());
  12067. UnPackTo(_o.get(), _resolver);
  12068. return _o.release();
  12069. }
  12070. inline void Uint8Vector::UnPackTo(Uint8VectorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12071. (void)_o;
  12072. (void)_resolver;
  12073. { 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); } } }
  12074. }
  12075. inline flatbuffers::Offset<Uint8Vector> Uint8Vector::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12076. return CreateUint8Vector(_fbb, _o, _rehasher);
  12077. }
  12078. inline flatbuffers::Offset<Uint8Vector> CreateUint8Vector(flatbuffers::FlatBufferBuilder &_fbb, const Uint8VectorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12079. (void)_rehasher;
  12080. (void)_o;
  12081. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Uint8VectorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12082. _fbb.ForceVectorAlignment(_o->values.size(), sizeof(uint8_t), 4);
  12083. auto _values = _o->values.size() ? _fbb.CreateVector(_o->values) : 0;
  12084. return tflite::CreateUint8Vector(
  12085. _fbb,
  12086. _values);
  12087. }
  12088. inline DimensionMetadataT *DimensionMetadata::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12089. std::unique_ptr<tflite::DimensionMetadataT> _o = std::unique_ptr<tflite::DimensionMetadataT>(new DimensionMetadataT());
  12090. UnPackTo(_o.get(), _resolver);
  12091. return _o.release();
  12092. }
  12093. inline void DimensionMetadata::UnPackTo(DimensionMetadataT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12094. (void)_o;
  12095. (void)_resolver;
  12096. { auto _e = format(); _o->format = _e; }
  12097. { auto _e = dense_size(); _o->dense_size = _e; }
  12098. { auto _e = array_segments_type(); _o->array_segments.type = _e; }
  12099. { auto _e = array_segments(); if (_e) _o->array_segments.value = tflite::SparseIndexVectorUnion::UnPack(_e, array_segments_type(), _resolver); }
  12100. { auto _e = array_indices_type(); _o->array_indices.type = _e; }
  12101. { auto _e = array_indices(); if (_e) _o->array_indices.value = tflite::SparseIndexVectorUnion::UnPack(_e, array_indices_type(), _resolver); }
  12102. }
  12103. inline flatbuffers::Offset<DimensionMetadata> DimensionMetadata::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12104. return CreateDimensionMetadata(_fbb, _o, _rehasher);
  12105. }
  12106. inline flatbuffers::Offset<DimensionMetadata> CreateDimensionMetadata(flatbuffers::FlatBufferBuilder &_fbb, const DimensionMetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12107. (void)_rehasher;
  12108. (void)_o;
  12109. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DimensionMetadataT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12110. auto _format = _o->format;
  12111. auto _dense_size = _o->dense_size;
  12112. auto _array_segments_type = _o->array_segments.type;
  12113. auto _array_segments = _o->array_segments.Pack(_fbb);
  12114. auto _array_indices_type = _o->array_indices.type;
  12115. auto _array_indices = _o->array_indices.Pack(_fbb);
  12116. return tflite::CreateDimensionMetadata(
  12117. _fbb,
  12118. _format,
  12119. _dense_size,
  12120. _array_segments_type,
  12121. _array_segments,
  12122. _array_indices_type,
  12123. _array_indices);
  12124. }
  12125. inline SparsityParametersT *SparsityParameters::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12126. std::unique_ptr<tflite::SparsityParametersT> _o = std::unique_ptr<tflite::SparsityParametersT>(new SparsityParametersT());
  12127. UnPackTo(_o.get(), _resolver);
  12128. return _o.release();
  12129. }
  12130. inline void SparsityParameters::UnPackTo(SparsityParametersT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12131. (void)_o;
  12132. (void)_resolver;
  12133. { 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); } } }
  12134. { 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); } } }
  12135. { auto _e = dim_metadata(); if (_e) { _o->dim_metadata.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->dim_metadata[_i] = std::unique_ptr<tflite::DimensionMetadataT>(_e->Get(_i)->UnPack(_resolver)); } } }
  12136. }
  12137. inline flatbuffers::Offset<SparsityParameters> SparsityParameters::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12138. return CreateSparsityParameters(_fbb, _o, _rehasher);
  12139. }
  12140. inline flatbuffers::Offset<SparsityParameters> CreateSparsityParameters(flatbuffers::FlatBufferBuilder &_fbb, const SparsityParametersT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12141. (void)_rehasher;
  12142. (void)_o;
  12143. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SparsityParametersT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12144. auto _traversal_order = _o->traversal_order.size() ? _fbb.CreateVector(_o->traversal_order) : 0;
  12145. auto _block_map = _o->block_map.size() ? _fbb.CreateVector(_o->block_map) : 0;
  12146. 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;
  12147. return tflite::CreateSparsityParameters(
  12148. _fbb,
  12149. _traversal_order,
  12150. _block_map,
  12151. _dim_metadata);
  12152. }
  12153. inline TensorT *Tensor::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12154. std::unique_ptr<tflite::TensorT> _o = std::unique_ptr<tflite::TensorT>(new TensorT());
  12155. UnPackTo(_o.get(), _resolver);
  12156. return _o.release();
  12157. }
  12158. inline void Tensor::UnPackTo(TensorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12159. (void)_o;
  12160. (void)_resolver;
  12161. { 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); } } }
  12162. { auto _e = type(); _o->type = _e; }
  12163. { auto _e = buffer(); _o->buffer = _e; }
  12164. { auto _e = name(); if (_e) _o->name = _e->str(); }
  12165. { auto _e = quantization(); if (_e) _o->quantization = std::unique_ptr<tflite::QuantizationParametersT>(_e->UnPack(_resolver)); }
  12166. { auto _e = is_variable(); _o->is_variable = _e; }
  12167. { auto _e = sparsity(); if (_e) _o->sparsity = std::unique_ptr<tflite::SparsityParametersT>(_e->UnPack(_resolver)); }
  12168. { 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); } } }
  12169. { auto _e = has_rank(); _o->has_rank = _e; }
  12170. }
  12171. inline flatbuffers::Offset<Tensor> Tensor::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12172. return CreateTensor(_fbb, _o, _rehasher);
  12173. }
  12174. inline flatbuffers::Offset<Tensor> CreateTensor(flatbuffers::FlatBufferBuilder &_fbb, const TensorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12175. (void)_rehasher;
  12176. (void)_o;
  12177. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TensorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12178. auto _shape = _o->shape.size() ? _fbb.CreateVector(_o->shape) : 0;
  12179. auto _type = _o->type;
  12180. auto _buffer = _o->buffer;
  12181. auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
  12182. auto _quantization = _o->quantization ? CreateQuantizationParameters(_fbb, _o->quantization.get(), _rehasher) : 0;
  12183. auto _is_variable = _o->is_variable;
  12184. auto _sparsity = _o->sparsity ? CreateSparsityParameters(_fbb, _o->sparsity.get(), _rehasher) : 0;
  12185. auto _shape_signature = _o->shape_signature.size() ? _fbb.CreateVector(_o->shape_signature) : 0;
  12186. auto _has_rank = _o->has_rank;
  12187. return tflite::CreateTensor(
  12188. _fbb,
  12189. _shape,
  12190. _type,
  12191. _buffer,
  12192. _name,
  12193. _quantization,
  12194. _is_variable,
  12195. _sparsity,
  12196. _shape_signature,
  12197. _has_rank);
  12198. }
  12199. inline Conv2DOptionsT *Conv2DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12200. std::unique_ptr<tflite::Conv2DOptionsT> _o = std::unique_ptr<tflite::Conv2DOptionsT>(new Conv2DOptionsT());
  12201. UnPackTo(_o.get(), _resolver);
  12202. return _o.release();
  12203. }
  12204. inline void Conv2DOptions::UnPackTo(Conv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12205. (void)_o;
  12206. (void)_resolver;
  12207. { auto _e = padding(); _o->padding = _e; }
  12208. { auto _e = stride_w(); _o->stride_w = _e; }
  12209. { auto _e = stride_h(); _o->stride_h = _e; }
  12210. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12211. { auto _e = dilation_w_factor(); _o->dilation_w_factor = _e; }
  12212. { auto _e = dilation_h_factor(); _o->dilation_h_factor = _e; }
  12213. }
  12214. inline flatbuffers::Offset<Conv2DOptions> Conv2DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12215. return CreateConv2DOptions(_fbb, _o, _rehasher);
  12216. }
  12217. inline flatbuffers::Offset<Conv2DOptions> CreateConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12218. (void)_rehasher;
  12219. (void)_o;
  12220. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Conv2DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12221. auto _padding = _o->padding;
  12222. auto _stride_w = _o->stride_w;
  12223. auto _stride_h = _o->stride_h;
  12224. auto _fused_activation_function = _o->fused_activation_function;
  12225. auto _dilation_w_factor = _o->dilation_w_factor;
  12226. auto _dilation_h_factor = _o->dilation_h_factor;
  12227. return tflite::CreateConv2DOptions(
  12228. _fbb,
  12229. _padding,
  12230. _stride_w,
  12231. _stride_h,
  12232. _fused_activation_function,
  12233. _dilation_w_factor,
  12234. _dilation_h_factor);
  12235. }
  12236. inline Conv3DOptionsT *Conv3DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12237. std::unique_ptr<tflite::Conv3DOptionsT> _o = std::unique_ptr<tflite::Conv3DOptionsT>(new Conv3DOptionsT());
  12238. UnPackTo(_o.get(), _resolver);
  12239. return _o.release();
  12240. }
  12241. inline void Conv3DOptions::UnPackTo(Conv3DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12242. (void)_o;
  12243. (void)_resolver;
  12244. { auto _e = padding(); _o->padding = _e; }
  12245. { auto _e = stride_d(); _o->stride_d = _e; }
  12246. { auto _e = stride_w(); _o->stride_w = _e; }
  12247. { auto _e = stride_h(); _o->stride_h = _e; }
  12248. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12249. { auto _e = dilation_d_factor(); _o->dilation_d_factor = _e; }
  12250. { auto _e = dilation_w_factor(); _o->dilation_w_factor = _e; }
  12251. { auto _e = dilation_h_factor(); _o->dilation_h_factor = _e; }
  12252. }
  12253. inline flatbuffers::Offset<Conv3DOptions> Conv3DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12254. return CreateConv3DOptions(_fbb, _o, _rehasher);
  12255. }
  12256. inline flatbuffers::Offset<Conv3DOptions> CreateConv3DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Conv3DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12257. (void)_rehasher;
  12258. (void)_o;
  12259. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Conv3DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12260. auto _padding = _o->padding;
  12261. auto _stride_d = _o->stride_d;
  12262. auto _stride_w = _o->stride_w;
  12263. auto _stride_h = _o->stride_h;
  12264. auto _fused_activation_function = _o->fused_activation_function;
  12265. auto _dilation_d_factor = _o->dilation_d_factor;
  12266. auto _dilation_w_factor = _o->dilation_w_factor;
  12267. auto _dilation_h_factor = _o->dilation_h_factor;
  12268. return tflite::CreateConv3DOptions(
  12269. _fbb,
  12270. _padding,
  12271. _stride_d,
  12272. _stride_w,
  12273. _stride_h,
  12274. _fused_activation_function,
  12275. _dilation_d_factor,
  12276. _dilation_w_factor,
  12277. _dilation_h_factor);
  12278. }
  12279. inline Pool2DOptionsT *Pool2DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12280. std::unique_ptr<tflite::Pool2DOptionsT> _o = std::unique_ptr<tflite::Pool2DOptionsT>(new Pool2DOptionsT());
  12281. UnPackTo(_o.get(), _resolver);
  12282. return _o.release();
  12283. }
  12284. inline void Pool2DOptions::UnPackTo(Pool2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12285. (void)_o;
  12286. (void)_resolver;
  12287. { auto _e = padding(); _o->padding = _e; }
  12288. { auto _e = stride_w(); _o->stride_w = _e; }
  12289. { auto _e = stride_h(); _o->stride_h = _e; }
  12290. { auto _e = filter_width(); _o->filter_width = _e; }
  12291. { auto _e = filter_height(); _o->filter_height = _e; }
  12292. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12293. }
  12294. inline flatbuffers::Offset<Pool2DOptions> Pool2DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12295. return CreatePool2DOptions(_fbb, _o, _rehasher);
  12296. }
  12297. inline flatbuffers::Offset<Pool2DOptions> CreatePool2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const Pool2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12298. (void)_rehasher;
  12299. (void)_o;
  12300. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Pool2DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12301. auto _padding = _o->padding;
  12302. auto _stride_w = _o->stride_w;
  12303. auto _stride_h = _o->stride_h;
  12304. auto _filter_width = _o->filter_width;
  12305. auto _filter_height = _o->filter_height;
  12306. auto _fused_activation_function = _o->fused_activation_function;
  12307. return tflite::CreatePool2DOptions(
  12308. _fbb,
  12309. _padding,
  12310. _stride_w,
  12311. _stride_h,
  12312. _filter_width,
  12313. _filter_height,
  12314. _fused_activation_function);
  12315. }
  12316. inline DepthwiseConv2DOptionsT *DepthwiseConv2DOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12317. std::unique_ptr<tflite::DepthwiseConv2DOptionsT> _o = std::unique_ptr<tflite::DepthwiseConv2DOptionsT>(new DepthwiseConv2DOptionsT());
  12318. UnPackTo(_o.get(), _resolver);
  12319. return _o.release();
  12320. }
  12321. inline void DepthwiseConv2DOptions::UnPackTo(DepthwiseConv2DOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12322. (void)_o;
  12323. (void)_resolver;
  12324. { auto _e = padding(); _o->padding = _e; }
  12325. { auto _e = stride_w(); _o->stride_w = _e; }
  12326. { auto _e = stride_h(); _o->stride_h = _e; }
  12327. { auto _e = depth_multiplier(); _o->depth_multiplier = _e; }
  12328. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12329. { auto _e = dilation_w_factor(); _o->dilation_w_factor = _e; }
  12330. { auto _e = dilation_h_factor(); _o->dilation_h_factor = _e; }
  12331. }
  12332. inline flatbuffers::Offset<DepthwiseConv2DOptions> DepthwiseConv2DOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12333. return CreateDepthwiseConv2DOptions(_fbb, _o, _rehasher);
  12334. }
  12335. inline flatbuffers::Offset<DepthwiseConv2DOptions> CreateDepthwiseConv2DOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthwiseConv2DOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12336. (void)_rehasher;
  12337. (void)_o;
  12338. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DepthwiseConv2DOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12339. auto _padding = _o->padding;
  12340. auto _stride_w = _o->stride_w;
  12341. auto _stride_h = _o->stride_h;
  12342. auto _depth_multiplier = _o->depth_multiplier;
  12343. auto _fused_activation_function = _o->fused_activation_function;
  12344. auto _dilation_w_factor = _o->dilation_w_factor;
  12345. auto _dilation_h_factor = _o->dilation_h_factor;
  12346. return tflite::CreateDepthwiseConv2DOptions(
  12347. _fbb,
  12348. _padding,
  12349. _stride_w,
  12350. _stride_h,
  12351. _depth_multiplier,
  12352. _fused_activation_function,
  12353. _dilation_w_factor,
  12354. _dilation_h_factor);
  12355. }
  12356. inline ConcatEmbeddingsOptionsT *ConcatEmbeddingsOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12357. std::unique_ptr<tflite::ConcatEmbeddingsOptionsT> _o = std::unique_ptr<tflite::ConcatEmbeddingsOptionsT>(new ConcatEmbeddingsOptionsT());
  12358. UnPackTo(_o.get(), _resolver);
  12359. return _o.release();
  12360. }
  12361. inline void ConcatEmbeddingsOptions::UnPackTo(ConcatEmbeddingsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12362. (void)_o;
  12363. (void)_resolver;
  12364. { auto _e = num_channels(); _o->num_channels = _e; }
  12365. { 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); } } }
  12366. { 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); } } }
  12367. }
  12368. inline flatbuffers::Offset<ConcatEmbeddingsOptions> ConcatEmbeddingsOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12369. return CreateConcatEmbeddingsOptions(_fbb, _o, _rehasher);
  12370. }
  12371. inline flatbuffers::Offset<ConcatEmbeddingsOptions> CreateConcatEmbeddingsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatEmbeddingsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12372. (void)_rehasher;
  12373. (void)_o;
  12374. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ConcatEmbeddingsOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12375. auto _num_channels = _o->num_channels;
  12376. auto _num_columns_per_channel = _o->num_columns_per_channel.size() ? _fbb.CreateVector(_o->num_columns_per_channel) : 0;
  12377. auto _embedding_dim_per_channel = _o->embedding_dim_per_channel.size() ? _fbb.CreateVector(_o->embedding_dim_per_channel) : 0;
  12378. return tflite::CreateConcatEmbeddingsOptions(
  12379. _fbb,
  12380. _num_channels,
  12381. _num_columns_per_channel,
  12382. _embedding_dim_per_channel);
  12383. }
  12384. inline LSHProjectionOptionsT *LSHProjectionOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12385. std::unique_ptr<tflite::LSHProjectionOptionsT> _o = std::unique_ptr<tflite::LSHProjectionOptionsT>(new LSHProjectionOptionsT());
  12386. UnPackTo(_o.get(), _resolver);
  12387. return _o.release();
  12388. }
  12389. inline void LSHProjectionOptions::UnPackTo(LSHProjectionOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12390. (void)_o;
  12391. (void)_resolver;
  12392. { auto _e = type(); _o->type = _e; }
  12393. }
  12394. inline flatbuffers::Offset<LSHProjectionOptions> LSHProjectionOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12395. return CreateLSHProjectionOptions(_fbb, _o, _rehasher);
  12396. }
  12397. inline flatbuffers::Offset<LSHProjectionOptions> CreateLSHProjectionOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSHProjectionOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12398. (void)_rehasher;
  12399. (void)_o;
  12400. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LSHProjectionOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12401. auto _type = _o->type;
  12402. return tflite::CreateLSHProjectionOptions(
  12403. _fbb,
  12404. _type);
  12405. }
  12406. inline SVDFOptionsT *SVDFOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12407. std::unique_ptr<tflite::SVDFOptionsT> _o = std::unique_ptr<tflite::SVDFOptionsT>(new SVDFOptionsT());
  12408. UnPackTo(_o.get(), _resolver);
  12409. return _o.release();
  12410. }
  12411. inline void SVDFOptions::UnPackTo(SVDFOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12412. (void)_o;
  12413. (void)_resolver;
  12414. { auto _e = rank(); _o->rank = _e; }
  12415. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12416. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12417. }
  12418. inline flatbuffers::Offset<SVDFOptions> SVDFOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12419. return CreateSVDFOptions(_fbb, _o, _rehasher);
  12420. }
  12421. inline flatbuffers::Offset<SVDFOptions> CreateSVDFOptions(flatbuffers::FlatBufferBuilder &_fbb, const SVDFOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12422. (void)_rehasher;
  12423. (void)_o;
  12424. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SVDFOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12425. auto _rank = _o->rank;
  12426. auto _fused_activation_function = _o->fused_activation_function;
  12427. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12428. return tflite::CreateSVDFOptions(
  12429. _fbb,
  12430. _rank,
  12431. _fused_activation_function,
  12432. _asymmetric_quantize_inputs);
  12433. }
  12434. inline RNNOptionsT *RNNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12435. std::unique_ptr<tflite::RNNOptionsT> _o = std::unique_ptr<tflite::RNNOptionsT>(new RNNOptionsT());
  12436. UnPackTo(_o.get(), _resolver);
  12437. return _o.release();
  12438. }
  12439. inline void RNNOptions::UnPackTo(RNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12440. (void)_o;
  12441. (void)_resolver;
  12442. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12443. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12444. }
  12445. inline flatbuffers::Offset<RNNOptions> RNNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12446. return CreateRNNOptions(_fbb, _o, _rehasher);
  12447. }
  12448. inline flatbuffers::Offset<RNNOptions> CreateRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const RNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12449. (void)_rehasher;
  12450. (void)_o;
  12451. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RNNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12452. auto _fused_activation_function = _o->fused_activation_function;
  12453. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12454. return tflite::CreateRNNOptions(
  12455. _fbb,
  12456. _fused_activation_function,
  12457. _asymmetric_quantize_inputs);
  12458. }
  12459. inline SequenceRNNOptionsT *SequenceRNNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12460. std::unique_ptr<tflite::SequenceRNNOptionsT> _o = std::unique_ptr<tflite::SequenceRNNOptionsT>(new SequenceRNNOptionsT());
  12461. UnPackTo(_o.get(), _resolver);
  12462. return _o.release();
  12463. }
  12464. inline void SequenceRNNOptions::UnPackTo(SequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12465. (void)_o;
  12466. (void)_resolver;
  12467. { auto _e = time_major(); _o->time_major = _e; }
  12468. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12469. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12470. }
  12471. inline flatbuffers::Offset<SequenceRNNOptions> SequenceRNNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12472. return CreateSequenceRNNOptions(_fbb, _o, _rehasher);
  12473. }
  12474. inline flatbuffers::Offset<SequenceRNNOptions> CreateSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const SequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12475. (void)_rehasher;
  12476. (void)_o;
  12477. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SequenceRNNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12478. auto _time_major = _o->time_major;
  12479. auto _fused_activation_function = _o->fused_activation_function;
  12480. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12481. return tflite::CreateSequenceRNNOptions(
  12482. _fbb,
  12483. _time_major,
  12484. _fused_activation_function,
  12485. _asymmetric_quantize_inputs);
  12486. }
  12487. inline BidirectionalSequenceRNNOptionsT *BidirectionalSequenceRNNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12488. std::unique_ptr<tflite::BidirectionalSequenceRNNOptionsT> _o = std::unique_ptr<tflite::BidirectionalSequenceRNNOptionsT>(new BidirectionalSequenceRNNOptionsT());
  12489. UnPackTo(_o.get(), _resolver);
  12490. return _o.release();
  12491. }
  12492. inline void BidirectionalSequenceRNNOptions::UnPackTo(BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12493. (void)_o;
  12494. (void)_resolver;
  12495. { auto _e = time_major(); _o->time_major = _e; }
  12496. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12497. { auto _e = merge_outputs(); _o->merge_outputs = _e; }
  12498. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12499. }
  12500. inline flatbuffers::Offset<BidirectionalSequenceRNNOptions> BidirectionalSequenceRNNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12501. return CreateBidirectionalSequenceRNNOptions(_fbb, _o, _rehasher);
  12502. }
  12503. inline flatbuffers::Offset<BidirectionalSequenceRNNOptions> CreateBidirectionalSequenceRNNOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceRNNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12504. (void)_rehasher;
  12505. (void)_o;
  12506. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BidirectionalSequenceRNNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12507. auto _time_major = _o->time_major;
  12508. auto _fused_activation_function = _o->fused_activation_function;
  12509. auto _merge_outputs = _o->merge_outputs;
  12510. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12511. return tflite::CreateBidirectionalSequenceRNNOptions(
  12512. _fbb,
  12513. _time_major,
  12514. _fused_activation_function,
  12515. _merge_outputs,
  12516. _asymmetric_quantize_inputs);
  12517. }
  12518. inline FullyConnectedOptionsT *FullyConnectedOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12519. std::unique_ptr<tflite::FullyConnectedOptionsT> _o = std::unique_ptr<tflite::FullyConnectedOptionsT>(new FullyConnectedOptionsT());
  12520. UnPackTo(_o.get(), _resolver);
  12521. return _o.release();
  12522. }
  12523. inline void FullyConnectedOptions::UnPackTo(FullyConnectedOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12524. (void)_o;
  12525. (void)_resolver;
  12526. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12527. { auto _e = weights_format(); _o->weights_format = _e; }
  12528. { auto _e = keep_num_dims(); _o->keep_num_dims = _e; }
  12529. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12530. }
  12531. inline flatbuffers::Offset<FullyConnectedOptions> FullyConnectedOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12532. return CreateFullyConnectedOptions(_fbb, _o, _rehasher);
  12533. }
  12534. inline flatbuffers::Offset<FullyConnectedOptions> CreateFullyConnectedOptions(flatbuffers::FlatBufferBuilder &_fbb, const FullyConnectedOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12535. (void)_rehasher;
  12536. (void)_o;
  12537. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FullyConnectedOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12538. auto _fused_activation_function = _o->fused_activation_function;
  12539. auto _weights_format = _o->weights_format;
  12540. auto _keep_num_dims = _o->keep_num_dims;
  12541. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12542. return tflite::CreateFullyConnectedOptions(
  12543. _fbb,
  12544. _fused_activation_function,
  12545. _weights_format,
  12546. _keep_num_dims,
  12547. _asymmetric_quantize_inputs);
  12548. }
  12549. inline SoftmaxOptionsT *SoftmaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12550. std::unique_ptr<tflite::SoftmaxOptionsT> _o = std::unique_ptr<tflite::SoftmaxOptionsT>(new SoftmaxOptionsT());
  12551. UnPackTo(_o.get(), _resolver);
  12552. return _o.release();
  12553. }
  12554. inline void SoftmaxOptions::UnPackTo(SoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12555. (void)_o;
  12556. (void)_resolver;
  12557. { auto _e = beta(); _o->beta = _e; }
  12558. }
  12559. inline flatbuffers::Offset<SoftmaxOptions> SoftmaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12560. return CreateSoftmaxOptions(_fbb, _o, _rehasher);
  12561. }
  12562. inline flatbuffers::Offset<SoftmaxOptions> CreateSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const SoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12563. (void)_rehasher;
  12564. (void)_o;
  12565. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SoftmaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12566. auto _beta = _o->beta;
  12567. return tflite::CreateSoftmaxOptions(
  12568. _fbb,
  12569. _beta);
  12570. }
  12571. inline ConcatenationOptionsT *ConcatenationOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12572. std::unique_ptr<tflite::ConcatenationOptionsT> _o = std::unique_ptr<tflite::ConcatenationOptionsT>(new ConcatenationOptionsT());
  12573. UnPackTo(_o.get(), _resolver);
  12574. return _o.release();
  12575. }
  12576. inline void ConcatenationOptions::UnPackTo(ConcatenationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12577. (void)_o;
  12578. (void)_resolver;
  12579. { auto _e = axis(); _o->axis = _e; }
  12580. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12581. }
  12582. inline flatbuffers::Offset<ConcatenationOptions> ConcatenationOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12583. return CreateConcatenationOptions(_fbb, _o, _rehasher);
  12584. }
  12585. inline flatbuffers::Offset<ConcatenationOptions> CreateConcatenationOptions(flatbuffers::FlatBufferBuilder &_fbb, const ConcatenationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12586. (void)_rehasher;
  12587. (void)_o;
  12588. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ConcatenationOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12589. auto _axis = _o->axis;
  12590. auto _fused_activation_function = _o->fused_activation_function;
  12591. return tflite::CreateConcatenationOptions(
  12592. _fbb,
  12593. _axis,
  12594. _fused_activation_function);
  12595. }
  12596. inline AddOptionsT *AddOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12597. std::unique_ptr<tflite::AddOptionsT> _o = std::unique_ptr<tflite::AddOptionsT>(new AddOptionsT());
  12598. UnPackTo(_o.get(), _resolver);
  12599. return _o.release();
  12600. }
  12601. inline void AddOptions::UnPackTo(AddOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12602. (void)_o;
  12603. (void)_resolver;
  12604. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12605. { auto _e = pot_scale_int16(); _o->pot_scale_int16 = _e; }
  12606. }
  12607. inline flatbuffers::Offset<AddOptions> AddOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12608. return CreateAddOptions(_fbb, _o, _rehasher);
  12609. }
  12610. inline flatbuffers::Offset<AddOptions> CreateAddOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12611. (void)_rehasher;
  12612. (void)_o;
  12613. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AddOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12614. auto _fused_activation_function = _o->fused_activation_function;
  12615. auto _pot_scale_int16 = _o->pot_scale_int16;
  12616. return tflite::CreateAddOptions(
  12617. _fbb,
  12618. _fused_activation_function,
  12619. _pot_scale_int16);
  12620. }
  12621. inline MulOptionsT *MulOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12622. std::unique_ptr<tflite::MulOptionsT> _o = std::unique_ptr<tflite::MulOptionsT>(new MulOptionsT());
  12623. UnPackTo(_o.get(), _resolver);
  12624. return _o.release();
  12625. }
  12626. inline void MulOptions::UnPackTo(MulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12627. (void)_o;
  12628. (void)_resolver;
  12629. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12630. }
  12631. inline flatbuffers::Offset<MulOptions> MulOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12632. return CreateMulOptions(_fbb, _o, _rehasher);
  12633. }
  12634. inline flatbuffers::Offset<MulOptions> CreateMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const MulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12635. (void)_rehasher;
  12636. (void)_o;
  12637. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MulOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12638. auto _fused_activation_function = _o->fused_activation_function;
  12639. return tflite::CreateMulOptions(
  12640. _fbb,
  12641. _fused_activation_function);
  12642. }
  12643. inline L2NormOptionsT *L2NormOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12644. std::unique_ptr<tflite::L2NormOptionsT> _o = std::unique_ptr<tflite::L2NormOptionsT>(new L2NormOptionsT());
  12645. UnPackTo(_o.get(), _resolver);
  12646. return _o.release();
  12647. }
  12648. inline void L2NormOptions::UnPackTo(L2NormOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12649. (void)_o;
  12650. (void)_resolver;
  12651. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12652. }
  12653. inline flatbuffers::Offset<L2NormOptions> L2NormOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12654. return CreateL2NormOptions(_fbb, _o, _rehasher);
  12655. }
  12656. inline flatbuffers::Offset<L2NormOptions> CreateL2NormOptions(flatbuffers::FlatBufferBuilder &_fbb, const L2NormOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12657. (void)_rehasher;
  12658. (void)_o;
  12659. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const L2NormOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12660. auto _fused_activation_function = _o->fused_activation_function;
  12661. return tflite::CreateL2NormOptions(
  12662. _fbb,
  12663. _fused_activation_function);
  12664. }
  12665. inline LocalResponseNormalizationOptionsT *LocalResponseNormalizationOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12666. std::unique_ptr<tflite::LocalResponseNormalizationOptionsT> _o = std::unique_ptr<tflite::LocalResponseNormalizationOptionsT>(new LocalResponseNormalizationOptionsT());
  12667. UnPackTo(_o.get(), _resolver);
  12668. return _o.release();
  12669. }
  12670. inline void LocalResponseNormalizationOptions::UnPackTo(LocalResponseNormalizationOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12671. (void)_o;
  12672. (void)_resolver;
  12673. { auto _e = radius(); _o->radius = _e; }
  12674. { auto _e = bias(); _o->bias = _e; }
  12675. { auto _e = alpha(); _o->alpha = _e; }
  12676. { auto _e = beta(); _o->beta = _e; }
  12677. }
  12678. inline flatbuffers::Offset<LocalResponseNormalizationOptions> LocalResponseNormalizationOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12679. return CreateLocalResponseNormalizationOptions(_fbb, _o, _rehasher);
  12680. }
  12681. inline flatbuffers::Offset<LocalResponseNormalizationOptions> CreateLocalResponseNormalizationOptions(flatbuffers::FlatBufferBuilder &_fbb, const LocalResponseNormalizationOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12682. (void)_rehasher;
  12683. (void)_o;
  12684. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LocalResponseNormalizationOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12685. auto _radius = _o->radius;
  12686. auto _bias = _o->bias;
  12687. auto _alpha = _o->alpha;
  12688. auto _beta = _o->beta;
  12689. return tflite::CreateLocalResponseNormalizationOptions(
  12690. _fbb,
  12691. _radius,
  12692. _bias,
  12693. _alpha,
  12694. _beta);
  12695. }
  12696. inline LSTMOptionsT *LSTMOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12697. std::unique_ptr<tflite::LSTMOptionsT> _o = std::unique_ptr<tflite::LSTMOptionsT>(new LSTMOptionsT());
  12698. UnPackTo(_o.get(), _resolver);
  12699. return _o.release();
  12700. }
  12701. inline void LSTMOptions::UnPackTo(LSTMOptionsT *_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. { auto _e = cell_clip(); _o->cell_clip = _e; }
  12706. { auto _e = proj_clip(); _o->proj_clip = _e; }
  12707. { auto _e = kernel_type(); _o->kernel_type = _e; }
  12708. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12709. }
  12710. inline flatbuffers::Offset<LSTMOptions> LSTMOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12711. return CreateLSTMOptions(_fbb, _o, _rehasher);
  12712. }
  12713. inline flatbuffers::Offset<LSTMOptions> CreateLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const LSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12714. (void)_rehasher;
  12715. (void)_o;
  12716. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LSTMOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12717. auto _fused_activation_function = _o->fused_activation_function;
  12718. auto _cell_clip = _o->cell_clip;
  12719. auto _proj_clip = _o->proj_clip;
  12720. auto _kernel_type = _o->kernel_type;
  12721. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12722. return tflite::CreateLSTMOptions(
  12723. _fbb,
  12724. _fused_activation_function,
  12725. _cell_clip,
  12726. _proj_clip,
  12727. _kernel_type,
  12728. _asymmetric_quantize_inputs);
  12729. }
  12730. inline UnidirectionalSequenceLSTMOptionsT *UnidirectionalSequenceLSTMOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12731. std::unique_ptr<tflite::UnidirectionalSequenceLSTMOptionsT> _o = std::unique_ptr<tflite::UnidirectionalSequenceLSTMOptionsT>(new UnidirectionalSequenceLSTMOptionsT());
  12732. UnPackTo(_o.get(), _resolver);
  12733. return _o.release();
  12734. }
  12735. inline void UnidirectionalSequenceLSTMOptions::UnPackTo(UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12736. (void)_o;
  12737. (void)_resolver;
  12738. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12739. { auto _e = cell_clip(); _o->cell_clip = _e; }
  12740. { auto _e = proj_clip(); _o->proj_clip = _e; }
  12741. { auto _e = time_major(); _o->time_major = _e; }
  12742. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12743. }
  12744. inline flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> UnidirectionalSequenceLSTMOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12745. return CreateUnidirectionalSequenceLSTMOptions(_fbb, _o, _rehasher);
  12746. }
  12747. inline flatbuffers::Offset<UnidirectionalSequenceLSTMOptions> CreateUnidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12748. (void)_rehasher;
  12749. (void)_o;
  12750. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnidirectionalSequenceLSTMOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12751. auto _fused_activation_function = _o->fused_activation_function;
  12752. auto _cell_clip = _o->cell_clip;
  12753. auto _proj_clip = _o->proj_clip;
  12754. auto _time_major = _o->time_major;
  12755. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12756. return tflite::CreateUnidirectionalSequenceLSTMOptions(
  12757. _fbb,
  12758. _fused_activation_function,
  12759. _cell_clip,
  12760. _proj_clip,
  12761. _time_major,
  12762. _asymmetric_quantize_inputs);
  12763. }
  12764. inline BidirectionalSequenceLSTMOptionsT *BidirectionalSequenceLSTMOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12765. std::unique_ptr<tflite::BidirectionalSequenceLSTMOptionsT> _o = std::unique_ptr<tflite::BidirectionalSequenceLSTMOptionsT>(new BidirectionalSequenceLSTMOptionsT());
  12766. UnPackTo(_o.get(), _resolver);
  12767. return _o.release();
  12768. }
  12769. inline void BidirectionalSequenceLSTMOptions::UnPackTo(BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12770. (void)_o;
  12771. (void)_resolver;
  12772. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  12773. { auto _e = cell_clip(); _o->cell_clip = _e; }
  12774. { auto _e = proj_clip(); _o->proj_clip = _e; }
  12775. { auto _e = merge_outputs(); _o->merge_outputs = _e; }
  12776. { auto _e = time_major(); _o->time_major = _e; }
  12777. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  12778. }
  12779. inline flatbuffers::Offset<BidirectionalSequenceLSTMOptions> BidirectionalSequenceLSTMOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12780. return CreateBidirectionalSequenceLSTMOptions(_fbb, _o, _rehasher);
  12781. }
  12782. inline flatbuffers::Offset<BidirectionalSequenceLSTMOptions> CreateBidirectionalSequenceLSTMOptions(flatbuffers::FlatBufferBuilder &_fbb, const BidirectionalSequenceLSTMOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12783. (void)_rehasher;
  12784. (void)_o;
  12785. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BidirectionalSequenceLSTMOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12786. auto _fused_activation_function = _o->fused_activation_function;
  12787. auto _cell_clip = _o->cell_clip;
  12788. auto _proj_clip = _o->proj_clip;
  12789. auto _merge_outputs = _o->merge_outputs;
  12790. auto _time_major = _o->time_major;
  12791. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  12792. return tflite::CreateBidirectionalSequenceLSTMOptions(
  12793. _fbb,
  12794. _fused_activation_function,
  12795. _cell_clip,
  12796. _proj_clip,
  12797. _merge_outputs,
  12798. _time_major,
  12799. _asymmetric_quantize_inputs);
  12800. }
  12801. inline ResizeBilinearOptionsT *ResizeBilinearOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12802. std::unique_ptr<tflite::ResizeBilinearOptionsT> _o = std::unique_ptr<tflite::ResizeBilinearOptionsT>(new ResizeBilinearOptionsT());
  12803. UnPackTo(_o.get(), _resolver);
  12804. return _o.release();
  12805. }
  12806. inline void ResizeBilinearOptions::UnPackTo(ResizeBilinearOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12807. (void)_o;
  12808. (void)_resolver;
  12809. { auto _e = align_corners(); _o->align_corners = _e; }
  12810. { auto _e = half_pixel_centers(); _o->half_pixel_centers = _e; }
  12811. }
  12812. inline flatbuffers::Offset<ResizeBilinearOptions> ResizeBilinearOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12813. return CreateResizeBilinearOptions(_fbb, _o, _rehasher);
  12814. }
  12815. inline flatbuffers::Offset<ResizeBilinearOptions> CreateResizeBilinearOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeBilinearOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12816. (void)_rehasher;
  12817. (void)_o;
  12818. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ResizeBilinearOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12819. auto _align_corners = _o->align_corners;
  12820. auto _half_pixel_centers = _o->half_pixel_centers;
  12821. return tflite::CreateResizeBilinearOptions(
  12822. _fbb,
  12823. _align_corners,
  12824. _half_pixel_centers);
  12825. }
  12826. inline ResizeNearestNeighborOptionsT *ResizeNearestNeighborOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12827. std::unique_ptr<tflite::ResizeNearestNeighborOptionsT> _o = std::unique_ptr<tflite::ResizeNearestNeighborOptionsT>(new ResizeNearestNeighborOptionsT());
  12828. UnPackTo(_o.get(), _resolver);
  12829. return _o.release();
  12830. }
  12831. inline void ResizeNearestNeighborOptions::UnPackTo(ResizeNearestNeighborOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12832. (void)_o;
  12833. (void)_resolver;
  12834. { auto _e = align_corners(); _o->align_corners = _e; }
  12835. { auto _e = half_pixel_centers(); _o->half_pixel_centers = _e; }
  12836. }
  12837. inline flatbuffers::Offset<ResizeNearestNeighborOptions> ResizeNearestNeighborOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12838. return CreateResizeNearestNeighborOptions(_fbb, _o, _rehasher);
  12839. }
  12840. inline flatbuffers::Offset<ResizeNearestNeighborOptions> CreateResizeNearestNeighborOptions(flatbuffers::FlatBufferBuilder &_fbb, const ResizeNearestNeighborOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12841. (void)_rehasher;
  12842. (void)_o;
  12843. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ResizeNearestNeighborOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12844. auto _align_corners = _o->align_corners;
  12845. auto _half_pixel_centers = _o->half_pixel_centers;
  12846. return tflite::CreateResizeNearestNeighborOptions(
  12847. _fbb,
  12848. _align_corners,
  12849. _half_pixel_centers);
  12850. }
  12851. inline CallOptionsT *CallOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12852. std::unique_ptr<tflite::CallOptionsT> _o = std::unique_ptr<tflite::CallOptionsT>(new CallOptionsT());
  12853. UnPackTo(_o.get(), _resolver);
  12854. return _o.release();
  12855. }
  12856. inline void CallOptions::UnPackTo(CallOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12857. (void)_o;
  12858. (void)_resolver;
  12859. { auto _e = subgraph(); _o->subgraph = _e; }
  12860. }
  12861. inline flatbuffers::Offset<CallOptions> CallOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12862. return CreateCallOptions(_fbb, _o, _rehasher);
  12863. }
  12864. inline flatbuffers::Offset<CallOptions> CreateCallOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12865. (void)_rehasher;
  12866. (void)_o;
  12867. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CallOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12868. auto _subgraph = _o->subgraph;
  12869. return tflite::CreateCallOptions(
  12870. _fbb,
  12871. _subgraph);
  12872. }
  12873. inline PadOptionsT *PadOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12874. std::unique_ptr<tflite::PadOptionsT> _o = std::unique_ptr<tflite::PadOptionsT>(new PadOptionsT());
  12875. UnPackTo(_o.get(), _resolver);
  12876. return _o.release();
  12877. }
  12878. inline void PadOptions::UnPackTo(PadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12879. (void)_o;
  12880. (void)_resolver;
  12881. }
  12882. inline flatbuffers::Offset<PadOptions> PadOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12883. return CreatePadOptions(_fbb, _o, _rehasher);
  12884. }
  12885. inline flatbuffers::Offset<PadOptions> CreatePadOptions(flatbuffers::FlatBufferBuilder &_fbb, const PadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12886. (void)_rehasher;
  12887. (void)_o;
  12888. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PadOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12889. return tflite::CreatePadOptions(
  12890. _fbb);
  12891. }
  12892. inline PadV2OptionsT *PadV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12893. std::unique_ptr<tflite::PadV2OptionsT> _o = std::unique_ptr<tflite::PadV2OptionsT>(new PadV2OptionsT());
  12894. UnPackTo(_o.get(), _resolver);
  12895. return _o.release();
  12896. }
  12897. inline void PadV2Options::UnPackTo(PadV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12898. (void)_o;
  12899. (void)_resolver;
  12900. }
  12901. inline flatbuffers::Offset<PadV2Options> PadV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12902. return CreatePadV2Options(_fbb, _o, _rehasher);
  12903. }
  12904. inline flatbuffers::Offset<PadV2Options> CreatePadV2Options(flatbuffers::FlatBufferBuilder &_fbb, const PadV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12905. (void)_rehasher;
  12906. (void)_o;
  12907. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PadV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12908. return tflite::CreatePadV2Options(
  12909. _fbb);
  12910. }
  12911. inline ReshapeOptionsT *ReshapeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12912. std::unique_ptr<tflite::ReshapeOptionsT> _o = std::unique_ptr<tflite::ReshapeOptionsT>(new ReshapeOptionsT());
  12913. UnPackTo(_o.get(), _resolver);
  12914. return _o.release();
  12915. }
  12916. inline void ReshapeOptions::UnPackTo(ReshapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12917. (void)_o;
  12918. (void)_resolver;
  12919. { 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); } } }
  12920. }
  12921. inline flatbuffers::Offset<ReshapeOptions> ReshapeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12922. return CreateReshapeOptions(_fbb, _o, _rehasher);
  12923. }
  12924. inline flatbuffers::Offset<ReshapeOptions> CreateReshapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReshapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12925. (void)_rehasher;
  12926. (void)_o;
  12927. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReshapeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12928. auto _new_shape = _o->new_shape.size() ? _fbb.CreateVector(_o->new_shape) : 0;
  12929. return tflite::CreateReshapeOptions(
  12930. _fbb,
  12931. _new_shape);
  12932. }
  12933. inline SpaceToBatchNDOptionsT *SpaceToBatchNDOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12934. std::unique_ptr<tflite::SpaceToBatchNDOptionsT> _o = std::unique_ptr<tflite::SpaceToBatchNDOptionsT>(new SpaceToBatchNDOptionsT());
  12935. UnPackTo(_o.get(), _resolver);
  12936. return _o.release();
  12937. }
  12938. inline void SpaceToBatchNDOptions::UnPackTo(SpaceToBatchNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12939. (void)_o;
  12940. (void)_resolver;
  12941. }
  12942. inline flatbuffers::Offset<SpaceToBatchNDOptions> SpaceToBatchNDOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12943. return CreateSpaceToBatchNDOptions(_fbb, _o, _rehasher);
  12944. }
  12945. inline flatbuffers::Offset<SpaceToBatchNDOptions> CreateSpaceToBatchNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToBatchNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12946. (void)_rehasher;
  12947. (void)_o;
  12948. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SpaceToBatchNDOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12949. return tflite::CreateSpaceToBatchNDOptions(
  12950. _fbb);
  12951. }
  12952. inline BatchToSpaceNDOptionsT *BatchToSpaceNDOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12953. std::unique_ptr<tflite::BatchToSpaceNDOptionsT> _o = std::unique_ptr<tflite::BatchToSpaceNDOptionsT>(new BatchToSpaceNDOptionsT());
  12954. UnPackTo(_o.get(), _resolver);
  12955. return _o.release();
  12956. }
  12957. inline void BatchToSpaceNDOptions::UnPackTo(BatchToSpaceNDOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12958. (void)_o;
  12959. (void)_resolver;
  12960. }
  12961. inline flatbuffers::Offset<BatchToSpaceNDOptions> BatchToSpaceNDOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12962. return CreateBatchToSpaceNDOptions(_fbb, _o, _rehasher);
  12963. }
  12964. inline flatbuffers::Offset<BatchToSpaceNDOptions> CreateBatchToSpaceNDOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchToSpaceNDOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12965. (void)_rehasher;
  12966. (void)_o;
  12967. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BatchToSpaceNDOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12968. return tflite::CreateBatchToSpaceNDOptions(
  12969. _fbb);
  12970. }
  12971. inline SkipGramOptionsT *SkipGramOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  12972. std::unique_ptr<tflite::SkipGramOptionsT> _o = std::unique_ptr<tflite::SkipGramOptionsT>(new SkipGramOptionsT());
  12973. UnPackTo(_o.get(), _resolver);
  12974. return _o.release();
  12975. }
  12976. inline void SkipGramOptions::UnPackTo(SkipGramOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  12977. (void)_o;
  12978. (void)_resolver;
  12979. { auto _e = ngram_size(); _o->ngram_size = _e; }
  12980. { auto _e = max_skip_size(); _o->max_skip_size = _e; }
  12981. { auto _e = include_all_ngrams(); _o->include_all_ngrams = _e; }
  12982. }
  12983. inline flatbuffers::Offset<SkipGramOptions> SkipGramOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  12984. return CreateSkipGramOptions(_fbb, _o, _rehasher);
  12985. }
  12986. inline flatbuffers::Offset<SkipGramOptions> CreateSkipGramOptions(flatbuffers::FlatBufferBuilder &_fbb, const SkipGramOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  12987. (void)_rehasher;
  12988. (void)_o;
  12989. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SkipGramOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  12990. auto _ngram_size = _o->ngram_size;
  12991. auto _max_skip_size = _o->max_skip_size;
  12992. auto _include_all_ngrams = _o->include_all_ngrams;
  12993. return tflite::CreateSkipGramOptions(
  12994. _fbb,
  12995. _ngram_size,
  12996. _max_skip_size,
  12997. _include_all_ngrams);
  12998. }
  12999. inline SpaceToDepthOptionsT *SpaceToDepthOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13000. std::unique_ptr<tflite::SpaceToDepthOptionsT> _o = std::unique_ptr<tflite::SpaceToDepthOptionsT>(new SpaceToDepthOptionsT());
  13001. UnPackTo(_o.get(), _resolver);
  13002. return _o.release();
  13003. }
  13004. inline void SpaceToDepthOptions::UnPackTo(SpaceToDepthOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13005. (void)_o;
  13006. (void)_resolver;
  13007. { auto _e = block_size(); _o->block_size = _e; }
  13008. }
  13009. inline flatbuffers::Offset<SpaceToDepthOptions> SpaceToDepthOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13010. return CreateSpaceToDepthOptions(_fbb, _o, _rehasher);
  13011. }
  13012. inline flatbuffers::Offset<SpaceToDepthOptions> CreateSpaceToDepthOptions(flatbuffers::FlatBufferBuilder &_fbb, const SpaceToDepthOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13013. (void)_rehasher;
  13014. (void)_o;
  13015. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SpaceToDepthOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13016. auto _block_size = _o->block_size;
  13017. return tflite::CreateSpaceToDepthOptions(
  13018. _fbb,
  13019. _block_size);
  13020. }
  13021. inline DepthToSpaceOptionsT *DepthToSpaceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13022. std::unique_ptr<tflite::DepthToSpaceOptionsT> _o = std::unique_ptr<tflite::DepthToSpaceOptionsT>(new DepthToSpaceOptionsT());
  13023. UnPackTo(_o.get(), _resolver);
  13024. return _o.release();
  13025. }
  13026. inline void DepthToSpaceOptions::UnPackTo(DepthToSpaceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13027. (void)_o;
  13028. (void)_resolver;
  13029. { auto _e = block_size(); _o->block_size = _e; }
  13030. }
  13031. inline flatbuffers::Offset<DepthToSpaceOptions> DepthToSpaceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13032. return CreateDepthToSpaceOptions(_fbb, _o, _rehasher);
  13033. }
  13034. inline flatbuffers::Offset<DepthToSpaceOptions> CreateDepthToSpaceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DepthToSpaceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13035. (void)_rehasher;
  13036. (void)_o;
  13037. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DepthToSpaceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13038. auto _block_size = _o->block_size;
  13039. return tflite::CreateDepthToSpaceOptions(
  13040. _fbb,
  13041. _block_size);
  13042. }
  13043. inline SubOptionsT *SubOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13044. std::unique_ptr<tflite::SubOptionsT> _o = std::unique_ptr<tflite::SubOptionsT>(new SubOptionsT());
  13045. UnPackTo(_o.get(), _resolver);
  13046. return _o.release();
  13047. }
  13048. inline void SubOptions::UnPackTo(SubOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13049. (void)_o;
  13050. (void)_resolver;
  13051. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  13052. { auto _e = pot_scale_int16(); _o->pot_scale_int16 = _e; }
  13053. }
  13054. inline flatbuffers::Offset<SubOptions> SubOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13055. return CreateSubOptions(_fbb, _o, _rehasher);
  13056. }
  13057. inline flatbuffers::Offset<SubOptions> CreateSubOptions(flatbuffers::FlatBufferBuilder &_fbb, const SubOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13058. (void)_rehasher;
  13059. (void)_o;
  13060. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SubOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13061. auto _fused_activation_function = _o->fused_activation_function;
  13062. auto _pot_scale_int16 = _o->pot_scale_int16;
  13063. return tflite::CreateSubOptions(
  13064. _fbb,
  13065. _fused_activation_function,
  13066. _pot_scale_int16);
  13067. }
  13068. inline DivOptionsT *DivOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13069. std::unique_ptr<tflite::DivOptionsT> _o = std::unique_ptr<tflite::DivOptionsT>(new DivOptionsT());
  13070. UnPackTo(_o.get(), _resolver);
  13071. return _o.release();
  13072. }
  13073. inline void DivOptions::UnPackTo(DivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13074. (void)_o;
  13075. (void)_resolver;
  13076. { auto _e = fused_activation_function(); _o->fused_activation_function = _e; }
  13077. }
  13078. inline flatbuffers::Offset<DivOptions> DivOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13079. return CreateDivOptions(_fbb, _o, _rehasher);
  13080. }
  13081. inline flatbuffers::Offset<DivOptions> CreateDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const DivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13082. (void)_rehasher;
  13083. (void)_o;
  13084. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DivOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13085. auto _fused_activation_function = _o->fused_activation_function;
  13086. return tflite::CreateDivOptions(
  13087. _fbb,
  13088. _fused_activation_function);
  13089. }
  13090. inline TopKV2OptionsT *TopKV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13091. std::unique_ptr<tflite::TopKV2OptionsT> _o = std::unique_ptr<tflite::TopKV2OptionsT>(new TopKV2OptionsT());
  13092. UnPackTo(_o.get(), _resolver);
  13093. return _o.release();
  13094. }
  13095. inline void TopKV2Options::UnPackTo(TopKV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13096. (void)_o;
  13097. (void)_resolver;
  13098. }
  13099. inline flatbuffers::Offset<TopKV2Options> TopKV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13100. return CreateTopKV2Options(_fbb, _o, _rehasher);
  13101. }
  13102. inline flatbuffers::Offset<TopKV2Options> CreateTopKV2Options(flatbuffers::FlatBufferBuilder &_fbb, const TopKV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13103. (void)_rehasher;
  13104. (void)_o;
  13105. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TopKV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13106. return tflite::CreateTopKV2Options(
  13107. _fbb);
  13108. }
  13109. inline EmbeddingLookupSparseOptionsT *EmbeddingLookupSparseOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13110. std::unique_ptr<tflite::EmbeddingLookupSparseOptionsT> _o = std::unique_ptr<tflite::EmbeddingLookupSparseOptionsT>(new EmbeddingLookupSparseOptionsT());
  13111. UnPackTo(_o.get(), _resolver);
  13112. return _o.release();
  13113. }
  13114. inline void EmbeddingLookupSparseOptions::UnPackTo(EmbeddingLookupSparseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13115. (void)_o;
  13116. (void)_resolver;
  13117. { auto _e = combiner(); _o->combiner = _e; }
  13118. }
  13119. inline flatbuffers::Offset<EmbeddingLookupSparseOptions> EmbeddingLookupSparseOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13120. return CreateEmbeddingLookupSparseOptions(_fbb, _o, _rehasher);
  13121. }
  13122. inline flatbuffers::Offset<EmbeddingLookupSparseOptions> CreateEmbeddingLookupSparseOptions(flatbuffers::FlatBufferBuilder &_fbb, const EmbeddingLookupSparseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13123. (void)_rehasher;
  13124. (void)_o;
  13125. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const EmbeddingLookupSparseOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13126. auto _combiner = _o->combiner;
  13127. return tflite::CreateEmbeddingLookupSparseOptions(
  13128. _fbb,
  13129. _combiner);
  13130. }
  13131. inline GatherOptionsT *GatherOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13132. std::unique_ptr<tflite::GatherOptionsT> _o = std::unique_ptr<tflite::GatherOptionsT>(new GatherOptionsT());
  13133. UnPackTo(_o.get(), _resolver);
  13134. return _o.release();
  13135. }
  13136. inline void GatherOptions::UnPackTo(GatherOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13137. (void)_o;
  13138. (void)_resolver;
  13139. { auto _e = axis(); _o->axis = _e; }
  13140. { auto _e = batch_dims(); _o->batch_dims = _e; }
  13141. }
  13142. inline flatbuffers::Offset<GatherOptions> GatherOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13143. return CreateGatherOptions(_fbb, _o, _rehasher);
  13144. }
  13145. inline flatbuffers::Offset<GatherOptions> CreateGatherOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13146. (void)_rehasher;
  13147. (void)_o;
  13148. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GatherOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13149. auto _axis = _o->axis;
  13150. auto _batch_dims = _o->batch_dims;
  13151. return tflite::CreateGatherOptions(
  13152. _fbb,
  13153. _axis,
  13154. _batch_dims);
  13155. }
  13156. inline TransposeOptionsT *TransposeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13157. std::unique_ptr<tflite::TransposeOptionsT> _o = std::unique_ptr<tflite::TransposeOptionsT>(new TransposeOptionsT());
  13158. UnPackTo(_o.get(), _resolver);
  13159. return _o.release();
  13160. }
  13161. inline void TransposeOptions::UnPackTo(TransposeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13162. (void)_o;
  13163. (void)_resolver;
  13164. }
  13165. inline flatbuffers::Offset<TransposeOptions> TransposeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13166. return CreateTransposeOptions(_fbb, _o, _rehasher);
  13167. }
  13168. inline flatbuffers::Offset<TransposeOptions> CreateTransposeOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13169. (void)_rehasher;
  13170. (void)_o;
  13171. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TransposeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13172. return tflite::CreateTransposeOptions(
  13173. _fbb);
  13174. }
  13175. inline ExpOptionsT *ExpOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13176. std::unique_ptr<tflite::ExpOptionsT> _o = std::unique_ptr<tflite::ExpOptionsT>(new ExpOptionsT());
  13177. UnPackTo(_o.get(), _resolver);
  13178. return _o.release();
  13179. }
  13180. inline void ExpOptions::UnPackTo(ExpOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13181. (void)_o;
  13182. (void)_resolver;
  13183. }
  13184. inline flatbuffers::Offset<ExpOptions> ExpOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13185. return CreateExpOptions(_fbb, _o, _rehasher);
  13186. }
  13187. inline flatbuffers::Offset<ExpOptions> CreateExpOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13188. (void)_rehasher;
  13189. (void)_o;
  13190. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ExpOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13191. return tflite::CreateExpOptions(
  13192. _fbb);
  13193. }
  13194. inline CosOptionsT *CosOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13195. std::unique_ptr<tflite::CosOptionsT> _o = std::unique_ptr<tflite::CosOptionsT>(new CosOptionsT());
  13196. UnPackTo(_o.get(), _resolver);
  13197. return _o.release();
  13198. }
  13199. inline void CosOptions::UnPackTo(CosOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13200. (void)_o;
  13201. (void)_resolver;
  13202. }
  13203. inline flatbuffers::Offset<CosOptions> CosOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13204. return CreateCosOptions(_fbb, _o, _rehasher);
  13205. }
  13206. inline flatbuffers::Offset<CosOptions> CreateCosOptions(flatbuffers::FlatBufferBuilder &_fbb, const CosOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13207. (void)_rehasher;
  13208. (void)_o;
  13209. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CosOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13210. return tflite::CreateCosOptions(
  13211. _fbb);
  13212. }
  13213. inline ReducerOptionsT *ReducerOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13214. std::unique_ptr<tflite::ReducerOptionsT> _o = std::unique_ptr<tflite::ReducerOptionsT>(new ReducerOptionsT());
  13215. UnPackTo(_o.get(), _resolver);
  13216. return _o.release();
  13217. }
  13218. inline void ReducerOptions::UnPackTo(ReducerOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13219. (void)_o;
  13220. (void)_resolver;
  13221. { auto _e = keep_dims(); _o->keep_dims = _e; }
  13222. }
  13223. inline flatbuffers::Offset<ReducerOptions> ReducerOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13224. return CreateReducerOptions(_fbb, _o, _rehasher);
  13225. }
  13226. inline flatbuffers::Offset<ReducerOptions> CreateReducerOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReducerOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13227. (void)_rehasher;
  13228. (void)_o;
  13229. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReducerOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13230. auto _keep_dims = _o->keep_dims;
  13231. return tflite::CreateReducerOptions(
  13232. _fbb,
  13233. _keep_dims);
  13234. }
  13235. inline SqueezeOptionsT *SqueezeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13236. std::unique_ptr<tflite::SqueezeOptionsT> _o = std::unique_ptr<tflite::SqueezeOptionsT>(new SqueezeOptionsT());
  13237. UnPackTo(_o.get(), _resolver);
  13238. return _o.release();
  13239. }
  13240. inline void SqueezeOptions::UnPackTo(SqueezeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13241. (void)_o;
  13242. (void)_resolver;
  13243. { 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); } } }
  13244. }
  13245. inline flatbuffers::Offset<SqueezeOptions> SqueezeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13246. return CreateSqueezeOptions(_fbb, _o, _rehasher);
  13247. }
  13248. inline flatbuffers::Offset<SqueezeOptions> CreateSqueezeOptions(flatbuffers::FlatBufferBuilder &_fbb, const SqueezeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13249. (void)_rehasher;
  13250. (void)_o;
  13251. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SqueezeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13252. auto _squeeze_dims = _o->squeeze_dims.size() ? _fbb.CreateVector(_o->squeeze_dims) : 0;
  13253. return tflite::CreateSqueezeOptions(
  13254. _fbb,
  13255. _squeeze_dims);
  13256. }
  13257. inline SplitOptionsT *SplitOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13258. std::unique_ptr<tflite::SplitOptionsT> _o = std::unique_ptr<tflite::SplitOptionsT>(new SplitOptionsT());
  13259. UnPackTo(_o.get(), _resolver);
  13260. return _o.release();
  13261. }
  13262. inline void SplitOptions::UnPackTo(SplitOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13263. (void)_o;
  13264. (void)_resolver;
  13265. { auto _e = num_splits(); _o->num_splits = _e; }
  13266. }
  13267. inline flatbuffers::Offset<SplitOptions> SplitOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13268. return CreateSplitOptions(_fbb, _o, _rehasher);
  13269. }
  13270. inline flatbuffers::Offset<SplitOptions> CreateSplitOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13271. (void)_rehasher;
  13272. (void)_o;
  13273. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SplitOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13274. auto _num_splits = _o->num_splits;
  13275. return tflite::CreateSplitOptions(
  13276. _fbb,
  13277. _num_splits);
  13278. }
  13279. inline SplitVOptionsT *SplitVOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13280. std::unique_ptr<tflite::SplitVOptionsT> _o = std::unique_ptr<tflite::SplitVOptionsT>(new SplitVOptionsT());
  13281. UnPackTo(_o.get(), _resolver);
  13282. return _o.release();
  13283. }
  13284. inline void SplitVOptions::UnPackTo(SplitVOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13285. (void)_o;
  13286. (void)_resolver;
  13287. { auto _e = num_splits(); _o->num_splits = _e; }
  13288. }
  13289. inline flatbuffers::Offset<SplitVOptions> SplitVOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13290. return CreateSplitVOptions(_fbb, _o, _rehasher);
  13291. }
  13292. inline flatbuffers::Offset<SplitVOptions> CreateSplitVOptions(flatbuffers::FlatBufferBuilder &_fbb, const SplitVOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13293. (void)_rehasher;
  13294. (void)_o;
  13295. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SplitVOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13296. auto _num_splits = _o->num_splits;
  13297. return tflite::CreateSplitVOptions(
  13298. _fbb,
  13299. _num_splits);
  13300. }
  13301. inline StridedSliceOptionsT *StridedSliceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13302. std::unique_ptr<tflite::StridedSliceOptionsT> _o = std::unique_ptr<tflite::StridedSliceOptionsT>(new StridedSliceOptionsT());
  13303. UnPackTo(_o.get(), _resolver);
  13304. return _o.release();
  13305. }
  13306. inline void StridedSliceOptions::UnPackTo(StridedSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13307. (void)_o;
  13308. (void)_resolver;
  13309. { auto _e = begin_mask(); _o->begin_mask = _e; }
  13310. { auto _e = end_mask(); _o->end_mask = _e; }
  13311. { auto _e = ellipsis_mask(); _o->ellipsis_mask = _e; }
  13312. { auto _e = new_axis_mask(); _o->new_axis_mask = _e; }
  13313. { auto _e = shrink_axis_mask(); _o->shrink_axis_mask = _e; }
  13314. }
  13315. inline flatbuffers::Offset<StridedSliceOptions> StridedSliceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13316. return CreateStridedSliceOptions(_fbb, _o, _rehasher);
  13317. }
  13318. inline flatbuffers::Offset<StridedSliceOptions> CreateStridedSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const StridedSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13319. (void)_rehasher;
  13320. (void)_o;
  13321. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const StridedSliceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13322. auto _begin_mask = _o->begin_mask;
  13323. auto _end_mask = _o->end_mask;
  13324. auto _ellipsis_mask = _o->ellipsis_mask;
  13325. auto _new_axis_mask = _o->new_axis_mask;
  13326. auto _shrink_axis_mask = _o->shrink_axis_mask;
  13327. return tflite::CreateStridedSliceOptions(
  13328. _fbb,
  13329. _begin_mask,
  13330. _end_mask,
  13331. _ellipsis_mask,
  13332. _new_axis_mask,
  13333. _shrink_axis_mask);
  13334. }
  13335. inline LogSoftmaxOptionsT *LogSoftmaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13336. std::unique_ptr<tflite::LogSoftmaxOptionsT> _o = std::unique_ptr<tflite::LogSoftmaxOptionsT>(new LogSoftmaxOptionsT());
  13337. UnPackTo(_o.get(), _resolver);
  13338. return _o.release();
  13339. }
  13340. inline void LogSoftmaxOptions::UnPackTo(LogSoftmaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13341. (void)_o;
  13342. (void)_resolver;
  13343. }
  13344. inline flatbuffers::Offset<LogSoftmaxOptions> LogSoftmaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13345. return CreateLogSoftmaxOptions(_fbb, _o, _rehasher);
  13346. }
  13347. inline flatbuffers::Offset<LogSoftmaxOptions> CreateLogSoftmaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogSoftmaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13348. (void)_rehasher;
  13349. (void)_o;
  13350. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogSoftmaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13351. return tflite::CreateLogSoftmaxOptions(
  13352. _fbb);
  13353. }
  13354. inline CastOptionsT *CastOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13355. std::unique_ptr<tflite::CastOptionsT> _o = std::unique_ptr<tflite::CastOptionsT>(new CastOptionsT());
  13356. UnPackTo(_o.get(), _resolver);
  13357. return _o.release();
  13358. }
  13359. inline void CastOptions::UnPackTo(CastOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13360. (void)_o;
  13361. (void)_resolver;
  13362. { auto _e = in_data_type(); _o->in_data_type = _e; }
  13363. { auto _e = out_data_type(); _o->out_data_type = _e; }
  13364. }
  13365. inline flatbuffers::Offset<CastOptions> CastOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13366. return CreateCastOptions(_fbb, _o, _rehasher);
  13367. }
  13368. inline flatbuffers::Offset<CastOptions> CreateCastOptions(flatbuffers::FlatBufferBuilder &_fbb, const CastOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13369. (void)_rehasher;
  13370. (void)_o;
  13371. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CastOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13372. auto _in_data_type = _o->in_data_type;
  13373. auto _out_data_type = _o->out_data_type;
  13374. return tflite::CreateCastOptions(
  13375. _fbb,
  13376. _in_data_type,
  13377. _out_data_type);
  13378. }
  13379. inline DequantizeOptionsT *DequantizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13380. std::unique_ptr<tflite::DequantizeOptionsT> _o = std::unique_ptr<tflite::DequantizeOptionsT>(new DequantizeOptionsT());
  13381. UnPackTo(_o.get(), _resolver);
  13382. return _o.release();
  13383. }
  13384. inline void DequantizeOptions::UnPackTo(DequantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13385. (void)_o;
  13386. (void)_resolver;
  13387. }
  13388. inline flatbuffers::Offset<DequantizeOptions> DequantizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13389. return CreateDequantizeOptions(_fbb, _o, _rehasher);
  13390. }
  13391. inline flatbuffers::Offset<DequantizeOptions> CreateDequantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const DequantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13392. (void)_rehasher;
  13393. (void)_o;
  13394. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DequantizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13395. return tflite::CreateDequantizeOptions(
  13396. _fbb);
  13397. }
  13398. inline MaximumMinimumOptionsT *MaximumMinimumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13399. std::unique_ptr<tflite::MaximumMinimumOptionsT> _o = std::unique_ptr<tflite::MaximumMinimumOptionsT>(new MaximumMinimumOptionsT());
  13400. UnPackTo(_o.get(), _resolver);
  13401. return _o.release();
  13402. }
  13403. inline void MaximumMinimumOptions::UnPackTo(MaximumMinimumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13404. (void)_o;
  13405. (void)_resolver;
  13406. }
  13407. inline flatbuffers::Offset<MaximumMinimumOptions> MaximumMinimumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13408. return CreateMaximumMinimumOptions(_fbb, _o, _rehasher);
  13409. }
  13410. inline flatbuffers::Offset<MaximumMinimumOptions> CreateMaximumMinimumOptions(flatbuffers::FlatBufferBuilder &_fbb, const MaximumMinimumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13411. (void)_rehasher;
  13412. (void)_o;
  13413. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MaximumMinimumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13414. return tflite::CreateMaximumMinimumOptions(
  13415. _fbb);
  13416. }
  13417. inline TileOptionsT *TileOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13418. std::unique_ptr<tflite::TileOptionsT> _o = std::unique_ptr<tflite::TileOptionsT>(new TileOptionsT());
  13419. UnPackTo(_o.get(), _resolver);
  13420. return _o.release();
  13421. }
  13422. inline void TileOptions::UnPackTo(TileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13423. (void)_o;
  13424. (void)_resolver;
  13425. }
  13426. inline flatbuffers::Offset<TileOptions> TileOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13427. return CreateTileOptions(_fbb, _o, _rehasher);
  13428. }
  13429. inline flatbuffers::Offset<TileOptions> CreateTileOptions(flatbuffers::FlatBufferBuilder &_fbb, const TileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13430. (void)_rehasher;
  13431. (void)_o;
  13432. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TileOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13433. return tflite::CreateTileOptions(
  13434. _fbb);
  13435. }
  13436. inline ArgMaxOptionsT *ArgMaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13437. std::unique_ptr<tflite::ArgMaxOptionsT> _o = std::unique_ptr<tflite::ArgMaxOptionsT>(new ArgMaxOptionsT());
  13438. UnPackTo(_o.get(), _resolver);
  13439. return _o.release();
  13440. }
  13441. inline void ArgMaxOptions::UnPackTo(ArgMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13442. (void)_o;
  13443. (void)_resolver;
  13444. { auto _e = output_type(); _o->output_type = _e; }
  13445. }
  13446. inline flatbuffers::Offset<ArgMaxOptions> ArgMaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13447. return CreateArgMaxOptions(_fbb, _o, _rehasher);
  13448. }
  13449. inline flatbuffers::Offset<ArgMaxOptions> CreateArgMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13450. (void)_rehasher;
  13451. (void)_o;
  13452. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ArgMaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13453. auto _output_type = _o->output_type;
  13454. return tflite::CreateArgMaxOptions(
  13455. _fbb,
  13456. _output_type);
  13457. }
  13458. inline ArgMinOptionsT *ArgMinOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13459. std::unique_ptr<tflite::ArgMinOptionsT> _o = std::unique_ptr<tflite::ArgMinOptionsT>(new ArgMinOptionsT());
  13460. UnPackTo(_o.get(), _resolver);
  13461. return _o.release();
  13462. }
  13463. inline void ArgMinOptions::UnPackTo(ArgMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13464. (void)_o;
  13465. (void)_resolver;
  13466. { auto _e = output_type(); _o->output_type = _e; }
  13467. }
  13468. inline flatbuffers::Offset<ArgMinOptions> ArgMinOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13469. return CreateArgMinOptions(_fbb, _o, _rehasher);
  13470. }
  13471. inline flatbuffers::Offset<ArgMinOptions> CreateArgMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const ArgMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13472. (void)_rehasher;
  13473. (void)_o;
  13474. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ArgMinOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13475. auto _output_type = _o->output_type;
  13476. return tflite::CreateArgMinOptions(
  13477. _fbb,
  13478. _output_type);
  13479. }
  13480. inline GreaterOptionsT *GreaterOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13481. std::unique_ptr<tflite::GreaterOptionsT> _o = std::unique_ptr<tflite::GreaterOptionsT>(new GreaterOptionsT());
  13482. UnPackTo(_o.get(), _resolver);
  13483. return _o.release();
  13484. }
  13485. inline void GreaterOptions::UnPackTo(GreaterOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13486. (void)_o;
  13487. (void)_resolver;
  13488. }
  13489. inline flatbuffers::Offset<GreaterOptions> GreaterOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13490. return CreateGreaterOptions(_fbb, _o, _rehasher);
  13491. }
  13492. inline flatbuffers::Offset<GreaterOptions> CreateGreaterOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13493. (void)_rehasher;
  13494. (void)_o;
  13495. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GreaterOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13496. return tflite::CreateGreaterOptions(
  13497. _fbb);
  13498. }
  13499. inline GreaterEqualOptionsT *GreaterEqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13500. std::unique_ptr<tflite::GreaterEqualOptionsT> _o = std::unique_ptr<tflite::GreaterEqualOptionsT>(new GreaterEqualOptionsT());
  13501. UnPackTo(_o.get(), _resolver);
  13502. return _o.release();
  13503. }
  13504. inline void GreaterEqualOptions::UnPackTo(GreaterEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13505. (void)_o;
  13506. (void)_resolver;
  13507. }
  13508. inline flatbuffers::Offset<GreaterEqualOptions> GreaterEqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13509. return CreateGreaterEqualOptions(_fbb, _o, _rehasher);
  13510. }
  13511. inline flatbuffers::Offset<GreaterEqualOptions> CreateGreaterEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const GreaterEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13512. (void)_rehasher;
  13513. (void)_o;
  13514. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GreaterEqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13515. return tflite::CreateGreaterEqualOptions(
  13516. _fbb);
  13517. }
  13518. inline LessOptionsT *LessOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13519. std::unique_ptr<tflite::LessOptionsT> _o = std::unique_ptr<tflite::LessOptionsT>(new LessOptionsT());
  13520. UnPackTo(_o.get(), _resolver);
  13521. return _o.release();
  13522. }
  13523. inline void LessOptions::UnPackTo(LessOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13524. (void)_o;
  13525. (void)_resolver;
  13526. }
  13527. inline flatbuffers::Offset<LessOptions> LessOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13528. return CreateLessOptions(_fbb, _o, _rehasher);
  13529. }
  13530. inline flatbuffers::Offset<LessOptions> CreateLessOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13531. (void)_rehasher;
  13532. (void)_o;
  13533. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LessOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13534. return tflite::CreateLessOptions(
  13535. _fbb);
  13536. }
  13537. inline LessEqualOptionsT *LessEqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13538. std::unique_ptr<tflite::LessEqualOptionsT> _o = std::unique_ptr<tflite::LessEqualOptionsT>(new LessEqualOptionsT());
  13539. UnPackTo(_o.get(), _resolver);
  13540. return _o.release();
  13541. }
  13542. inline void LessEqualOptions::UnPackTo(LessEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13543. (void)_o;
  13544. (void)_resolver;
  13545. }
  13546. inline flatbuffers::Offset<LessEqualOptions> LessEqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13547. return CreateLessEqualOptions(_fbb, _o, _rehasher);
  13548. }
  13549. inline flatbuffers::Offset<LessEqualOptions> CreateLessEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const LessEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13550. (void)_rehasher;
  13551. (void)_o;
  13552. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LessEqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13553. return tflite::CreateLessEqualOptions(
  13554. _fbb);
  13555. }
  13556. inline NegOptionsT *NegOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13557. std::unique_ptr<tflite::NegOptionsT> _o = std::unique_ptr<tflite::NegOptionsT>(new NegOptionsT());
  13558. UnPackTo(_o.get(), _resolver);
  13559. return _o.release();
  13560. }
  13561. inline void NegOptions::UnPackTo(NegOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13562. (void)_o;
  13563. (void)_resolver;
  13564. }
  13565. inline flatbuffers::Offset<NegOptions> NegOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13566. return CreateNegOptions(_fbb, _o, _rehasher);
  13567. }
  13568. inline flatbuffers::Offset<NegOptions> CreateNegOptions(flatbuffers::FlatBufferBuilder &_fbb, const NegOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13569. (void)_rehasher;
  13570. (void)_o;
  13571. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NegOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13572. return tflite::CreateNegOptions(
  13573. _fbb);
  13574. }
  13575. inline SelectOptionsT *SelectOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13576. std::unique_ptr<tflite::SelectOptionsT> _o = std::unique_ptr<tflite::SelectOptionsT>(new SelectOptionsT());
  13577. UnPackTo(_o.get(), _resolver);
  13578. return _o.release();
  13579. }
  13580. inline void SelectOptions::UnPackTo(SelectOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13581. (void)_o;
  13582. (void)_resolver;
  13583. }
  13584. inline flatbuffers::Offset<SelectOptions> SelectOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13585. return CreateSelectOptions(_fbb, _o, _rehasher);
  13586. }
  13587. inline flatbuffers::Offset<SelectOptions> CreateSelectOptions(flatbuffers::FlatBufferBuilder &_fbb, const SelectOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13588. (void)_rehasher;
  13589. (void)_o;
  13590. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SelectOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13591. return tflite::CreateSelectOptions(
  13592. _fbb);
  13593. }
  13594. inline SliceOptionsT *SliceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13595. std::unique_ptr<tflite::SliceOptionsT> _o = std::unique_ptr<tflite::SliceOptionsT>(new SliceOptionsT());
  13596. UnPackTo(_o.get(), _resolver);
  13597. return _o.release();
  13598. }
  13599. inline void SliceOptions::UnPackTo(SliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13600. (void)_o;
  13601. (void)_resolver;
  13602. }
  13603. inline flatbuffers::Offset<SliceOptions> SliceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13604. return CreateSliceOptions(_fbb, _o, _rehasher);
  13605. }
  13606. inline flatbuffers::Offset<SliceOptions> CreateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13607. (void)_rehasher;
  13608. (void)_o;
  13609. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SliceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13610. return tflite::CreateSliceOptions(
  13611. _fbb);
  13612. }
  13613. inline TransposeConvOptionsT *TransposeConvOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13614. std::unique_ptr<tflite::TransposeConvOptionsT> _o = std::unique_ptr<tflite::TransposeConvOptionsT>(new TransposeConvOptionsT());
  13615. UnPackTo(_o.get(), _resolver);
  13616. return _o.release();
  13617. }
  13618. inline void TransposeConvOptions::UnPackTo(TransposeConvOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13619. (void)_o;
  13620. (void)_resolver;
  13621. { auto _e = padding(); _o->padding = _e; }
  13622. { auto _e = stride_w(); _o->stride_w = _e; }
  13623. { auto _e = stride_h(); _o->stride_h = _e; }
  13624. }
  13625. inline flatbuffers::Offset<TransposeConvOptions> TransposeConvOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13626. return CreateTransposeConvOptions(_fbb, _o, _rehasher);
  13627. }
  13628. inline flatbuffers::Offset<TransposeConvOptions> CreateTransposeConvOptions(flatbuffers::FlatBufferBuilder &_fbb, const TransposeConvOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13629. (void)_rehasher;
  13630. (void)_o;
  13631. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TransposeConvOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13632. auto _padding = _o->padding;
  13633. auto _stride_w = _o->stride_w;
  13634. auto _stride_h = _o->stride_h;
  13635. return tflite::CreateTransposeConvOptions(
  13636. _fbb,
  13637. _padding,
  13638. _stride_w,
  13639. _stride_h);
  13640. }
  13641. inline ExpandDimsOptionsT *ExpandDimsOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13642. std::unique_ptr<tflite::ExpandDimsOptionsT> _o = std::unique_ptr<tflite::ExpandDimsOptionsT>(new ExpandDimsOptionsT());
  13643. UnPackTo(_o.get(), _resolver);
  13644. return _o.release();
  13645. }
  13646. inline void ExpandDimsOptions::UnPackTo(ExpandDimsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13647. (void)_o;
  13648. (void)_resolver;
  13649. }
  13650. inline flatbuffers::Offset<ExpandDimsOptions> ExpandDimsOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13651. return CreateExpandDimsOptions(_fbb, _o, _rehasher);
  13652. }
  13653. inline flatbuffers::Offset<ExpandDimsOptions> CreateExpandDimsOptions(flatbuffers::FlatBufferBuilder &_fbb, const ExpandDimsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13654. (void)_rehasher;
  13655. (void)_o;
  13656. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ExpandDimsOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13657. return tflite::CreateExpandDimsOptions(
  13658. _fbb);
  13659. }
  13660. inline SparseToDenseOptionsT *SparseToDenseOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13661. std::unique_ptr<tflite::SparseToDenseOptionsT> _o = std::unique_ptr<tflite::SparseToDenseOptionsT>(new SparseToDenseOptionsT());
  13662. UnPackTo(_o.get(), _resolver);
  13663. return _o.release();
  13664. }
  13665. inline void SparseToDenseOptions::UnPackTo(SparseToDenseOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13666. (void)_o;
  13667. (void)_resolver;
  13668. { auto _e = validate_indices(); _o->validate_indices = _e; }
  13669. }
  13670. inline flatbuffers::Offset<SparseToDenseOptions> SparseToDenseOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13671. return CreateSparseToDenseOptions(_fbb, _o, _rehasher);
  13672. }
  13673. inline flatbuffers::Offset<SparseToDenseOptions> CreateSparseToDenseOptions(flatbuffers::FlatBufferBuilder &_fbb, const SparseToDenseOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13674. (void)_rehasher;
  13675. (void)_o;
  13676. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SparseToDenseOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13677. auto _validate_indices = _o->validate_indices;
  13678. return tflite::CreateSparseToDenseOptions(
  13679. _fbb,
  13680. _validate_indices);
  13681. }
  13682. inline EqualOptionsT *EqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13683. std::unique_ptr<tflite::EqualOptionsT> _o = std::unique_ptr<tflite::EqualOptionsT>(new EqualOptionsT());
  13684. UnPackTo(_o.get(), _resolver);
  13685. return _o.release();
  13686. }
  13687. inline void EqualOptions::UnPackTo(EqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13688. (void)_o;
  13689. (void)_resolver;
  13690. }
  13691. inline flatbuffers::Offset<EqualOptions> EqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13692. return CreateEqualOptions(_fbb, _o, _rehasher);
  13693. }
  13694. inline flatbuffers::Offset<EqualOptions> CreateEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const EqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13695. (void)_rehasher;
  13696. (void)_o;
  13697. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const EqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13698. return tflite::CreateEqualOptions(
  13699. _fbb);
  13700. }
  13701. inline NotEqualOptionsT *NotEqualOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13702. std::unique_ptr<tflite::NotEqualOptionsT> _o = std::unique_ptr<tflite::NotEqualOptionsT>(new NotEqualOptionsT());
  13703. UnPackTo(_o.get(), _resolver);
  13704. return _o.release();
  13705. }
  13706. inline void NotEqualOptions::UnPackTo(NotEqualOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13707. (void)_o;
  13708. (void)_resolver;
  13709. }
  13710. inline flatbuffers::Offset<NotEqualOptions> NotEqualOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13711. return CreateNotEqualOptions(_fbb, _o, _rehasher);
  13712. }
  13713. inline flatbuffers::Offset<NotEqualOptions> CreateNotEqualOptions(flatbuffers::FlatBufferBuilder &_fbb, const NotEqualOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13714. (void)_rehasher;
  13715. (void)_o;
  13716. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NotEqualOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13717. return tflite::CreateNotEqualOptions(
  13718. _fbb);
  13719. }
  13720. inline ShapeOptionsT *ShapeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13721. std::unique_ptr<tflite::ShapeOptionsT> _o = std::unique_ptr<tflite::ShapeOptionsT>(new ShapeOptionsT());
  13722. UnPackTo(_o.get(), _resolver);
  13723. return _o.release();
  13724. }
  13725. inline void ShapeOptions::UnPackTo(ShapeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13726. (void)_o;
  13727. (void)_resolver;
  13728. { auto _e = out_type(); _o->out_type = _e; }
  13729. }
  13730. inline flatbuffers::Offset<ShapeOptions> ShapeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13731. return CreateShapeOptions(_fbb, _o, _rehasher);
  13732. }
  13733. inline flatbuffers::Offset<ShapeOptions> CreateShapeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ShapeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13734. (void)_rehasher;
  13735. (void)_o;
  13736. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ShapeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13737. auto _out_type = _o->out_type;
  13738. return tflite::CreateShapeOptions(
  13739. _fbb,
  13740. _out_type);
  13741. }
  13742. inline RankOptionsT *RankOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13743. std::unique_ptr<tflite::RankOptionsT> _o = std::unique_ptr<tflite::RankOptionsT>(new RankOptionsT());
  13744. UnPackTo(_o.get(), _resolver);
  13745. return _o.release();
  13746. }
  13747. inline void RankOptions::UnPackTo(RankOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13748. (void)_o;
  13749. (void)_resolver;
  13750. }
  13751. inline flatbuffers::Offset<RankOptions> RankOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13752. return CreateRankOptions(_fbb, _o, _rehasher);
  13753. }
  13754. inline flatbuffers::Offset<RankOptions> CreateRankOptions(flatbuffers::FlatBufferBuilder &_fbb, const RankOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13755. (void)_rehasher;
  13756. (void)_o;
  13757. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RankOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13758. return tflite::CreateRankOptions(
  13759. _fbb);
  13760. }
  13761. inline PowOptionsT *PowOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13762. std::unique_ptr<tflite::PowOptionsT> _o = std::unique_ptr<tflite::PowOptionsT>(new PowOptionsT());
  13763. UnPackTo(_o.get(), _resolver);
  13764. return _o.release();
  13765. }
  13766. inline void PowOptions::UnPackTo(PowOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13767. (void)_o;
  13768. (void)_resolver;
  13769. }
  13770. inline flatbuffers::Offset<PowOptions> PowOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13771. return CreatePowOptions(_fbb, _o, _rehasher);
  13772. }
  13773. inline flatbuffers::Offset<PowOptions> CreatePowOptions(flatbuffers::FlatBufferBuilder &_fbb, const PowOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13774. (void)_rehasher;
  13775. (void)_o;
  13776. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PowOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13777. return tflite::CreatePowOptions(
  13778. _fbb);
  13779. }
  13780. inline FakeQuantOptionsT *FakeQuantOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13781. std::unique_ptr<tflite::FakeQuantOptionsT> _o = std::unique_ptr<tflite::FakeQuantOptionsT>(new FakeQuantOptionsT());
  13782. UnPackTo(_o.get(), _resolver);
  13783. return _o.release();
  13784. }
  13785. inline void FakeQuantOptions::UnPackTo(FakeQuantOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13786. (void)_o;
  13787. (void)_resolver;
  13788. { auto _e = min(); _o->min = _e; }
  13789. { auto _e = max(); _o->max = _e; }
  13790. { auto _e = num_bits(); _o->num_bits = _e; }
  13791. { auto _e = narrow_range(); _o->narrow_range = _e; }
  13792. }
  13793. inline flatbuffers::Offset<FakeQuantOptions> FakeQuantOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13794. return CreateFakeQuantOptions(_fbb, _o, _rehasher);
  13795. }
  13796. inline flatbuffers::Offset<FakeQuantOptions> CreateFakeQuantOptions(flatbuffers::FlatBufferBuilder &_fbb, const FakeQuantOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13797. (void)_rehasher;
  13798. (void)_o;
  13799. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FakeQuantOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13800. auto _min = _o->min;
  13801. auto _max = _o->max;
  13802. auto _num_bits = _o->num_bits;
  13803. auto _narrow_range = _o->narrow_range;
  13804. return tflite::CreateFakeQuantOptions(
  13805. _fbb,
  13806. _min,
  13807. _max,
  13808. _num_bits,
  13809. _narrow_range);
  13810. }
  13811. inline PackOptionsT *PackOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13812. std::unique_ptr<tflite::PackOptionsT> _o = std::unique_ptr<tflite::PackOptionsT>(new PackOptionsT());
  13813. UnPackTo(_o.get(), _resolver);
  13814. return _o.release();
  13815. }
  13816. inline void PackOptions::UnPackTo(PackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13817. (void)_o;
  13818. (void)_resolver;
  13819. { auto _e = values_count(); _o->values_count = _e; }
  13820. { auto _e = axis(); _o->axis = _e; }
  13821. }
  13822. inline flatbuffers::Offset<PackOptions> PackOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13823. return CreatePackOptions(_fbb, _o, _rehasher);
  13824. }
  13825. inline flatbuffers::Offset<PackOptions> CreatePackOptions(flatbuffers::FlatBufferBuilder &_fbb, const PackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13826. (void)_rehasher;
  13827. (void)_o;
  13828. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const PackOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13829. auto _values_count = _o->values_count;
  13830. auto _axis = _o->axis;
  13831. return tflite::CreatePackOptions(
  13832. _fbb,
  13833. _values_count,
  13834. _axis);
  13835. }
  13836. inline LogicalOrOptionsT *LogicalOrOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13837. std::unique_ptr<tflite::LogicalOrOptionsT> _o = std::unique_ptr<tflite::LogicalOrOptionsT>(new LogicalOrOptionsT());
  13838. UnPackTo(_o.get(), _resolver);
  13839. return _o.release();
  13840. }
  13841. inline void LogicalOrOptions::UnPackTo(LogicalOrOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13842. (void)_o;
  13843. (void)_resolver;
  13844. }
  13845. inline flatbuffers::Offset<LogicalOrOptions> LogicalOrOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13846. return CreateLogicalOrOptions(_fbb, _o, _rehasher);
  13847. }
  13848. inline flatbuffers::Offset<LogicalOrOptions> CreateLogicalOrOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalOrOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13849. (void)_rehasher;
  13850. (void)_o;
  13851. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogicalOrOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13852. return tflite::CreateLogicalOrOptions(
  13853. _fbb);
  13854. }
  13855. inline OneHotOptionsT *OneHotOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13856. std::unique_ptr<tflite::OneHotOptionsT> _o = std::unique_ptr<tflite::OneHotOptionsT>(new OneHotOptionsT());
  13857. UnPackTo(_o.get(), _resolver);
  13858. return _o.release();
  13859. }
  13860. inline void OneHotOptions::UnPackTo(OneHotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13861. (void)_o;
  13862. (void)_resolver;
  13863. { auto _e = axis(); _o->axis = _e; }
  13864. }
  13865. inline flatbuffers::Offset<OneHotOptions> OneHotOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13866. return CreateOneHotOptions(_fbb, _o, _rehasher);
  13867. }
  13868. inline flatbuffers::Offset<OneHotOptions> CreateOneHotOptions(flatbuffers::FlatBufferBuilder &_fbb, const OneHotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13869. (void)_rehasher;
  13870. (void)_o;
  13871. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const OneHotOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13872. auto _axis = _o->axis;
  13873. return tflite::CreateOneHotOptions(
  13874. _fbb,
  13875. _axis);
  13876. }
  13877. inline AbsOptionsT *AbsOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13878. std::unique_ptr<tflite::AbsOptionsT> _o = std::unique_ptr<tflite::AbsOptionsT>(new AbsOptionsT());
  13879. UnPackTo(_o.get(), _resolver);
  13880. return _o.release();
  13881. }
  13882. inline void AbsOptions::UnPackTo(AbsOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13883. (void)_o;
  13884. (void)_resolver;
  13885. }
  13886. inline flatbuffers::Offset<AbsOptions> AbsOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13887. return CreateAbsOptions(_fbb, _o, _rehasher);
  13888. }
  13889. inline flatbuffers::Offset<AbsOptions> CreateAbsOptions(flatbuffers::FlatBufferBuilder &_fbb, const AbsOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13890. (void)_rehasher;
  13891. (void)_o;
  13892. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AbsOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13893. return tflite::CreateAbsOptions(
  13894. _fbb);
  13895. }
  13896. inline HardSwishOptionsT *HardSwishOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13897. std::unique_ptr<tflite::HardSwishOptionsT> _o = std::unique_ptr<tflite::HardSwishOptionsT>(new HardSwishOptionsT());
  13898. UnPackTo(_o.get(), _resolver);
  13899. return _o.release();
  13900. }
  13901. inline void HardSwishOptions::UnPackTo(HardSwishOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13902. (void)_o;
  13903. (void)_resolver;
  13904. }
  13905. inline flatbuffers::Offset<HardSwishOptions> HardSwishOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13906. return CreateHardSwishOptions(_fbb, _o, _rehasher);
  13907. }
  13908. inline flatbuffers::Offset<HardSwishOptions> CreateHardSwishOptions(flatbuffers::FlatBufferBuilder &_fbb, const HardSwishOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13909. (void)_rehasher;
  13910. (void)_o;
  13911. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HardSwishOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13912. return tflite::CreateHardSwishOptions(
  13913. _fbb);
  13914. }
  13915. inline LogicalAndOptionsT *LogicalAndOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13916. std::unique_ptr<tflite::LogicalAndOptionsT> _o = std::unique_ptr<tflite::LogicalAndOptionsT>(new LogicalAndOptionsT());
  13917. UnPackTo(_o.get(), _resolver);
  13918. return _o.release();
  13919. }
  13920. inline void LogicalAndOptions::UnPackTo(LogicalAndOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13921. (void)_o;
  13922. (void)_resolver;
  13923. }
  13924. inline flatbuffers::Offset<LogicalAndOptions> LogicalAndOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13925. return CreateLogicalAndOptions(_fbb, _o, _rehasher);
  13926. }
  13927. inline flatbuffers::Offset<LogicalAndOptions> CreateLogicalAndOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalAndOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13928. (void)_rehasher;
  13929. (void)_o;
  13930. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogicalAndOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13931. return tflite::CreateLogicalAndOptions(
  13932. _fbb);
  13933. }
  13934. inline LogicalNotOptionsT *LogicalNotOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13935. std::unique_ptr<tflite::LogicalNotOptionsT> _o = std::unique_ptr<tflite::LogicalNotOptionsT>(new LogicalNotOptionsT());
  13936. UnPackTo(_o.get(), _resolver);
  13937. return _o.release();
  13938. }
  13939. inline void LogicalNotOptions::UnPackTo(LogicalNotOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13940. (void)_o;
  13941. (void)_resolver;
  13942. }
  13943. inline flatbuffers::Offset<LogicalNotOptions> LogicalNotOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13944. return CreateLogicalNotOptions(_fbb, _o, _rehasher);
  13945. }
  13946. inline flatbuffers::Offset<LogicalNotOptions> CreateLogicalNotOptions(flatbuffers::FlatBufferBuilder &_fbb, const LogicalNotOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13947. (void)_rehasher;
  13948. (void)_o;
  13949. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LogicalNotOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13950. return tflite::CreateLogicalNotOptions(
  13951. _fbb);
  13952. }
  13953. inline UnpackOptionsT *UnpackOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13954. std::unique_ptr<tflite::UnpackOptionsT> _o = std::unique_ptr<tflite::UnpackOptionsT>(new UnpackOptionsT());
  13955. UnPackTo(_o.get(), _resolver);
  13956. return _o.release();
  13957. }
  13958. inline void UnpackOptions::UnPackTo(UnpackOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13959. (void)_o;
  13960. (void)_resolver;
  13961. { auto _e = num(); _o->num = _e; }
  13962. { auto _e = axis(); _o->axis = _e; }
  13963. }
  13964. inline flatbuffers::Offset<UnpackOptions> UnpackOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13965. return CreateUnpackOptions(_fbb, _o, _rehasher);
  13966. }
  13967. inline flatbuffers::Offset<UnpackOptions> CreateUnpackOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnpackOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13968. (void)_rehasher;
  13969. (void)_o;
  13970. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnpackOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13971. auto _num = _o->num;
  13972. auto _axis = _o->axis;
  13973. return tflite::CreateUnpackOptions(
  13974. _fbb,
  13975. _num,
  13976. _axis);
  13977. }
  13978. inline FloorDivOptionsT *FloorDivOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13979. std::unique_ptr<tflite::FloorDivOptionsT> _o = std::unique_ptr<tflite::FloorDivOptionsT>(new FloorDivOptionsT());
  13980. UnPackTo(_o.get(), _resolver);
  13981. return _o.release();
  13982. }
  13983. inline void FloorDivOptions::UnPackTo(FloorDivOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  13984. (void)_o;
  13985. (void)_resolver;
  13986. }
  13987. inline flatbuffers::Offset<FloorDivOptions> FloorDivOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  13988. return CreateFloorDivOptions(_fbb, _o, _rehasher);
  13989. }
  13990. inline flatbuffers::Offset<FloorDivOptions> CreateFloorDivOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorDivOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  13991. (void)_rehasher;
  13992. (void)_o;
  13993. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FloorDivOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  13994. return tflite::CreateFloorDivOptions(
  13995. _fbb);
  13996. }
  13997. inline SquareOptionsT *SquareOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  13998. std::unique_ptr<tflite::SquareOptionsT> _o = std::unique_ptr<tflite::SquareOptionsT>(new SquareOptionsT());
  13999. UnPackTo(_o.get(), _resolver);
  14000. return _o.release();
  14001. }
  14002. inline void SquareOptions::UnPackTo(SquareOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14003. (void)_o;
  14004. (void)_resolver;
  14005. }
  14006. inline flatbuffers::Offset<SquareOptions> SquareOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14007. return CreateSquareOptions(_fbb, _o, _rehasher);
  14008. }
  14009. inline flatbuffers::Offset<SquareOptions> CreateSquareOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquareOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14010. (void)_rehasher;
  14011. (void)_o;
  14012. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SquareOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14013. return tflite::CreateSquareOptions(
  14014. _fbb);
  14015. }
  14016. inline ZerosLikeOptionsT *ZerosLikeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14017. std::unique_ptr<tflite::ZerosLikeOptionsT> _o = std::unique_ptr<tflite::ZerosLikeOptionsT>(new ZerosLikeOptionsT());
  14018. UnPackTo(_o.get(), _resolver);
  14019. return _o.release();
  14020. }
  14021. inline void ZerosLikeOptions::UnPackTo(ZerosLikeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14022. (void)_o;
  14023. (void)_resolver;
  14024. }
  14025. inline flatbuffers::Offset<ZerosLikeOptions> ZerosLikeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14026. return CreateZerosLikeOptions(_fbb, _o, _rehasher);
  14027. }
  14028. inline flatbuffers::Offset<ZerosLikeOptions> CreateZerosLikeOptions(flatbuffers::FlatBufferBuilder &_fbb, const ZerosLikeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14029. (void)_rehasher;
  14030. (void)_o;
  14031. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ZerosLikeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14032. return tflite::CreateZerosLikeOptions(
  14033. _fbb);
  14034. }
  14035. inline FillOptionsT *FillOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14036. std::unique_ptr<tflite::FillOptionsT> _o = std::unique_ptr<tflite::FillOptionsT>(new FillOptionsT());
  14037. UnPackTo(_o.get(), _resolver);
  14038. return _o.release();
  14039. }
  14040. inline void FillOptions::UnPackTo(FillOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14041. (void)_o;
  14042. (void)_resolver;
  14043. }
  14044. inline flatbuffers::Offset<FillOptions> FillOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14045. return CreateFillOptions(_fbb, _o, _rehasher);
  14046. }
  14047. inline flatbuffers::Offset<FillOptions> CreateFillOptions(flatbuffers::FlatBufferBuilder &_fbb, const FillOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14048. (void)_rehasher;
  14049. (void)_o;
  14050. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FillOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14051. return tflite::CreateFillOptions(
  14052. _fbb);
  14053. }
  14054. inline FloorModOptionsT *FloorModOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14055. std::unique_ptr<tflite::FloorModOptionsT> _o = std::unique_ptr<tflite::FloorModOptionsT>(new FloorModOptionsT());
  14056. UnPackTo(_o.get(), _resolver);
  14057. return _o.release();
  14058. }
  14059. inline void FloorModOptions::UnPackTo(FloorModOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14060. (void)_o;
  14061. (void)_resolver;
  14062. }
  14063. inline flatbuffers::Offset<FloorModOptions> FloorModOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14064. return CreateFloorModOptions(_fbb, _o, _rehasher);
  14065. }
  14066. inline flatbuffers::Offset<FloorModOptions> CreateFloorModOptions(flatbuffers::FlatBufferBuilder &_fbb, const FloorModOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14067. (void)_rehasher;
  14068. (void)_o;
  14069. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const FloorModOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14070. return tflite::CreateFloorModOptions(
  14071. _fbb);
  14072. }
  14073. inline RangeOptionsT *RangeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14074. std::unique_ptr<tflite::RangeOptionsT> _o = std::unique_ptr<tflite::RangeOptionsT>(new RangeOptionsT());
  14075. UnPackTo(_o.get(), _resolver);
  14076. return _o.release();
  14077. }
  14078. inline void RangeOptions::UnPackTo(RangeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14079. (void)_o;
  14080. (void)_resolver;
  14081. }
  14082. inline flatbuffers::Offset<RangeOptions> RangeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14083. return CreateRangeOptions(_fbb, _o, _rehasher);
  14084. }
  14085. inline flatbuffers::Offset<RangeOptions> CreateRangeOptions(flatbuffers::FlatBufferBuilder &_fbb, const RangeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14086. (void)_rehasher;
  14087. (void)_o;
  14088. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RangeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14089. return tflite::CreateRangeOptions(
  14090. _fbb);
  14091. }
  14092. inline LeakyReluOptionsT *LeakyReluOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14093. std::unique_ptr<tflite::LeakyReluOptionsT> _o = std::unique_ptr<tflite::LeakyReluOptionsT>(new LeakyReluOptionsT());
  14094. UnPackTo(_o.get(), _resolver);
  14095. return _o.release();
  14096. }
  14097. inline void LeakyReluOptions::UnPackTo(LeakyReluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14098. (void)_o;
  14099. (void)_resolver;
  14100. { auto _e = alpha(); _o->alpha = _e; }
  14101. }
  14102. inline flatbuffers::Offset<LeakyReluOptions> LeakyReluOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14103. return CreateLeakyReluOptions(_fbb, _o, _rehasher);
  14104. }
  14105. inline flatbuffers::Offset<LeakyReluOptions> CreateLeakyReluOptions(flatbuffers::FlatBufferBuilder &_fbb, const LeakyReluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14106. (void)_rehasher;
  14107. (void)_o;
  14108. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const LeakyReluOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14109. auto _alpha = _o->alpha;
  14110. return tflite::CreateLeakyReluOptions(
  14111. _fbb,
  14112. _alpha);
  14113. }
  14114. inline SquaredDifferenceOptionsT *SquaredDifferenceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14115. std::unique_ptr<tflite::SquaredDifferenceOptionsT> _o = std::unique_ptr<tflite::SquaredDifferenceOptionsT>(new SquaredDifferenceOptionsT());
  14116. UnPackTo(_o.get(), _resolver);
  14117. return _o.release();
  14118. }
  14119. inline void SquaredDifferenceOptions::UnPackTo(SquaredDifferenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14120. (void)_o;
  14121. (void)_resolver;
  14122. }
  14123. inline flatbuffers::Offset<SquaredDifferenceOptions> SquaredDifferenceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14124. return CreateSquaredDifferenceOptions(_fbb, _o, _rehasher);
  14125. }
  14126. inline flatbuffers::Offset<SquaredDifferenceOptions> CreateSquaredDifferenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const SquaredDifferenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14127. (void)_rehasher;
  14128. (void)_o;
  14129. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SquaredDifferenceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14130. return tflite::CreateSquaredDifferenceOptions(
  14131. _fbb);
  14132. }
  14133. inline MirrorPadOptionsT *MirrorPadOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14134. std::unique_ptr<tflite::MirrorPadOptionsT> _o = std::unique_ptr<tflite::MirrorPadOptionsT>(new MirrorPadOptionsT());
  14135. UnPackTo(_o.get(), _resolver);
  14136. return _o.release();
  14137. }
  14138. inline void MirrorPadOptions::UnPackTo(MirrorPadOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14139. (void)_o;
  14140. (void)_resolver;
  14141. { auto _e = mode(); _o->mode = _e; }
  14142. }
  14143. inline flatbuffers::Offset<MirrorPadOptions> MirrorPadOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14144. return CreateMirrorPadOptions(_fbb, _o, _rehasher);
  14145. }
  14146. inline flatbuffers::Offset<MirrorPadOptions> CreateMirrorPadOptions(flatbuffers::FlatBufferBuilder &_fbb, const MirrorPadOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14147. (void)_rehasher;
  14148. (void)_o;
  14149. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MirrorPadOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14150. auto _mode = _o->mode;
  14151. return tflite::CreateMirrorPadOptions(
  14152. _fbb,
  14153. _mode);
  14154. }
  14155. inline UniqueOptionsT *UniqueOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14156. std::unique_ptr<tflite::UniqueOptionsT> _o = std::unique_ptr<tflite::UniqueOptionsT>(new UniqueOptionsT());
  14157. UnPackTo(_o.get(), _resolver);
  14158. return _o.release();
  14159. }
  14160. inline void UniqueOptions::UnPackTo(UniqueOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14161. (void)_o;
  14162. (void)_resolver;
  14163. { auto _e = idx_out_type(); _o->idx_out_type = _e; }
  14164. }
  14165. inline flatbuffers::Offset<UniqueOptions> UniqueOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14166. return CreateUniqueOptions(_fbb, _o, _rehasher);
  14167. }
  14168. inline flatbuffers::Offset<UniqueOptions> CreateUniqueOptions(flatbuffers::FlatBufferBuilder &_fbb, const UniqueOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14169. (void)_rehasher;
  14170. (void)_o;
  14171. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UniqueOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14172. auto _idx_out_type = _o->idx_out_type;
  14173. return tflite::CreateUniqueOptions(
  14174. _fbb,
  14175. _idx_out_type);
  14176. }
  14177. inline ReverseV2OptionsT *ReverseV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14178. std::unique_ptr<tflite::ReverseV2OptionsT> _o = std::unique_ptr<tflite::ReverseV2OptionsT>(new ReverseV2OptionsT());
  14179. UnPackTo(_o.get(), _resolver);
  14180. return _o.release();
  14181. }
  14182. inline void ReverseV2Options::UnPackTo(ReverseV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14183. (void)_o;
  14184. (void)_resolver;
  14185. }
  14186. inline flatbuffers::Offset<ReverseV2Options> ReverseV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14187. return CreateReverseV2Options(_fbb, _o, _rehasher);
  14188. }
  14189. inline flatbuffers::Offset<ReverseV2Options> CreateReverseV2Options(flatbuffers::FlatBufferBuilder &_fbb, const ReverseV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14190. (void)_rehasher;
  14191. (void)_o;
  14192. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReverseV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14193. return tflite::CreateReverseV2Options(
  14194. _fbb);
  14195. }
  14196. inline AddNOptionsT *AddNOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14197. std::unique_ptr<tflite::AddNOptionsT> _o = std::unique_ptr<tflite::AddNOptionsT>(new AddNOptionsT());
  14198. UnPackTo(_o.get(), _resolver);
  14199. return _o.release();
  14200. }
  14201. inline void AddNOptions::UnPackTo(AddNOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14202. (void)_o;
  14203. (void)_resolver;
  14204. }
  14205. inline flatbuffers::Offset<AddNOptions> AddNOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14206. return CreateAddNOptions(_fbb, _o, _rehasher);
  14207. }
  14208. inline flatbuffers::Offset<AddNOptions> CreateAddNOptions(flatbuffers::FlatBufferBuilder &_fbb, const AddNOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14209. (void)_rehasher;
  14210. (void)_o;
  14211. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AddNOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14212. return tflite::CreateAddNOptions(
  14213. _fbb);
  14214. }
  14215. inline GatherNdOptionsT *GatherNdOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14216. std::unique_ptr<tflite::GatherNdOptionsT> _o = std::unique_ptr<tflite::GatherNdOptionsT>(new GatherNdOptionsT());
  14217. UnPackTo(_o.get(), _resolver);
  14218. return _o.release();
  14219. }
  14220. inline void GatherNdOptions::UnPackTo(GatherNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14221. (void)_o;
  14222. (void)_resolver;
  14223. }
  14224. inline flatbuffers::Offset<GatherNdOptions> GatherNdOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14225. return CreateGatherNdOptions(_fbb, _o, _rehasher);
  14226. }
  14227. inline flatbuffers::Offset<GatherNdOptions> CreateGatherNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const GatherNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14228. (void)_rehasher;
  14229. (void)_o;
  14230. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GatherNdOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14231. return tflite::CreateGatherNdOptions(
  14232. _fbb);
  14233. }
  14234. inline WhereOptionsT *WhereOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14235. std::unique_ptr<tflite::WhereOptionsT> _o = std::unique_ptr<tflite::WhereOptionsT>(new WhereOptionsT());
  14236. UnPackTo(_o.get(), _resolver);
  14237. return _o.release();
  14238. }
  14239. inline void WhereOptions::UnPackTo(WhereOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14240. (void)_o;
  14241. (void)_resolver;
  14242. }
  14243. inline flatbuffers::Offset<WhereOptions> WhereOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14244. return CreateWhereOptions(_fbb, _o, _rehasher);
  14245. }
  14246. inline flatbuffers::Offset<WhereOptions> CreateWhereOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhereOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14247. (void)_rehasher;
  14248. (void)_o;
  14249. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const WhereOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14250. return tflite::CreateWhereOptions(
  14251. _fbb);
  14252. }
  14253. inline ReverseSequenceOptionsT *ReverseSequenceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14254. std::unique_ptr<tflite::ReverseSequenceOptionsT> _o = std::unique_ptr<tflite::ReverseSequenceOptionsT>(new ReverseSequenceOptionsT());
  14255. UnPackTo(_o.get(), _resolver);
  14256. return _o.release();
  14257. }
  14258. inline void ReverseSequenceOptions::UnPackTo(ReverseSequenceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14259. (void)_o;
  14260. (void)_resolver;
  14261. { auto _e = seq_dim(); _o->seq_dim = _e; }
  14262. { auto _e = batch_dim(); _o->batch_dim = _e; }
  14263. }
  14264. inline flatbuffers::Offset<ReverseSequenceOptions> ReverseSequenceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14265. return CreateReverseSequenceOptions(_fbb, _o, _rehasher);
  14266. }
  14267. inline flatbuffers::Offset<ReverseSequenceOptions> CreateReverseSequenceOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReverseSequenceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14268. (void)_rehasher;
  14269. (void)_o;
  14270. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReverseSequenceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14271. auto _seq_dim = _o->seq_dim;
  14272. auto _batch_dim = _o->batch_dim;
  14273. return tflite::CreateReverseSequenceOptions(
  14274. _fbb,
  14275. _seq_dim,
  14276. _batch_dim);
  14277. }
  14278. inline MatrixDiagOptionsT *MatrixDiagOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14279. std::unique_ptr<tflite::MatrixDiagOptionsT> _o = std::unique_ptr<tflite::MatrixDiagOptionsT>(new MatrixDiagOptionsT());
  14280. UnPackTo(_o.get(), _resolver);
  14281. return _o.release();
  14282. }
  14283. inline void MatrixDiagOptions::UnPackTo(MatrixDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14284. (void)_o;
  14285. (void)_resolver;
  14286. }
  14287. inline flatbuffers::Offset<MatrixDiagOptions> MatrixDiagOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14288. return CreateMatrixDiagOptions(_fbb, _o, _rehasher);
  14289. }
  14290. inline flatbuffers::Offset<MatrixDiagOptions> CreateMatrixDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14291. (void)_rehasher;
  14292. (void)_o;
  14293. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MatrixDiagOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14294. return tflite::CreateMatrixDiagOptions(
  14295. _fbb);
  14296. }
  14297. inline QuantizeOptionsT *QuantizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14298. std::unique_ptr<tflite::QuantizeOptionsT> _o = std::unique_ptr<tflite::QuantizeOptionsT>(new QuantizeOptionsT());
  14299. UnPackTo(_o.get(), _resolver);
  14300. return _o.release();
  14301. }
  14302. inline void QuantizeOptions::UnPackTo(QuantizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14303. (void)_o;
  14304. (void)_resolver;
  14305. }
  14306. inline flatbuffers::Offset<QuantizeOptions> QuantizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14307. return CreateQuantizeOptions(_fbb, _o, _rehasher);
  14308. }
  14309. inline flatbuffers::Offset<QuantizeOptions> CreateQuantizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const QuantizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14310. (void)_rehasher;
  14311. (void)_o;
  14312. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const QuantizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14313. return tflite::CreateQuantizeOptions(
  14314. _fbb);
  14315. }
  14316. inline MatrixSetDiagOptionsT *MatrixSetDiagOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14317. std::unique_ptr<tflite::MatrixSetDiagOptionsT> _o = std::unique_ptr<tflite::MatrixSetDiagOptionsT>(new MatrixSetDiagOptionsT());
  14318. UnPackTo(_o.get(), _resolver);
  14319. return _o.release();
  14320. }
  14321. inline void MatrixSetDiagOptions::UnPackTo(MatrixSetDiagOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14322. (void)_o;
  14323. (void)_resolver;
  14324. }
  14325. inline flatbuffers::Offset<MatrixSetDiagOptions> MatrixSetDiagOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14326. return CreateMatrixSetDiagOptions(_fbb, _o, _rehasher);
  14327. }
  14328. inline flatbuffers::Offset<MatrixSetDiagOptions> CreateMatrixSetDiagOptions(flatbuffers::FlatBufferBuilder &_fbb, const MatrixSetDiagOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14329. (void)_rehasher;
  14330. (void)_o;
  14331. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MatrixSetDiagOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14332. return tflite::CreateMatrixSetDiagOptions(
  14333. _fbb);
  14334. }
  14335. inline IfOptionsT *IfOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14336. std::unique_ptr<tflite::IfOptionsT> _o = std::unique_ptr<tflite::IfOptionsT>(new IfOptionsT());
  14337. UnPackTo(_o.get(), _resolver);
  14338. return _o.release();
  14339. }
  14340. inline void IfOptions::UnPackTo(IfOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14341. (void)_o;
  14342. (void)_resolver;
  14343. { auto _e = then_subgraph_index(); _o->then_subgraph_index = _e; }
  14344. { auto _e = else_subgraph_index(); _o->else_subgraph_index = _e; }
  14345. }
  14346. inline flatbuffers::Offset<IfOptions> IfOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14347. return CreateIfOptions(_fbb, _o, _rehasher);
  14348. }
  14349. inline flatbuffers::Offset<IfOptions> CreateIfOptions(flatbuffers::FlatBufferBuilder &_fbb, const IfOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14350. (void)_rehasher;
  14351. (void)_o;
  14352. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const IfOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14353. auto _then_subgraph_index = _o->then_subgraph_index;
  14354. auto _else_subgraph_index = _o->else_subgraph_index;
  14355. return tflite::CreateIfOptions(
  14356. _fbb,
  14357. _then_subgraph_index,
  14358. _else_subgraph_index);
  14359. }
  14360. inline CallOnceOptionsT *CallOnceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14361. std::unique_ptr<tflite::CallOnceOptionsT> _o = std::unique_ptr<tflite::CallOnceOptionsT>(new CallOnceOptionsT());
  14362. UnPackTo(_o.get(), _resolver);
  14363. return _o.release();
  14364. }
  14365. inline void CallOnceOptions::UnPackTo(CallOnceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14366. (void)_o;
  14367. (void)_resolver;
  14368. { auto _e = init_subgraph_index(); _o->init_subgraph_index = _e; }
  14369. }
  14370. inline flatbuffers::Offset<CallOnceOptions> CallOnceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14371. return CreateCallOnceOptions(_fbb, _o, _rehasher);
  14372. }
  14373. inline flatbuffers::Offset<CallOnceOptions> CreateCallOnceOptions(flatbuffers::FlatBufferBuilder &_fbb, const CallOnceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14374. (void)_rehasher;
  14375. (void)_o;
  14376. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CallOnceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14377. auto _init_subgraph_index = _o->init_subgraph_index;
  14378. return tflite::CreateCallOnceOptions(
  14379. _fbb,
  14380. _init_subgraph_index);
  14381. }
  14382. inline WhileOptionsT *WhileOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14383. std::unique_ptr<tflite::WhileOptionsT> _o = std::unique_ptr<tflite::WhileOptionsT>(new WhileOptionsT());
  14384. UnPackTo(_o.get(), _resolver);
  14385. return _o.release();
  14386. }
  14387. inline void WhileOptions::UnPackTo(WhileOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14388. (void)_o;
  14389. (void)_resolver;
  14390. { auto _e = cond_subgraph_index(); _o->cond_subgraph_index = _e; }
  14391. { auto _e = body_subgraph_index(); _o->body_subgraph_index = _e; }
  14392. }
  14393. inline flatbuffers::Offset<WhileOptions> WhileOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14394. return CreateWhileOptions(_fbb, _o, _rehasher);
  14395. }
  14396. inline flatbuffers::Offset<WhileOptions> CreateWhileOptions(flatbuffers::FlatBufferBuilder &_fbb, const WhileOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14397. (void)_rehasher;
  14398. (void)_o;
  14399. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const WhileOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14400. auto _cond_subgraph_index = _o->cond_subgraph_index;
  14401. auto _body_subgraph_index = _o->body_subgraph_index;
  14402. return tflite::CreateWhileOptions(
  14403. _fbb,
  14404. _cond_subgraph_index,
  14405. _body_subgraph_index);
  14406. }
  14407. inline NonMaxSuppressionV4OptionsT *NonMaxSuppressionV4Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14408. std::unique_ptr<tflite::NonMaxSuppressionV4OptionsT> _o = std::unique_ptr<tflite::NonMaxSuppressionV4OptionsT>(new NonMaxSuppressionV4OptionsT());
  14409. UnPackTo(_o.get(), _resolver);
  14410. return _o.release();
  14411. }
  14412. inline void NonMaxSuppressionV4Options::UnPackTo(NonMaxSuppressionV4OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14413. (void)_o;
  14414. (void)_resolver;
  14415. }
  14416. inline flatbuffers::Offset<NonMaxSuppressionV4Options> NonMaxSuppressionV4Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14417. return CreateNonMaxSuppressionV4Options(_fbb, _o, _rehasher);
  14418. }
  14419. inline flatbuffers::Offset<NonMaxSuppressionV4Options> CreateNonMaxSuppressionV4Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV4OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14420. (void)_rehasher;
  14421. (void)_o;
  14422. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NonMaxSuppressionV4OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14423. return tflite::CreateNonMaxSuppressionV4Options(
  14424. _fbb);
  14425. }
  14426. inline NonMaxSuppressionV5OptionsT *NonMaxSuppressionV5Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14427. std::unique_ptr<tflite::NonMaxSuppressionV5OptionsT> _o = std::unique_ptr<tflite::NonMaxSuppressionV5OptionsT>(new NonMaxSuppressionV5OptionsT());
  14428. UnPackTo(_o.get(), _resolver);
  14429. return _o.release();
  14430. }
  14431. inline void NonMaxSuppressionV5Options::UnPackTo(NonMaxSuppressionV5OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14432. (void)_o;
  14433. (void)_resolver;
  14434. }
  14435. inline flatbuffers::Offset<NonMaxSuppressionV5Options> NonMaxSuppressionV5Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14436. return CreateNonMaxSuppressionV5Options(_fbb, _o, _rehasher);
  14437. }
  14438. inline flatbuffers::Offset<NonMaxSuppressionV5Options> CreateNonMaxSuppressionV5Options(flatbuffers::FlatBufferBuilder &_fbb, const NonMaxSuppressionV5OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14439. (void)_rehasher;
  14440. (void)_o;
  14441. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const NonMaxSuppressionV5OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14442. return tflite::CreateNonMaxSuppressionV5Options(
  14443. _fbb);
  14444. }
  14445. inline ScatterNdOptionsT *ScatterNdOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14446. std::unique_ptr<tflite::ScatterNdOptionsT> _o = std::unique_ptr<tflite::ScatterNdOptionsT>(new ScatterNdOptionsT());
  14447. UnPackTo(_o.get(), _resolver);
  14448. return _o.release();
  14449. }
  14450. inline void ScatterNdOptions::UnPackTo(ScatterNdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14451. (void)_o;
  14452. (void)_resolver;
  14453. }
  14454. inline flatbuffers::Offset<ScatterNdOptions> ScatterNdOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14455. return CreateScatterNdOptions(_fbb, _o, _rehasher);
  14456. }
  14457. inline flatbuffers::Offset<ScatterNdOptions> CreateScatterNdOptions(flatbuffers::FlatBufferBuilder &_fbb, const ScatterNdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14458. (void)_rehasher;
  14459. (void)_o;
  14460. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ScatterNdOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14461. return tflite::CreateScatterNdOptions(
  14462. _fbb);
  14463. }
  14464. inline SelectV2OptionsT *SelectV2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14465. std::unique_ptr<tflite::SelectV2OptionsT> _o = std::unique_ptr<tflite::SelectV2OptionsT>(new SelectV2OptionsT());
  14466. UnPackTo(_o.get(), _resolver);
  14467. return _o.release();
  14468. }
  14469. inline void SelectV2Options::UnPackTo(SelectV2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14470. (void)_o;
  14471. (void)_resolver;
  14472. }
  14473. inline flatbuffers::Offset<SelectV2Options> SelectV2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14474. return CreateSelectV2Options(_fbb, _o, _rehasher);
  14475. }
  14476. inline flatbuffers::Offset<SelectV2Options> CreateSelectV2Options(flatbuffers::FlatBufferBuilder &_fbb, const SelectV2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14477. (void)_rehasher;
  14478. (void)_o;
  14479. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SelectV2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14480. return tflite::CreateSelectV2Options(
  14481. _fbb);
  14482. }
  14483. inline DensifyOptionsT *DensifyOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14484. std::unique_ptr<tflite::DensifyOptionsT> _o = std::unique_ptr<tflite::DensifyOptionsT>(new DensifyOptionsT());
  14485. UnPackTo(_o.get(), _resolver);
  14486. return _o.release();
  14487. }
  14488. inline void DensifyOptions::UnPackTo(DensifyOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14489. (void)_o;
  14490. (void)_resolver;
  14491. }
  14492. inline flatbuffers::Offset<DensifyOptions> DensifyOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14493. return CreateDensifyOptions(_fbb, _o, _rehasher);
  14494. }
  14495. inline flatbuffers::Offset<DensifyOptions> CreateDensifyOptions(flatbuffers::FlatBufferBuilder &_fbb, const DensifyOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14496. (void)_rehasher;
  14497. (void)_o;
  14498. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DensifyOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14499. return tflite::CreateDensifyOptions(
  14500. _fbb);
  14501. }
  14502. inline SegmentSumOptionsT *SegmentSumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14503. std::unique_ptr<tflite::SegmentSumOptionsT> _o = std::unique_ptr<tflite::SegmentSumOptionsT>(new SegmentSumOptionsT());
  14504. UnPackTo(_o.get(), _resolver);
  14505. return _o.release();
  14506. }
  14507. inline void SegmentSumOptions::UnPackTo(SegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14508. (void)_o;
  14509. (void)_resolver;
  14510. }
  14511. inline flatbuffers::Offset<SegmentSumOptions> SegmentSumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14512. return CreateSegmentSumOptions(_fbb, _o, _rehasher);
  14513. }
  14514. inline flatbuffers::Offset<SegmentSumOptions> CreateSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const SegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14515. (void)_rehasher;
  14516. (void)_o;
  14517. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SegmentSumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14518. return tflite::CreateSegmentSumOptions(
  14519. _fbb);
  14520. }
  14521. inline BatchMatMulOptionsT *BatchMatMulOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14522. std::unique_ptr<tflite::BatchMatMulOptionsT> _o = std::unique_ptr<tflite::BatchMatMulOptionsT>(new BatchMatMulOptionsT());
  14523. UnPackTo(_o.get(), _resolver);
  14524. return _o.release();
  14525. }
  14526. inline void BatchMatMulOptions::UnPackTo(BatchMatMulOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14527. (void)_o;
  14528. (void)_resolver;
  14529. { auto _e = adj_x(); _o->adj_x = _e; }
  14530. { auto _e = adj_y(); _o->adj_y = _e; }
  14531. { auto _e = asymmetric_quantize_inputs(); _o->asymmetric_quantize_inputs = _e; }
  14532. }
  14533. inline flatbuffers::Offset<BatchMatMulOptions> BatchMatMulOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14534. return CreateBatchMatMulOptions(_fbb, _o, _rehasher);
  14535. }
  14536. inline flatbuffers::Offset<BatchMatMulOptions> CreateBatchMatMulOptions(flatbuffers::FlatBufferBuilder &_fbb, const BatchMatMulOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14537. (void)_rehasher;
  14538. (void)_o;
  14539. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BatchMatMulOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14540. auto _adj_x = _o->adj_x;
  14541. auto _adj_y = _o->adj_y;
  14542. auto _asymmetric_quantize_inputs = _o->asymmetric_quantize_inputs;
  14543. return tflite::CreateBatchMatMulOptions(
  14544. _fbb,
  14545. _adj_x,
  14546. _adj_y,
  14547. _asymmetric_quantize_inputs);
  14548. }
  14549. inline CumsumOptionsT *CumsumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14550. std::unique_ptr<tflite::CumsumOptionsT> _o = std::unique_ptr<tflite::CumsumOptionsT>(new CumsumOptionsT());
  14551. UnPackTo(_o.get(), _resolver);
  14552. return _o.release();
  14553. }
  14554. inline void CumsumOptions::UnPackTo(CumsumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14555. (void)_o;
  14556. (void)_resolver;
  14557. { auto _e = exclusive(); _o->exclusive = _e; }
  14558. { auto _e = reverse(); _o->reverse = _e; }
  14559. }
  14560. inline flatbuffers::Offset<CumsumOptions> CumsumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14561. return CreateCumsumOptions(_fbb, _o, _rehasher);
  14562. }
  14563. inline flatbuffers::Offset<CumsumOptions> CreateCumsumOptions(flatbuffers::FlatBufferBuilder &_fbb, const CumsumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14564. (void)_rehasher;
  14565. (void)_o;
  14566. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const CumsumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14567. auto _exclusive = _o->exclusive;
  14568. auto _reverse = _o->reverse;
  14569. return tflite::CreateCumsumOptions(
  14570. _fbb,
  14571. _exclusive,
  14572. _reverse);
  14573. }
  14574. inline BroadcastToOptionsT *BroadcastToOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14575. std::unique_ptr<tflite::BroadcastToOptionsT> _o = std::unique_ptr<tflite::BroadcastToOptionsT>(new BroadcastToOptionsT());
  14576. UnPackTo(_o.get(), _resolver);
  14577. return _o.release();
  14578. }
  14579. inline void BroadcastToOptions::UnPackTo(BroadcastToOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14580. (void)_o;
  14581. (void)_resolver;
  14582. }
  14583. inline flatbuffers::Offset<BroadcastToOptions> BroadcastToOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14584. return CreateBroadcastToOptions(_fbb, _o, _rehasher);
  14585. }
  14586. inline flatbuffers::Offset<BroadcastToOptions> CreateBroadcastToOptions(flatbuffers::FlatBufferBuilder &_fbb, const BroadcastToOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14587. (void)_rehasher;
  14588. (void)_o;
  14589. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BroadcastToOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14590. return tflite::CreateBroadcastToOptions(
  14591. _fbb);
  14592. }
  14593. inline Rfft2dOptionsT *Rfft2dOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14594. std::unique_ptr<tflite::Rfft2dOptionsT> _o = std::unique_ptr<tflite::Rfft2dOptionsT>(new Rfft2dOptionsT());
  14595. UnPackTo(_o.get(), _resolver);
  14596. return _o.release();
  14597. }
  14598. inline void Rfft2dOptions::UnPackTo(Rfft2dOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14599. (void)_o;
  14600. (void)_resolver;
  14601. }
  14602. inline flatbuffers::Offset<Rfft2dOptions> Rfft2dOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14603. return CreateRfft2dOptions(_fbb, _o, _rehasher);
  14604. }
  14605. inline flatbuffers::Offset<Rfft2dOptions> CreateRfft2dOptions(flatbuffers::FlatBufferBuilder &_fbb, const Rfft2dOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14606. (void)_rehasher;
  14607. (void)_o;
  14608. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const Rfft2dOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14609. return tflite::CreateRfft2dOptions(
  14610. _fbb);
  14611. }
  14612. inline HashtableOptionsT *HashtableOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14613. std::unique_ptr<tflite::HashtableOptionsT> _o = std::unique_ptr<tflite::HashtableOptionsT>(new HashtableOptionsT());
  14614. UnPackTo(_o.get(), _resolver);
  14615. return _o.release();
  14616. }
  14617. inline void HashtableOptions::UnPackTo(HashtableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14618. (void)_o;
  14619. (void)_resolver;
  14620. { auto _e = table_id(); _o->table_id = _e; }
  14621. { auto _e = key_dtype(); _o->key_dtype = _e; }
  14622. { auto _e = value_dtype(); _o->value_dtype = _e; }
  14623. }
  14624. inline flatbuffers::Offset<HashtableOptions> HashtableOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14625. return CreateHashtableOptions(_fbb, _o, _rehasher);
  14626. }
  14627. inline flatbuffers::Offset<HashtableOptions> CreateHashtableOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14628. (void)_rehasher;
  14629. (void)_o;
  14630. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14631. auto _table_id = _o->table_id;
  14632. auto _key_dtype = _o->key_dtype;
  14633. auto _value_dtype = _o->value_dtype;
  14634. return tflite::CreateHashtableOptions(
  14635. _fbb,
  14636. _table_id,
  14637. _key_dtype,
  14638. _value_dtype);
  14639. }
  14640. inline HashtableFindOptionsT *HashtableFindOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14641. std::unique_ptr<tflite::HashtableFindOptionsT> _o = std::unique_ptr<tflite::HashtableFindOptionsT>(new HashtableFindOptionsT());
  14642. UnPackTo(_o.get(), _resolver);
  14643. return _o.release();
  14644. }
  14645. inline void HashtableFindOptions::UnPackTo(HashtableFindOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14646. (void)_o;
  14647. (void)_resolver;
  14648. }
  14649. inline flatbuffers::Offset<HashtableFindOptions> HashtableFindOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14650. return CreateHashtableFindOptions(_fbb, _o, _rehasher);
  14651. }
  14652. inline flatbuffers::Offset<HashtableFindOptions> CreateHashtableFindOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableFindOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14653. (void)_rehasher;
  14654. (void)_o;
  14655. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableFindOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14656. return tflite::CreateHashtableFindOptions(
  14657. _fbb);
  14658. }
  14659. inline HashtableImportOptionsT *HashtableImportOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14660. std::unique_ptr<tflite::HashtableImportOptionsT> _o = std::unique_ptr<tflite::HashtableImportOptionsT>(new HashtableImportOptionsT());
  14661. UnPackTo(_o.get(), _resolver);
  14662. return _o.release();
  14663. }
  14664. inline void HashtableImportOptions::UnPackTo(HashtableImportOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14665. (void)_o;
  14666. (void)_resolver;
  14667. }
  14668. inline flatbuffers::Offset<HashtableImportOptions> HashtableImportOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14669. return CreateHashtableImportOptions(_fbb, _o, _rehasher);
  14670. }
  14671. inline flatbuffers::Offset<HashtableImportOptions> CreateHashtableImportOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableImportOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14672. (void)_rehasher;
  14673. (void)_o;
  14674. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableImportOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14675. return tflite::CreateHashtableImportOptions(
  14676. _fbb);
  14677. }
  14678. inline HashtableSizeOptionsT *HashtableSizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14679. std::unique_ptr<tflite::HashtableSizeOptionsT> _o = std::unique_ptr<tflite::HashtableSizeOptionsT>(new HashtableSizeOptionsT());
  14680. UnPackTo(_o.get(), _resolver);
  14681. return _o.release();
  14682. }
  14683. inline void HashtableSizeOptions::UnPackTo(HashtableSizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14684. (void)_o;
  14685. (void)_resolver;
  14686. }
  14687. inline flatbuffers::Offset<HashtableSizeOptions> HashtableSizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14688. return CreateHashtableSizeOptions(_fbb, _o, _rehasher);
  14689. }
  14690. inline flatbuffers::Offset<HashtableSizeOptions> CreateHashtableSizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const HashtableSizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14691. (void)_rehasher;
  14692. (void)_o;
  14693. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const HashtableSizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14694. return tflite::CreateHashtableSizeOptions(
  14695. _fbb);
  14696. }
  14697. inline VarHandleOptionsT *VarHandleOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14698. std::unique_ptr<tflite::VarHandleOptionsT> _o = std::unique_ptr<tflite::VarHandleOptionsT>(new VarHandleOptionsT());
  14699. UnPackTo(_o.get(), _resolver);
  14700. return _o.release();
  14701. }
  14702. inline void VarHandleOptions::UnPackTo(VarHandleOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14703. (void)_o;
  14704. (void)_resolver;
  14705. { auto _e = container(); if (_e) _o->container = _e->str(); }
  14706. { auto _e = shared_name(); if (_e) _o->shared_name = _e->str(); }
  14707. }
  14708. inline flatbuffers::Offset<VarHandleOptions> VarHandleOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14709. return CreateVarHandleOptions(_fbb, _o, _rehasher);
  14710. }
  14711. inline flatbuffers::Offset<VarHandleOptions> CreateVarHandleOptions(flatbuffers::FlatBufferBuilder &_fbb, const VarHandleOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14712. (void)_rehasher;
  14713. (void)_o;
  14714. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const VarHandleOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14715. auto _container = _o->container.empty() ? 0 : _fbb.CreateString(_o->container);
  14716. auto _shared_name = _o->shared_name.empty() ? 0 : _fbb.CreateString(_o->shared_name);
  14717. return tflite::CreateVarHandleOptions(
  14718. _fbb,
  14719. _container,
  14720. _shared_name);
  14721. }
  14722. inline ReadVariableOptionsT *ReadVariableOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14723. std::unique_ptr<tflite::ReadVariableOptionsT> _o = std::unique_ptr<tflite::ReadVariableOptionsT>(new ReadVariableOptionsT());
  14724. UnPackTo(_o.get(), _resolver);
  14725. return _o.release();
  14726. }
  14727. inline void ReadVariableOptions::UnPackTo(ReadVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14728. (void)_o;
  14729. (void)_resolver;
  14730. }
  14731. inline flatbuffers::Offset<ReadVariableOptions> ReadVariableOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14732. return CreateReadVariableOptions(_fbb, _o, _rehasher);
  14733. }
  14734. inline flatbuffers::Offset<ReadVariableOptions> CreateReadVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const ReadVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14735. (void)_rehasher;
  14736. (void)_o;
  14737. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ReadVariableOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14738. return tflite::CreateReadVariableOptions(
  14739. _fbb);
  14740. }
  14741. inline AssignVariableOptionsT *AssignVariableOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14742. std::unique_ptr<tflite::AssignVariableOptionsT> _o = std::unique_ptr<tflite::AssignVariableOptionsT>(new AssignVariableOptionsT());
  14743. UnPackTo(_o.get(), _resolver);
  14744. return _o.release();
  14745. }
  14746. inline void AssignVariableOptions::UnPackTo(AssignVariableOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14747. (void)_o;
  14748. (void)_resolver;
  14749. }
  14750. inline flatbuffers::Offset<AssignVariableOptions> AssignVariableOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14751. return CreateAssignVariableOptions(_fbb, _o, _rehasher);
  14752. }
  14753. inline flatbuffers::Offset<AssignVariableOptions> CreateAssignVariableOptions(flatbuffers::FlatBufferBuilder &_fbb, const AssignVariableOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14754. (void)_rehasher;
  14755. (void)_o;
  14756. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const AssignVariableOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14757. return tflite::CreateAssignVariableOptions(
  14758. _fbb);
  14759. }
  14760. inline RandomOptionsT *RandomOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14761. std::unique_ptr<tflite::RandomOptionsT> _o = std::unique_ptr<tflite::RandomOptionsT>(new RandomOptionsT());
  14762. UnPackTo(_o.get(), _resolver);
  14763. return _o.release();
  14764. }
  14765. inline void RandomOptions::UnPackTo(RandomOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14766. (void)_o;
  14767. (void)_resolver;
  14768. { auto _e = seed(); _o->seed = _e; }
  14769. { auto _e = seed2(); _o->seed2 = _e; }
  14770. }
  14771. inline flatbuffers::Offset<RandomOptions> RandomOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14772. return CreateRandomOptions(_fbb, _o, _rehasher);
  14773. }
  14774. inline flatbuffers::Offset<RandomOptions> CreateRandomOptions(flatbuffers::FlatBufferBuilder &_fbb, const RandomOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14775. (void)_rehasher;
  14776. (void)_o;
  14777. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const RandomOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14778. auto _seed = _o->seed;
  14779. auto _seed2 = _o->seed2;
  14780. return tflite::CreateRandomOptions(
  14781. _fbb,
  14782. _seed,
  14783. _seed2);
  14784. }
  14785. inline BucketizeOptionsT *BucketizeOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14786. std::unique_ptr<tflite::BucketizeOptionsT> _o = std::unique_ptr<tflite::BucketizeOptionsT>(new BucketizeOptionsT());
  14787. UnPackTo(_o.get(), _resolver);
  14788. return _o.release();
  14789. }
  14790. inline void BucketizeOptions::UnPackTo(BucketizeOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14791. (void)_o;
  14792. (void)_resolver;
  14793. { 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); } } }
  14794. }
  14795. inline flatbuffers::Offset<BucketizeOptions> BucketizeOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14796. return CreateBucketizeOptions(_fbb, _o, _rehasher);
  14797. }
  14798. inline flatbuffers::Offset<BucketizeOptions> CreateBucketizeOptions(flatbuffers::FlatBufferBuilder &_fbb, const BucketizeOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14799. (void)_rehasher;
  14800. (void)_o;
  14801. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BucketizeOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14802. auto _boundaries = _o->boundaries.size() ? _fbb.CreateVector(_o->boundaries) : 0;
  14803. return tflite::CreateBucketizeOptions(
  14804. _fbb,
  14805. _boundaries);
  14806. }
  14807. inline GeluOptionsT *GeluOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14808. std::unique_ptr<tflite::GeluOptionsT> _o = std::unique_ptr<tflite::GeluOptionsT>(new GeluOptionsT());
  14809. UnPackTo(_o.get(), _resolver);
  14810. return _o.release();
  14811. }
  14812. inline void GeluOptions::UnPackTo(GeluOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14813. (void)_o;
  14814. (void)_resolver;
  14815. { auto _e = approximate(); _o->approximate = _e; }
  14816. }
  14817. inline flatbuffers::Offset<GeluOptions> GeluOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14818. return CreateGeluOptions(_fbb, _o, _rehasher);
  14819. }
  14820. inline flatbuffers::Offset<GeluOptions> CreateGeluOptions(flatbuffers::FlatBufferBuilder &_fbb, const GeluOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14821. (void)_rehasher;
  14822. (void)_o;
  14823. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const GeluOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14824. auto _approximate = _o->approximate;
  14825. return tflite::CreateGeluOptions(
  14826. _fbb,
  14827. _approximate);
  14828. }
  14829. inline DynamicUpdateSliceOptionsT *DynamicUpdateSliceOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14830. std::unique_ptr<tflite::DynamicUpdateSliceOptionsT> _o = std::unique_ptr<tflite::DynamicUpdateSliceOptionsT>(new DynamicUpdateSliceOptionsT());
  14831. UnPackTo(_o.get(), _resolver);
  14832. return _o.release();
  14833. }
  14834. inline void DynamicUpdateSliceOptions::UnPackTo(DynamicUpdateSliceOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14835. (void)_o;
  14836. (void)_resolver;
  14837. }
  14838. inline flatbuffers::Offset<DynamicUpdateSliceOptions> DynamicUpdateSliceOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14839. return CreateDynamicUpdateSliceOptions(_fbb, _o, _rehasher);
  14840. }
  14841. inline flatbuffers::Offset<DynamicUpdateSliceOptions> CreateDynamicUpdateSliceOptions(flatbuffers::FlatBufferBuilder &_fbb, const DynamicUpdateSliceOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14842. (void)_rehasher;
  14843. (void)_o;
  14844. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const DynamicUpdateSliceOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14845. return tflite::CreateDynamicUpdateSliceOptions(
  14846. _fbb);
  14847. }
  14848. inline UnsortedSegmentProdOptionsT *UnsortedSegmentProdOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14849. std::unique_ptr<tflite::UnsortedSegmentProdOptionsT> _o = std::unique_ptr<tflite::UnsortedSegmentProdOptionsT>(new UnsortedSegmentProdOptionsT());
  14850. UnPackTo(_o.get(), _resolver);
  14851. return _o.release();
  14852. }
  14853. inline void UnsortedSegmentProdOptions::UnPackTo(UnsortedSegmentProdOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14854. (void)_o;
  14855. (void)_resolver;
  14856. }
  14857. inline flatbuffers::Offset<UnsortedSegmentProdOptions> UnsortedSegmentProdOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14858. return CreateUnsortedSegmentProdOptions(_fbb, _o, _rehasher);
  14859. }
  14860. inline flatbuffers::Offset<UnsortedSegmentProdOptions> CreateUnsortedSegmentProdOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentProdOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14861. (void)_rehasher;
  14862. (void)_o;
  14863. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentProdOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14864. return tflite::CreateUnsortedSegmentProdOptions(
  14865. _fbb);
  14866. }
  14867. inline UnsortedSegmentMaxOptionsT *UnsortedSegmentMaxOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14868. std::unique_ptr<tflite::UnsortedSegmentMaxOptionsT> _o = std::unique_ptr<tflite::UnsortedSegmentMaxOptionsT>(new UnsortedSegmentMaxOptionsT());
  14869. UnPackTo(_o.get(), _resolver);
  14870. return _o.release();
  14871. }
  14872. inline void UnsortedSegmentMaxOptions::UnPackTo(UnsortedSegmentMaxOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14873. (void)_o;
  14874. (void)_resolver;
  14875. }
  14876. inline flatbuffers::Offset<UnsortedSegmentMaxOptions> UnsortedSegmentMaxOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14877. return CreateUnsortedSegmentMaxOptions(_fbb, _o, _rehasher);
  14878. }
  14879. inline flatbuffers::Offset<UnsortedSegmentMaxOptions> CreateUnsortedSegmentMaxOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMaxOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14880. (void)_rehasher;
  14881. (void)_o;
  14882. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentMaxOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14883. return tflite::CreateUnsortedSegmentMaxOptions(
  14884. _fbb);
  14885. }
  14886. inline UnsortedSegmentSumOptionsT *UnsortedSegmentSumOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14887. std::unique_ptr<tflite::UnsortedSegmentSumOptionsT> _o = std::unique_ptr<tflite::UnsortedSegmentSumOptionsT>(new UnsortedSegmentSumOptionsT());
  14888. UnPackTo(_o.get(), _resolver);
  14889. return _o.release();
  14890. }
  14891. inline void UnsortedSegmentSumOptions::UnPackTo(UnsortedSegmentSumOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14892. (void)_o;
  14893. (void)_resolver;
  14894. }
  14895. inline flatbuffers::Offset<UnsortedSegmentSumOptions> UnsortedSegmentSumOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14896. return CreateUnsortedSegmentSumOptions(_fbb, _o, _rehasher);
  14897. }
  14898. inline flatbuffers::Offset<UnsortedSegmentSumOptions> CreateUnsortedSegmentSumOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentSumOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14899. (void)_rehasher;
  14900. (void)_o;
  14901. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentSumOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14902. return tflite::CreateUnsortedSegmentSumOptions(
  14903. _fbb);
  14904. }
  14905. inline ATan2OptionsT *ATan2Options::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14906. std::unique_ptr<tflite::ATan2OptionsT> _o = std::unique_ptr<tflite::ATan2OptionsT>(new ATan2OptionsT());
  14907. UnPackTo(_o.get(), _resolver);
  14908. return _o.release();
  14909. }
  14910. inline void ATan2Options::UnPackTo(ATan2OptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14911. (void)_o;
  14912. (void)_resolver;
  14913. }
  14914. inline flatbuffers::Offset<ATan2Options> ATan2Options::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14915. return CreateATan2Options(_fbb, _o, _rehasher);
  14916. }
  14917. inline flatbuffers::Offset<ATan2Options> CreateATan2Options(flatbuffers::FlatBufferBuilder &_fbb, const ATan2OptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14918. (void)_rehasher;
  14919. (void)_o;
  14920. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ATan2OptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14921. return tflite::CreateATan2Options(
  14922. _fbb);
  14923. }
  14924. inline UnsortedSegmentMinOptionsT *UnsortedSegmentMinOptions::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14925. std::unique_ptr<tflite::UnsortedSegmentMinOptionsT> _o = std::unique_ptr<tflite::UnsortedSegmentMinOptionsT>(new UnsortedSegmentMinOptionsT());
  14926. UnPackTo(_o.get(), _resolver);
  14927. return _o.release();
  14928. }
  14929. inline void UnsortedSegmentMinOptions::UnPackTo(UnsortedSegmentMinOptionsT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14930. (void)_o;
  14931. (void)_resolver;
  14932. }
  14933. inline flatbuffers::Offset<UnsortedSegmentMinOptions> UnsortedSegmentMinOptions::Pack(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14934. return CreateUnsortedSegmentMinOptions(_fbb, _o, _rehasher);
  14935. }
  14936. inline flatbuffers::Offset<UnsortedSegmentMinOptions> CreateUnsortedSegmentMinOptions(flatbuffers::FlatBufferBuilder &_fbb, const UnsortedSegmentMinOptionsT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14937. (void)_rehasher;
  14938. (void)_o;
  14939. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const UnsortedSegmentMinOptionsT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14940. return tflite::CreateUnsortedSegmentMinOptions(
  14941. _fbb);
  14942. }
  14943. inline OperatorCodeT *OperatorCode::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14944. std::unique_ptr<tflite::OperatorCodeT> _o = std::unique_ptr<tflite::OperatorCodeT>(new OperatorCodeT());
  14945. UnPackTo(_o.get(), _resolver);
  14946. return _o.release();
  14947. }
  14948. inline void OperatorCode::UnPackTo(OperatorCodeT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14949. (void)_o;
  14950. (void)_resolver;
  14951. { auto _e = deprecated_builtin_code(); _o->deprecated_builtin_code = _e; }
  14952. { auto _e = custom_code(); if (_e) _o->custom_code = _e->str(); }
  14953. { auto _e = version(); _o->version = _e; }
  14954. { auto _e = builtin_code(); _o->builtin_code = _e; }
  14955. }
  14956. inline flatbuffers::Offset<OperatorCode> OperatorCode::Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14957. return CreateOperatorCode(_fbb, _o, _rehasher);
  14958. }
  14959. inline flatbuffers::Offset<OperatorCode> CreateOperatorCode(flatbuffers::FlatBufferBuilder &_fbb, const OperatorCodeT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14960. (void)_rehasher;
  14961. (void)_o;
  14962. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const OperatorCodeT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14963. auto _deprecated_builtin_code = _o->deprecated_builtin_code;
  14964. auto _custom_code = _o->custom_code.empty() ? 0 : _fbb.CreateString(_o->custom_code);
  14965. auto _version = _o->version;
  14966. auto _builtin_code = _o->builtin_code;
  14967. return tflite::CreateOperatorCode(
  14968. _fbb,
  14969. _deprecated_builtin_code,
  14970. _custom_code,
  14971. _version,
  14972. _builtin_code);
  14973. }
  14974. inline OperatorT *Operator::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  14975. std::unique_ptr<tflite::OperatorT> _o = std::unique_ptr<tflite::OperatorT>(new OperatorT());
  14976. UnPackTo(_o.get(), _resolver);
  14977. return _o.release();
  14978. }
  14979. inline void Operator::UnPackTo(OperatorT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  14980. (void)_o;
  14981. (void)_resolver;
  14982. { auto _e = opcode_index(); _o->opcode_index = _e; }
  14983. { 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); } } }
  14984. { 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); } } }
  14985. { auto _e = builtin_options_type(); _o->builtin_options.type = _e; }
  14986. { auto _e = builtin_options(); if (_e) _o->builtin_options.value = tflite::BuiltinOptionsUnion::UnPack(_e, builtin_options_type(), _resolver); }
  14987. { auto _e = custom_options(); if (_e) { _o->custom_options.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->custom_options[_i] = _e->Get(_i); } } }
  14988. { auto _e = custom_options_format(); _o->custom_options_format = _e; }
  14989. { 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; } } }
  14990. { 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); } } }
  14991. }
  14992. inline flatbuffers::Offset<Operator> Operator::Pack(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  14993. return CreateOperator(_fbb, _o, _rehasher);
  14994. }
  14995. inline flatbuffers::Offset<Operator> CreateOperator(flatbuffers::FlatBufferBuilder &_fbb, const OperatorT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  14996. (void)_rehasher;
  14997. (void)_o;
  14998. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const OperatorT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  14999. auto _opcode_index = _o->opcode_index;
  15000. auto _inputs = _o->inputs.size() ? _fbb.CreateVector(_o->inputs) : 0;
  15001. auto _outputs = _o->outputs.size() ? _fbb.CreateVector(_o->outputs) : 0;
  15002. auto _builtin_options_type = _o->builtin_options.type;
  15003. auto _builtin_options = _o->builtin_options.Pack(_fbb);
  15004. auto _custom_options = _o->custom_options.size() ? _fbb.CreateVector(_o->custom_options) : 0;
  15005. auto _custom_options_format = _o->custom_options_format;
  15006. auto _mutating_variable_inputs = _o->mutating_variable_inputs.size() ? _fbb.CreateVector(_o->mutating_variable_inputs) : 0;
  15007. auto _intermediates = _o->intermediates.size() ? _fbb.CreateVector(_o->intermediates) : 0;
  15008. return tflite::CreateOperator(
  15009. _fbb,
  15010. _opcode_index,
  15011. _inputs,
  15012. _outputs,
  15013. _builtin_options_type,
  15014. _builtin_options,
  15015. _custom_options,
  15016. _custom_options_format,
  15017. _mutating_variable_inputs,
  15018. _intermediates);
  15019. }
  15020. inline SubGraphT *SubGraph::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15021. std::unique_ptr<tflite::SubGraphT> _o = std::unique_ptr<tflite::SubGraphT>(new SubGraphT());
  15022. UnPackTo(_o.get(), _resolver);
  15023. return _o.release();
  15024. }
  15025. inline void SubGraph::UnPackTo(SubGraphT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15026. (void)_o;
  15027. (void)_resolver;
  15028. { auto _e = tensors(); if (_e) { _o->tensors.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->tensors[_i] = std::unique_ptr<tflite::TensorT>(_e->Get(_i)->UnPack(_resolver)); } } }
  15029. { 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); } } }
  15030. { 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); } } }
  15031. { auto _e = operators(); if (_e) { _o->operators.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->operators[_i] = std::unique_ptr<tflite::OperatorT>(_e->Get(_i)->UnPack(_resolver)); } } }
  15032. { auto _e = name(); if (_e) _o->name = _e->str(); }
  15033. }
  15034. inline flatbuffers::Offset<SubGraph> SubGraph::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15035. return CreateSubGraph(_fbb, _o, _rehasher);
  15036. }
  15037. inline flatbuffers::Offset<SubGraph> CreateSubGraph(flatbuffers::FlatBufferBuilder &_fbb, const SubGraphT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15038. (void)_rehasher;
  15039. (void)_o;
  15040. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SubGraphT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15041. 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;
  15042. auto _inputs = _o->inputs.size() ? _fbb.CreateVector(_o->inputs) : 0;
  15043. auto _outputs = _o->outputs.size() ? _fbb.CreateVector(_o->outputs) : 0;
  15044. 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;
  15045. auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
  15046. return tflite::CreateSubGraph(
  15047. _fbb,
  15048. _tensors,
  15049. _inputs,
  15050. _outputs,
  15051. _operators,
  15052. _name);
  15053. }
  15054. inline BufferT *Buffer::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15055. std::unique_ptr<tflite::BufferT> _o = std::unique_ptr<tflite::BufferT>(new BufferT());
  15056. UnPackTo(_o.get(), _resolver);
  15057. return _o.release();
  15058. }
  15059. inline void Buffer::UnPackTo(BufferT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15060. (void)_o;
  15061. (void)_resolver;
  15062. { auto _e = data(); if (_e) { _o->data.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->data[_i] = _e->Get(_i); } } }
  15063. }
  15064. inline flatbuffers::Offset<Buffer> Buffer::Pack(flatbuffers::FlatBufferBuilder &_fbb, const BufferT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15065. return CreateBuffer(_fbb, _o, _rehasher);
  15066. }
  15067. inline flatbuffers::Offset<Buffer> CreateBuffer(flatbuffers::FlatBufferBuilder &_fbb, const BufferT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15068. (void)_rehasher;
  15069. (void)_o;
  15070. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const BufferT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15071. _fbb.ForceVectorAlignment(_o->data.size(), sizeof(uint8_t), 16);
  15072. auto _data = _o->data.size() ? _fbb.CreateVector(_o->data) : 0;
  15073. return tflite::CreateBuffer(
  15074. _fbb,
  15075. _data);
  15076. }
  15077. inline MetadataT *Metadata::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15078. std::unique_ptr<tflite::MetadataT> _o = std::unique_ptr<tflite::MetadataT>(new MetadataT());
  15079. UnPackTo(_o.get(), _resolver);
  15080. return _o.release();
  15081. }
  15082. inline void Metadata::UnPackTo(MetadataT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15083. (void)_o;
  15084. (void)_resolver;
  15085. { auto _e = name(); if (_e) _o->name = _e->str(); }
  15086. { auto _e = buffer(); _o->buffer = _e; }
  15087. }
  15088. inline flatbuffers::Offset<Metadata> Metadata::Pack(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15089. return CreateMetadata(_fbb, _o, _rehasher);
  15090. }
  15091. inline flatbuffers::Offset<Metadata> CreateMetadata(flatbuffers::FlatBufferBuilder &_fbb, const MetadataT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15092. (void)_rehasher;
  15093. (void)_o;
  15094. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const MetadataT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15095. auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
  15096. auto _buffer = _o->buffer;
  15097. return tflite::CreateMetadata(
  15098. _fbb,
  15099. _name,
  15100. _buffer);
  15101. }
  15102. inline TensorMapT *TensorMap::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15103. std::unique_ptr<tflite::TensorMapT> _o = std::unique_ptr<tflite::TensorMapT>(new TensorMapT());
  15104. UnPackTo(_o.get(), _resolver);
  15105. return _o.release();
  15106. }
  15107. inline void TensorMap::UnPackTo(TensorMapT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15108. (void)_o;
  15109. (void)_resolver;
  15110. { auto _e = name(); if (_e) _o->name = _e->str(); }
  15111. { auto _e = tensor_index(); _o->tensor_index = _e; }
  15112. }
  15113. inline flatbuffers::Offset<TensorMap> TensorMap::Pack(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15114. return CreateTensorMap(_fbb, _o, _rehasher);
  15115. }
  15116. inline flatbuffers::Offset<TensorMap> CreateTensorMap(flatbuffers::FlatBufferBuilder &_fbb, const TensorMapT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15117. (void)_rehasher;
  15118. (void)_o;
  15119. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const TensorMapT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15120. auto _name = _o->name.empty() ? 0 : _fbb.CreateString(_o->name);
  15121. auto _tensor_index = _o->tensor_index;
  15122. return tflite::CreateTensorMap(
  15123. _fbb,
  15124. _name,
  15125. _tensor_index);
  15126. }
  15127. inline SignatureDefT *SignatureDef::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15128. std::unique_ptr<tflite::SignatureDefT> _o = std::unique_ptr<tflite::SignatureDefT>(new SignatureDefT());
  15129. UnPackTo(_o.get(), _resolver);
  15130. return _o.release();
  15131. }
  15132. inline void SignatureDef::UnPackTo(SignatureDefT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15133. (void)_o;
  15134. (void)_resolver;
  15135. { auto _e = inputs(); if (_e) { _o->inputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->inputs[_i] = std::unique_ptr<tflite::TensorMapT>(_e->Get(_i)->UnPack(_resolver)); } } }
  15136. { auto _e = outputs(); if (_e) { _o->outputs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->outputs[_i] = std::unique_ptr<tflite::TensorMapT>(_e->Get(_i)->UnPack(_resolver)); } } }
  15137. { auto _e = signature_key(); if (_e) _o->signature_key = _e->str(); }
  15138. { auto _e = subgraph_index(); _o->subgraph_index = _e; }
  15139. }
  15140. inline flatbuffers::Offset<SignatureDef> SignatureDef::Pack(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15141. return CreateSignatureDef(_fbb, _o, _rehasher);
  15142. }
  15143. inline flatbuffers::Offset<SignatureDef> CreateSignatureDef(flatbuffers::FlatBufferBuilder &_fbb, const SignatureDefT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15144. (void)_rehasher;
  15145. (void)_o;
  15146. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const SignatureDefT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15147. 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;
  15148. 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;
  15149. auto _signature_key = _o->signature_key.empty() ? 0 : _fbb.CreateString(_o->signature_key);
  15150. auto _subgraph_index = _o->subgraph_index;
  15151. return tflite::CreateSignatureDef(
  15152. _fbb,
  15153. _inputs,
  15154. _outputs,
  15155. _signature_key,
  15156. _subgraph_index);
  15157. }
  15158. inline ModelT *Model::UnPack(const flatbuffers::resolver_function_t *_resolver) const {
  15159. std::unique_ptr<tflite::ModelT> _o = std::unique_ptr<tflite::ModelT>(new ModelT());
  15160. UnPackTo(_o.get(), _resolver);
  15161. return _o.release();
  15162. }
  15163. inline void Model::UnPackTo(ModelT *_o, const flatbuffers::resolver_function_t *_resolver) const {
  15164. (void)_o;
  15165. (void)_resolver;
  15166. { auto _e = version(); _o->version = _e; }
  15167. { auto _e = operator_codes(); if (_e) { _o->operator_codes.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->operator_codes[_i] = std::unique_ptr<tflite::OperatorCodeT>(_e->Get(_i)->UnPack(_resolver)); } } }
  15168. { auto _e = subgraphs(); if (_e) { _o->subgraphs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->subgraphs[_i] = std::unique_ptr<tflite::SubGraphT>(_e->Get(_i)->UnPack(_resolver)); } } }
  15169. { auto _e = description(); if (_e) _o->description = _e->str(); }
  15170. { auto _e = buffers(); if (_e) { _o->buffers.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->buffers[_i] = std::unique_ptr<tflite::BufferT>(_e->Get(_i)->UnPack(_resolver)); } } }
  15171. { 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); } } }
  15172. { auto _e = metadata(); if (_e) { _o->metadata.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->metadata[_i] = std::unique_ptr<tflite::MetadataT>(_e->Get(_i)->UnPack(_resolver)); } } }
  15173. { auto _e = signature_defs(); if (_e) { _o->signature_defs.resize(_e->size()); for (flatbuffers::uoffset_t _i = 0; _i < _e->size(); _i++) { _o->signature_defs[_i] = std::unique_ptr<tflite::SignatureDefT>(_e->Get(_i)->UnPack(_resolver)); } } }
  15174. }
  15175. inline flatbuffers::Offset<Model> Model::Pack(flatbuffers::FlatBufferBuilder &_fbb, const ModelT* _o, const flatbuffers::rehasher_function_t *_rehasher) {
  15176. return CreateModel(_fbb, _o, _rehasher);
  15177. }
  15178. inline flatbuffers::Offset<Model> CreateModel(flatbuffers::FlatBufferBuilder &_fbb, const ModelT *_o, const flatbuffers::rehasher_function_t *_rehasher) {
  15179. (void)_rehasher;
  15180. (void)_o;
  15181. struct _VectorArgs { flatbuffers::FlatBufferBuilder *__fbb; const ModelT* __o; const flatbuffers::rehasher_function_t *__rehasher; } _va = { &_fbb, _o, _rehasher}; (void)_va;
  15182. auto _version = _o->version;
  15183. 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;
  15184. 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;
  15185. auto _description = _o->description.empty() ? 0 : _fbb.CreateString(_o->description);
  15186. 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;
  15187. auto _metadata_buffer = _o->metadata_buffer.size() ? _fbb.CreateVector(_o->metadata_buffer) : 0;
  15188. 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;
  15189. 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;
  15190. return tflite::CreateModel(
  15191. _fbb,
  15192. _version,
  15193. _operator_codes,
  15194. _subgraphs,
  15195. _description,
  15196. _buffers,
  15197. _metadata_buffer,
  15198. _metadata,
  15199. _signature_defs);
  15200. }
  15201. inline bool VerifyQuantizationDetails(flatbuffers::Verifier &verifier, const void *obj, QuantizationDetails type) {
  15202. switch (type) {
  15203. case QuantizationDetails_NONE: {
  15204. return true;
  15205. }
  15206. case QuantizationDetails_CustomQuantization: {
  15207. auto ptr = reinterpret_cast<const tflite::CustomQuantization *>(obj);
  15208. return verifier.VerifyTable(ptr);
  15209. }
  15210. default: return true;
  15211. }
  15212. }
  15213. inline bool VerifyQuantizationDetailsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types) {
  15214. if (!values || !types) return !values && !types;
  15215. if (values->size() != types->size()) return false;
  15216. for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
  15217. if (!VerifyQuantizationDetails(
  15218. verifier, values->Get(i), types->GetEnum<QuantizationDetails>(i))) {
  15219. return false;
  15220. }
  15221. }
  15222. return true;
  15223. }
  15224. inline void *QuantizationDetailsUnion::UnPack(const void *obj, QuantizationDetails type, const flatbuffers::resolver_function_t *resolver) {
  15225. switch (type) {
  15226. case QuantizationDetails_CustomQuantization: {
  15227. auto ptr = reinterpret_cast<const tflite::CustomQuantization *>(obj);
  15228. return ptr->UnPack(resolver);
  15229. }
  15230. default: return nullptr;
  15231. }
  15232. }
  15233. inline flatbuffers::Offset<void> QuantizationDetailsUnion::Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher) const {
  15234. switch (type) {
  15235. case QuantizationDetails_CustomQuantization: {
  15236. auto ptr = reinterpret_cast<const tflite::CustomQuantizationT *>(value);
  15237. return CreateCustomQuantization(_fbb, ptr, _rehasher).Union();
  15238. }
  15239. default: return 0;
  15240. }
  15241. }
  15242. inline QuantizationDetailsUnion::QuantizationDetailsUnion(const QuantizationDetailsUnion &u) : type(u.type), value(nullptr) {
  15243. switch (type) {
  15244. case QuantizationDetails_CustomQuantization: {
  15245. value = new tflite::CustomQuantizationT(*reinterpret_cast<tflite::CustomQuantizationT *>(u.value));
  15246. break;
  15247. }
  15248. default:
  15249. break;
  15250. }
  15251. }
  15252. inline void QuantizationDetailsUnion::Reset() {
  15253. switch (type) {
  15254. case QuantizationDetails_CustomQuantization: {
  15255. auto ptr = reinterpret_cast<tflite::CustomQuantizationT *>(value);
  15256. delete ptr;
  15257. break;
  15258. }
  15259. default: break;
  15260. }
  15261. value = nullptr;
  15262. type = QuantizationDetails_NONE;
  15263. }
  15264. inline bool VerifySparseIndexVector(flatbuffers::Verifier &verifier, const void *obj, SparseIndexVector type) {
  15265. switch (type) {
  15266. case SparseIndexVector_NONE: {
  15267. return true;
  15268. }
  15269. case SparseIndexVector_Int32Vector: {
  15270. auto ptr = reinterpret_cast<const tflite::Int32Vector *>(obj);
  15271. return verifier.VerifyTable(ptr);
  15272. }
  15273. case SparseIndexVector_Uint16Vector: {
  15274. auto ptr = reinterpret_cast<const tflite::Uint16Vector *>(obj);
  15275. return verifier.VerifyTable(ptr);
  15276. }
  15277. case SparseIndexVector_Uint8Vector: {
  15278. auto ptr = reinterpret_cast<const tflite::Uint8Vector *>(obj);
  15279. return verifier.VerifyTable(ptr);
  15280. }
  15281. default: return true;
  15282. }
  15283. }
  15284. inline bool VerifySparseIndexVectorVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types) {
  15285. if (!values || !types) return !values && !types;
  15286. if (values->size() != types->size()) return false;
  15287. for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
  15288. if (!VerifySparseIndexVector(
  15289. verifier, values->Get(i), types->GetEnum<SparseIndexVector>(i))) {
  15290. return false;
  15291. }
  15292. }
  15293. return true;
  15294. }
  15295. inline void *SparseIndexVectorUnion::UnPack(const void *obj, SparseIndexVector type, const flatbuffers::resolver_function_t *resolver) {
  15296. switch (type) {
  15297. case SparseIndexVector_Int32Vector: {
  15298. auto ptr = reinterpret_cast<const tflite::Int32Vector *>(obj);
  15299. return ptr->UnPack(resolver);
  15300. }
  15301. case SparseIndexVector_Uint16Vector: {
  15302. auto ptr = reinterpret_cast<const tflite::Uint16Vector *>(obj);
  15303. return ptr->UnPack(resolver);
  15304. }
  15305. case SparseIndexVector_Uint8Vector: {
  15306. auto ptr = reinterpret_cast<const tflite::Uint8Vector *>(obj);
  15307. return ptr->UnPack(resolver);
  15308. }
  15309. default: return nullptr;
  15310. }
  15311. }
  15312. inline flatbuffers::Offset<void> SparseIndexVectorUnion::Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher) const {
  15313. switch (type) {
  15314. case SparseIndexVector_Int32Vector: {
  15315. auto ptr = reinterpret_cast<const tflite::Int32VectorT *>(value);
  15316. return CreateInt32Vector(_fbb, ptr, _rehasher).Union();
  15317. }
  15318. case SparseIndexVector_Uint16Vector: {
  15319. auto ptr = reinterpret_cast<const tflite::Uint16VectorT *>(value);
  15320. return CreateUint16Vector(_fbb, ptr, _rehasher).Union();
  15321. }
  15322. case SparseIndexVector_Uint8Vector: {
  15323. auto ptr = reinterpret_cast<const tflite::Uint8VectorT *>(value);
  15324. return CreateUint8Vector(_fbb, ptr, _rehasher).Union();
  15325. }
  15326. default: return 0;
  15327. }
  15328. }
  15329. inline SparseIndexVectorUnion::SparseIndexVectorUnion(const SparseIndexVectorUnion &u) : type(u.type), value(nullptr) {
  15330. switch (type) {
  15331. case SparseIndexVector_Int32Vector: {
  15332. value = new tflite::Int32VectorT(*reinterpret_cast<tflite::Int32VectorT *>(u.value));
  15333. break;
  15334. }
  15335. case SparseIndexVector_Uint16Vector: {
  15336. value = new tflite::Uint16VectorT(*reinterpret_cast<tflite::Uint16VectorT *>(u.value));
  15337. break;
  15338. }
  15339. case SparseIndexVector_Uint8Vector: {
  15340. value = new tflite::Uint8VectorT(*reinterpret_cast<tflite::Uint8VectorT *>(u.value));
  15341. break;
  15342. }
  15343. default:
  15344. break;
  15345. }
  15346. }
  15347. inline void SparseIndexVectorUnion::Reset() {
  15348. switch (type) {
  15349. case SparseIndexVector_Int32Vector: {
  15350. auto ptr = reinterpret_cast<tflite::Int32VectorT *>(value);
  15351. delete ptr;
  15352. break;
  15353. }
  15354. case SparseIndexVector_Uint16Vector: {
  15355. auto ptr = reinterpret_cast<tflite::Uint16VectorT *>(value);
  15356. delete ptr;
  15357. break;
  15358. }
  15359. case SparseIndexVector_Uint8Vector: {
  15360. auto ptr = reinterpret_cast<tflite::Uint8VectorT *>(value);
  15361. delete ptr;
  15362. break;
  15363. }
  15364. default: break;
  15365. }
  15366. value = nullptr;
  15367. type = SparseIndexVector_NONE;
  15368. }
  15369. inline bool VerifyBuiltinOptions(flatbuffers::Verifier &verifier, const void *obj, BuiltinOptions type) {
  15370. switch (type) {
  15371. case BuiltinOptions_NONE: {
  15372. return true;
  15373. }
  15374. case BuiltinOptions_Conv2DOptions: {
  15375. auto ptr = reinterpret_cast<const tflite::Conv2DOptions *>(obj);
  15376. return verifier.VerifyTable(ptr);
  15377. }
  15378. case BuiltinOptions_DepthwiseConv2DOptions: {
  15379. auto ptr = reinterpret_cast<const tflite::DepthwiseConv2DOptions *>(obj);
  15380. return verifier.VerifyTable(ptr);
  15381. }
  15382. case BuiltinOptions_ConcatEmbeddingsOptions: {
  15383. auto ptr = reinterpret_cast<const tflite::ConcatEmbeddingsOptions *>(obj);
  15384. return verifier.VerifyTable(ptr);
  15385. }
  15386. case BuiltinOptions_LSHProjectionOptions: {
  15387. auto ptr = reinterpret_cast<const tflite::LSHProjectionOptions *>(obj);
  15388. return verifier.VerifyTable(ptr);
  15389. }
  15390. case BuiltinOptions_Pool2DOptions: {
  15391. auto ptr = reinterpret_cast<const tflite::Pool2DOptions *>(obj);
  15392. return verifier.VerifyTable(ptr);
  15393. }
  15394. case BuiltinOptions_SVDFOptions: {
  15395. auto ptr = reinterpret_cast<const tflite::SVDFOptions *>(obj);
  15396. return verifier.VerifyTable(ptr);
  15397. }
  15398. case BuiltinOptions_RNNOptions: {
  15399. auto ptr = reinterpret_cast<const tflite::RNNOptions *>(obj);
  15400. return verifier.VerifyTable(ptr);
  15401. }
  15402. case BuiltinOptions_FullyConnectedOptions: {
  15403. auto ptr = reinterpret_cast<const tflite::FullyConnectedOptions *>(obj);
  15404. return verifier.VerifyTable(ptr);
  15405. }
  15406. case BuiltinOptions_SoftmaxOptions: {
  15407. auto ptr = reinterpret_cast<const tflite::SoftmaxOptions *>(obj);
  15408. return verifier.VerifyTable(ptr);
  15409. }
  15410. case BuiltinOptions_ConcatenationOptions: {
  15411. auto ptr = reinterpret_cast<const tflite::ConcatenationOptions *>(obj);
  15412. return verifier.VerifyTable(ptr);
  15413. }
  15414. case BuiltinOptions_AddOptions: {
  15415. auto ptr = reinterpret_cast<const tflite::AddOptions *>(obj);
  15416. return verifier.VerifyTable(ptr);
  15417. }
  15418. case BuiltinOptions_L2NormOptions: {
  15419. auto ptr = reinterpret_cast<const tflite::L2NormOptions *>(obj);
  15420. return verifier.VerifyTable(ptr);
  15421. }
  15422. case BuiltinOptions_LocalResponseNormalizationOptions: {
  15423. auto ptr = reinterpret_cast<const tflite::LocalResponseNormalizationOptions *>(obj);
  15424. return verifier.VerifyTable(ptr);
  15425. }
  15426. case BuiltinOptions_LSTMOptions: {
  15427. auto ptr = reinterpret_cast<const tflite::LSTMOptions *>(obj);
  15428. return verifier.VerifyTable(ptr);
  15429. }
  15430. case BuiltinOptions_ResizeBilinearOptions: {
  15431. auto ptr = reinterpret_cast<const tflite::ResizeBilinearOptions *>(obj);
  15432. return verifier.VerifyTable(ptr);
  15433. }
  15434. case BuiltinOptions_CallOptions: {
  15435. auto ptr = reinterpret_cast<const tflite::CallOptions *>(obj);
  15436. return verifier.VerifyTable(ptr);
  15437. }
  15438. case BuiltinOptions_ReshapeOptions: {
  15439. auto ptr = reinterpret_cast<const tflite::ReshapeOptions *>(obj);
  15440. return verifier.VerifyTable(ptr);
  15441. }
  15442. case BuiltinOptions_SkipGramOptions: {
  15443. auto ptr = reinterpret_cast<const tflite::SkipGramOptions *>(obj);
  15444. return verifier.VerifyTable(ptr);
  15445. }
  15446. case BuiltinOptions_SpaceToDepthOptions: {
  15447. auto ptr = reinterpret_cast<const tflite::SpaceToDepthOptions *>(obj);
  15448. return verifier.VerifyTable(ptr);
  15449. }
  15450. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  15451. auto ptr = reinterpret_cast<const tflite::EmbeddingLookupSparseOptions *>(obj);
  15452. return verifier.VerifyTable(ptr);
  15453. }
  15454. case BuiltinOptions_MulOptions: {
  15455. auto ptr = reinterpret_cast<const tflite::MulOptions *>(obj);
  15456. return verifier.VerifyTable(ptr);
  15457. }
  15458. case BuiltinOptions_PadOptions: {
  15459. auto ptr = reinterpret_cast<const tflite::PadOptions *>(obj);
  15460. return verifier.VerifyTable(ptr);
  15461. }
  15462. case BuiltinOptions_GatherOptions: {
  15463. auto ptr = reinterpret_cast<const tflite::GatherOptions *>(obj);
  15464. return verifier.VerifyTable(ptr);
  15465. }
  15466. case BuiltinOptions_BatchToSpaceNDOptions: {
  15467. auto ptr = reinterpret_cast<const tflite::BatchToSpaceNDOptions *>(obj);
  15468. return verifier.VerifyTable(ptr);
  15469. }
  15470. case BuiltinOptions_SpaceToBatchNDOptions: {
  15471. auto ptr = reinterpret_cast<const tflite::SpaceToBatchNDOptions *>(obj);
  15472. return verifier.VerifyTable(ptr);
  15473. }
  15474. case BuiltinOptions_TransposeOptions: {
  15475. auto ptr = reinterpret_cast<const tflite::TransposeOptions *>(obj);
  15476. return verifier.VerifyTable(ptr);
  15477. }
  15478. case BuiltinOptions_ReducerOptions: {
  15479. auto ptr = reinterpret_cast<const tflite::ReducerOptions *>(obj);
  15480. return verifier.VerifyTable(ptr);
  15481. }
  15482. case BuiltinOptions_SubOptions: {
  15483. auto ptr = reinterpret_cast<const tflite::SubOptions *>(obj);
  15484. return verifier.VerifyTable(ptr);
  15485. }
  15486. case BuiltinOptions_DivOptions: {
  15487. auto ptr = reinterpret_cast<const tflite::DivOptions *>(obj);
  15488. return verifier.VerifyTable(ptr);
  15489. }
  15490. case BuiltinOptions_SqueezeOptions: {
  15491. auto ptr = reinterpret_cast<const tflite::SqueezeOptions *>(obj);
  15492. return verifier.VerifyTable(ptr);
  15493. }
  15494. case BuiltinOptions_SequenceRNNOptions: {
  15495. auto ptr = reinterpret_cast<const tflite::SequenceRNNOptions *>(obj);
  15496. return verifier.VerifyTable(ptr);
  15497. }
  15498. case BuiltinOptions_StridedSliceOptions: {
  15499. auto ptr = reinterpret_cast<const tflite::StridedSliceOptions *>(obj);
  15500. return verifier.VerifyTable(ptr);
  15501. }
  15502. case BuiltinOptions_ExpOptions: {
  15503. auto ptr = reinterpret_cast<const tflite::ExpOptions *>(obj);
  15504. return verifier.VerifyTable(ptr);
  15505. }
  15506. case BuiltinOptions_TopKV2Options: {
  15507. auto ptr = reinterpret_cast<const tflite::TopKV2Options *>(obj);
  15508. return verifier.VerifyTable(ptr);
  15509. }
  15510. case BuiltinOptions_SplitOptions: {
  15511. auto ptr = reinterpret_cast<const tflite::SplitOptions *>(obj);
  15512. return verifier.VerifyTable(ptr);
  15513. }
  15514. case BuiltinOptions_LogSoftmaxOptions: {
  15515. auto ptr = reinterpret_cast<const tflite::LogSoftmaxOptions *>(obj);
  15516. return verifier.VerifyTable(ptr);
  15517. }
  15518. case BuiltinOptions_CastOptions: {
  15519. auto ptr = reinterpret_cast<const tflite::CastOptions *>(obj);
  15520. return verifier.VerifyTable(ptr);
  15521. }
  15522. case BuiltinOptions_DequantizeOptions: {
  15523. auto ptr = reinterpret_cast<const tflite::DequantizeOptions *>(obj);
  15524. return verifier.VerifyTable(ptr);
  15525. }
  15526. case BuiltinOptions_MaximumMinimumOptions: {
  15527. auto ptr = reinterpret_cast<const tflite::MaximumMinimumOptions *>(obj);
  15528. return verifier.VerifyTable(ptr);
  15529. }
  15530. case BuiltinOptions_ArgMaxOptions: {
  15531. auto ptr = reinterpret_cast<const tflite::ArgMaxOptions *>(obj);
  15532. return verifier.VerifyTable(ptr);
  15533. }
  15534. case BuiltinOptions_LessOptions: {
  15535. auto ptr = reinterpret_cast<const tflite::LessOptions *>(obj);
  15536. return verifier.VerifyTable(ptr);
  15537. }
  15538. case BuiltinOptions_NegOptions: {
  15539. auto ptr = reinterpret_cast<const tflite::NegOptions *>(obj);
  15540. return verifier.VerifyTable(ptr);
  15541. }
  15542. case BuiltinOptions_PadV2Options: {
  15543. auto ptr = reinterpret_cast<const tflite::PadV2Options *>(obj);
  15544. return verifier.VerifyTable(ptr);
  15545. }
  15546. case BuiltinOptions_GreaterOptions: {
  15547. auto ptr = reinterpret_cast<const tflite::GreaterOptions *>(obj);
  15548. return verifier.VerifyTable(ptr);
  15549. }
  15550. case BuiltinOptions_GreaterEqualOptions: {
  15551. auto ptr = reinterpret_cast<const tflite::GreaterEqualOptions *>(obj);
  15552. return verifier.VerifyTable(ptr);
  15553. }
  15554. case BuiltinOptions_LessEqualOptions: {
  15555. auto ptr = reinterpret_cast<const tflite::LessEqualOptions *>(obj);
  15556. return verifier.VerifyTable(ptr);
  15557. }
  15558. case BuiltinOptions_SelectOptions: {
  15559. auto ptr = reinterpret_cast<const tflite::SelectOptions *>(obj);
  15560. return verifier.VerifyTable(ptr);
  15561. }
  15562. case BuiltinOptions_SliceOptions: {
  15563. auto ptr = reinterpret_cast<const tflite::SliceOptions *>(obj);
  15564. return verifier.VerifyTable(ptr);
  15565. }
  15566. case BuiltinOptions_TransposeConvOptions: {
  15567. auto ptr = reinterpret_cast<const tflite::TransposeConvOptions *>(obj);
  15568. return verifier.VerifyTable(ptr);
  15569. }
  15570. case BuiltinOptions_SparseToDenseOptions: {
  15571. auto ptr = reinterpret_cast<const tflite::SparseToDenseOptions *>(obj);
  15572. return verifier.VerifyTable(ptr);
  15573. }
  15574. case BuiltinOptions_TileOptions: {
  15575. auto ptr = reinterpret_cast<const tflite::TileOptions *>(obj);
  15576. return verifier.VerifyTable(ptr);
  15577. }
  15578. case BuiltinOptions_ExpandDimsOptions: {
  15579. auto ptr = reinterpret_cast<const tflite::ExpandDimsOptions *>(obj);
  15580. return verifier.VerifyTable(ptr);
  15581. }
  15582. case BuiltinOptions_EqualOptions: {
  15583. auto ptr = reinterpret_cast<const tflite::EqualOptions *>(obj);
  15584. return verifier.VerifyTable(ptr);
  15585. }
  15586. case BuiltinOptions_NotEqualOptions: {
  15587. auto ptr = reinterpret_cast<const tflite::NotEqualOptions *>(obj);
  15588. return verifier.VerifyTable(ptr);
  15589. }
  15590. case BuiltinOptions_ShapeOptions: {
  15591. auto ptr = reinterpret_cast<const tflite::ShapeOptions *>(obj);
  15592. return verifier.VerifyTable(ptr);
  15593. }
  15594. case BuiltinOptions_PowOptions: {
  15595. auto ptr = reinterpret_cast<const tflite::PowOptions *>(obj);
  15596. return verifier.VerifyTable(ptr);
  15597. }
  15598. case BuiltinOptions_ArgMinOptions: {
  15599. auto ptr = reinterpret_cast<const tflite::ArgMinOptions *>(obj);
  15600. return verifier.VerifyTable(ptr);
  15601. }
  15602. case BuiltinOptions_FakeQuantOptions: {
  15603. auto ptr = reinterpret_cast<const tflite::FakeQuantOptions *>(obj);
  15604. return verifier.VerifyTable(ptr);
  15605. }
  15606. case BuiltinOptions_PackOptions: {
  15607. auto ptr = reinterpret_cast<const tflite::PackOptions *>(obj);
  15608. return verifier.VerifyTable(ptr);
  15609. }
  15610. case BuiltinOptions_LogicalOrOptions: {
  15611. auto ptr = reinterpret_cast<const tflite::LogicalOrOptions *>(obj);
  15612. return verifier.VerifyTable(ptr);
  15613. }
  15614. case BuiltinOptions_OneHotOptions: {
  15615. auto ptr = reinterpret_cast<const tflite::OneHotOptions *>(obj);
  15616. return verifier.VerifyTable(ptr);
  15617. }
  15618. case BuiltinOptions_LogicalAndOptions: {
  15619. auto ptr = reinterpret_cast<const tflite::LogicalAndOptions *>(obj);
  15620. return verifier.VerifyTable(ptr);
  15621. }
  15622. case BuiltinOptions_LogicalNotOptions: {
  15623. auto ptr = reinterpret_cast<const tflite::LogicalNotOptions *>(obj);
  15624. return verifier.VerifyTable(ptr);
  15625. }
  15626. case BuiltinOptions_UnpackOptions: {
  15627. auto ptr = reinterpret_cast<const tflite::UnpackOptions *>(obj);
  15628. return verifier.VerifyTable(ptr);
  15629. }
  15630. case BuiltinOptions_FloorDivOptions: {
  15631. auto ptr = reinterpret_cast<const tflite::FloorDivOptions *>(obj);
  15632. return verifier.VerifyTable(ptr);
  15633. }
  15634. case BuiltinOptions_SquareOptions: {
  15635. auto ptr = reinterpret_cast<const tflite::SquareOptions *>(obj);
  15636. return verifier.VerifyTable(ptr);
  15637. }
  15638. case BuiltinOptions_ZerosLikeOptions: {
  15639. auto ptr = reinterpret_cast<const tflite::ZerosLikeOptions *>(obj);
  15640. return verifier.VerifyTable(ptr);
  15641. }
  15642. case BuiltinOptions_FillOptions: {
  15643. auto ptr = reinterpret_cast<const tflite::FillOptions *>(obj);
  15644. return verifier.VerifyTable(ptr);
  15645. }
  15646. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  15647. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptions *>(obj);
  15648. return verifier.VerifyTable(ptr);
  15649. }
  15650. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  15651. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceRNNOptions *>(obj);
  15652. return verifier.VerifyTable(ptr);
  15653. }
  15654. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  15655. auto ptr = reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptions *>(obj);
  15656. return verifier.VerifyTable(ptr);
  15657. }
  15658. case BuiltinOptions_FloorModOptions: {
  15659. auto ptr = reinterpret_cast<const tflite::FloorModOptions *>(obj);
  15660. return verifier.VerifyTable(ptr);
  15661. }
  15662. case BuiltinOptions_RangeOptions: {
  15663. auto ptr = reinterpret_cast<const tflite::RangeOptions *>(obj);
  15664. return verifier.VerifyTable(ptr);
  15665. }
  15666. case BuiltinOptions_ResizeNearestNeighborOptions: {
  15667. auto ptr = reinterpret_cast<const tflite::ResizeNearestNeighborOptions *>(obj);
  15668. return verifier.VerifyTable(ptr);
  15669. }
  15670. case BuiltinOptions_LeakyReluOptions: {
  15671. auto ptr = reinterpret_cast<const tflite::LeakyReluOptions *>(obj);
  15672. return verifier.VerifyTable(ptr);
  15673. }
  15674. case BuiltinOptions_SquaredDifferenceOptions: {
  15675. auto ptr = reinterpret_cast<const tflite::SquaredDifferenceOptions *>(obj);
  15676. return verifier.VerifyTable(ptr);
  15677. }
  15678. case BuiltinOptions_MirrorPadOptions: {
  15679. auto ptr = reinterpret_cast<const tflite::MirrorPadOptions *>(obj);
  15680. return verifier.VerifyTable(ptr);
  15681. }
  15682. case BuiltinOptions_AbsOptions: {
  15683. auto ptr = reinterpret_cast<const tflite::AbsOptions *>(obj);
  15684. return verifier.VerifyTable(ptr);
  15685. }
  15686. case BuiltinOptions_SplitVOptions: {
  15687. auto ptr = reinterpret_cast<const tflite::SplitVOptions *>(obj);
  15688. return verifier.VerifyTable(ptr);
  15689. }
  15690. case BuiltinOptions_UniqueOptions: {
  15691. auto ptr = reinterpret_cast<const tflite::UniqueOptions *>(obj);
  15692. return verifier.VerifyTable(ptr);
  15693. }
  15694. case BuiltinOptions_ReverseV2Options: {
  15695. auto ptr = reinterpret_cast<const tflite::ReverseV2Options *>(obj);
  15696. return verifier.VerifyTable(ptr);
  15697. }
  15698. case BuiltinOptions_AddNOptions: {
  15699. auto ptr = reinterpret_cast<const tflite::AddNOptions *>(obj);
  15700. return verifier.VerifyTable(ptr);
  15701. }
  15702. case BuiltinOptions_GatherNdOptions: {
  15703. auto ptr = reinterpret_cast<const tflite::GatherNdOptions *>(obj);
  15704. return verifier.VerifyTable(ptr);
  15705. }
  15706. case BuiltinOptions_CosOptions: {
  15707. auto ptr = reinterpret_cast<const tflite::CosOptions *>(obj);
  15708. return verifier.VerifyTable(ptr);
  15709. }
  15710. case BuiltinOptions_WhereOptions: {
  15711. auto ptr = reinterpret_cast<const tflite::WhereOptions *>(obj);
  15712. return verifier.VerifyTable(ptr);
  15713. }
  15714. case BuiltinOptions_RankOptions: {
  15715. auto ptr = reinterpret_cast<const tflite::RankOptions *>(obj);
  15716. return verifier.VerifyTable(ptr);
  15717. }
  15718. case BuiltinOptions_ReverseSequenceOptions: {
  15719. auto ptr = reinterpret_cast<const tflite::ReverseSequenceOptions *>(obj);
  15720. return verifier.VerifyTable(ptr);
  15721. }
  15722. case BuiltinOptions_MatrixDiagOptions: {
  15723. auto ptr = reinterpret_cast<const tflite::MatrixDiagOptions *>(obj);
  15724. return verifier.VerifyTable(ptr);
  15725. }
  15726. case BuiltinOptions_QuantizeOptions: {
  15727. auto ptr = reinterpret_cast<const tflite::QuantizeOptions *>(obj);
  15728. return verifier.VerifyTable(ptr);
  15729. }
  15730. case BuiltinOptions_MatrixSetDiagOptions: {
  15731. auto ptr = reinterpret_cast<const tflite::MatrixSetDiagOptions *>(obj);
  15732. return verifier.VerifyTable(ptr);
  15733. }
  15734. case BuiltinOptions_HardSwishOptions: {
  15735. auto ptr = reinterpret_cast<const tflite::HardSwishOptions *>(obj);
  15736. return verifier.VerifyTable(ptr);
  15737. }
  15738. case BuiltinOptions_IfOptions: {
  15739. auto ptr = reinterpret_cast<const tflite::IfOptions *>(obj);
  15740. return verifier.VerifyTable(ptr);
  15741. }
  15742. case BuiltinOptions_WhileOptions: {
  15743. auto ptr = reinterpret_cast<const tflite::WhileOptions *>(obj);
  15744. return verifier.VerifyTable(ptr);
  15745. }
  15746. case BuiltinOptions_DepthToSpaceOptions: {
  15747. auto ptr = reinterpret_cast<const tflite::DepthToSpaceOptions *>(obj);
  15748. return verifier.VerifyTable(ptr);
  15749. }
  15750. case BuiltinOptions_NonMaxSuppressionV4Options: {
  15751. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV4Options *>(obj);
  15752. return verifier.VerifyTable(ptr);
  15753. }
  15754. case BuiltinOptions_NonMaxSuppressionV5Options: {
  15755. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV5Options *>(obj);
  15756. return verifier.VerifyTable(ptr);
  15757. }
  15758. case BuiltinOptions_ScatterNdOptions: {
  15759. auto ptr = reinterpret_cast<const tflite::ScatterNdOptions *>(obj);
  15760. return verifier.VerifyTable(ptr);
  15761. }
  15762. case BuiltinOptions_SelectV2Options: {
  15763. auto ptr = reinterpret_cast<const tflite::SelectV2Options *>(obj);
  15764. return verifier.VerifyTable(ptr);
  15765. }
  15766. case BuiltinOptions_DensifyOptions: {
  15767. auto ptr = reinterpret_cast<const tflite::DensifyOptions *>(obj);
  15768. return verifier.VerifyTable(ptr);
  15769. }
  15770. case BuiltinOptions_SegmentSumOptions: {
  15771. auto ptr = reinterpret_cast<const tflite::SegmentSumOptions *>(obj);
  15772. return verifier.VerifyTable(ptr);
  15773. }
  15774. case BuiltinOptions_BatchMatMulOptions: {
  15775. auto ptr = reinterpret_cast<const tflite::BatchMatMulOptions *>(obj);
  15776. return verifier.VerifyTable(ptr);
  15777. }
  15778. case BuiltinOptions_CumsumOptions: {
  15779. auto ptr = reinterpret_cast<const tflite::CumsumOptions *>(obj);
  15780. return verifier.VerifyTable(ptr);
  15781. }
  15782. case BuiltinOptions_CallOnceOptions: {
  15783. auto ptr = reinterpret_cast<const tflite::CallOnceOptions *>(obj);
  15784. return verifier.VerifyTable(ptr);
  15785. }
  15786. case BuiltinOptions_BroadcastToOptions: {
  15787. auto ptr = reinterpret_cast<const tflite::BroadcastToOptions *>(obj);
  15788. return verifier.VerifyTable(ptr);
  15789. }
  15790. case BuiltinOptions_Rfft2dOptions: {
  15791. auto ptr = reinterpret_cast<const tflite::Rfft2dOptions *>(obj);
  15792. return verifier.VerifyTable(ptr);
  15793. }
  15794. case BuiltinOptions_Conv3DOptions: {
  15795. auto ptr = reinterpret_cast<const tflite::Conv3DOptions *>(obj);
  15796. return verifier.VerifyTable(ptr);
  15797. }
  15798. case BuiltinOptions_HashtableOptions: {
  15799. auto ptr = reinterpret_cast<const tflite::HashtableOptions *>(obj);
  15800. return verifier.VerifyTable(ptr);
  15801. }
  15802. case BuiltinOptions_HashtableFindOptions: {
  15803. auto ptr = reinterpret_cast<const tflite::HashtableFindOptions *>(obj);
  15804. return verifier.VerifyTable(ptr);
  15805. }
  15806. case BuiltinOptions_HashtableImportOptions: {
  15807. auto ptr = reinterpret_cast<const tflite::HashtableImportOptions *>(obj);
  15808. return verifier.VerifyTable(ptr);
  15809. }
  15810. case BuiltinOptions_HashtableSizeOptions: {
  15811. auto ptr = reinterpret_cast<const tflite::HashtableSizeOptions *>(obj);
  15812. return verifier.VerifyTable(ptr);
  15813. }
  15814. case BuiltinOptions_VarHandleOptions: {
  15815. auto ptr = reinterpret_cast<const tflite::VarHandleOptions *>(obj);
  15816. return verifier.VerifyTable(ptr);
  15817. }
  15818. case BuiltinOptions_ReadVariableOptions: {
  15819. auto ptr = reinterpret_cast<const tflite::ReadVariableOptions *>(obj);
  15820. return verifier.VerifyTable(ptr);
  15821. }
  15822. case BuiltinOptions_AssignVariableOptions: {
  15823. auto ptr = reinterpret_cast<const tflite::AssignVariableOptions *>(obj);
  15824. return verifier.VerifyTable(ptr);
  15825. }
  15826. case BuiltinOptions_RandomOptions: {
  15827. auto ptr = reinterpret_cast<const tflite::RandomOptions *>(obj);
  15828. return verifier.VerifyTable(ptr);
  15829. }
  15830. case BuiltinOptions_BucketizeOptions: {
  15831. auto ptr = reinterpret_cast<const tflite::BucketizeOptions *>(obj);
  15832. return verifier.VerifyTable(ptr);
  15833. }
  15834. case BuiltinOptions_GeluOptions: {
  15835. auto ptr = reinterpret_cast<const tflite::GeluOptions *>(obj);
  15836. return verifier.VerifyTable(ptr);
  15837. }
  15838. case BuiltinOptions_DynamicUpdateSliceOptions: {
  15839. auto ptr = reinterpret_cast<const tflite::DynamicUpdateSliceOptions *>(obj);
  15840. return verifier.VerifyTable(ptr);
  15841. }
  15842. case BuiltinOptions_UnsortedSegmentProdOptions: {
  15843. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentProdOptions *>(obj);
  15844. return verifier.VerifyTable(ptr);
  15845. }
  15846. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  15847. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMaxOptions *>(obj);
  15848. return verifier.VerifyTable(ptr);
  15849. }
  15850. case BuiltinOptions_UnsortedSegmentMinOptions: {
  15851. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMinOptions *>(obj);
  15852. return verifier.VerifyTable(ptr);
  15853. }
  15854. case BuiltinOptions_UnsortedSegmentSumOptions: {
  15855. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentSumOptions *>(obj);
  15856. return verifier.VerifyTable(ptr);
  15857. }
  15858. case BuiltinOptions_ATan2Options: {
  15859. auto ptr = reinterpret_cast<const tflite::ATan2Options *>(obj);
  15860. return verifier.VerifyTable(ptr);
  15861. }
  15862. default: return true;
  15863. }
  15864. }
  15865. inline bool VerifyBuiltinOptionsVector(flatbuffers::Verifier &verifier, const flatbuffers::Vector<flatbuffers::Offset<void>> *values, const flatbuffers::Vector<uint8_t> *types) {
  15866. if (!values || !types) return !values && !types;
  15867. if (values->size() != types->size()) return false;
  15868. for (flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
  15869. if (!VerifyBuiltinOptions(
  15870. verifier, values->Get(i), types->GetEnum<BuiltinOptions>(i))) {
  15871. return false;
  15872. }
  15873. }
  15874. return true;
  15875. }
  15876. inline void *BuiltinOptionsUnion::UnPack(const void *obj, BuiltinOptions type, const flatbuffers::resolver_function_t *resolver) {
  15877. switch (type) {
  15878. case BuiltinOptions_Conv2DOptions: {
  15879. auto ptr = reinterpret_cast<const tflite::Conv2DOptions *>(obj);
  15880. return ptr->UnPack(resolver);
  15881. }
  15882. case BuiltinOptions_DepthwiseConv2DOptions: {
  15883. auto ptr = reinterpret_cast<const tflite::DepthwiseConv2DOptions *>(obj);
  15884. return ptr->UnPack(resolver);
  15885. }
  15886. case BuiltinOptions_ConcatEmbeddingsOptions: {
  15887. auto ptr = reinterpret_cast<const tflite::ConcatEmbeddingsOptions *>(obj);
  15888. return ptr->UnPack(resolver);
  15889. }
  15890. case BuiltinOptions_LSHProjectionOptions: {
  15891. auto ptr = reinterpret_cast<const tflite::LSHProjectionOptions *>(obj);
  15892. return ptr->UnPack(resolver);
  15893. }
  15894. case BuiltinOptions_Pool2DOptions: {
  15895. auto ptr = reinterpret_cast<const tflite::Pool2DOptions *>(obj);
  15896. return ptr->UnPack(resolver);
  15897. }
  15898. case BuiltinOptions_SVDFOptions: {
  15899. auto ptr = reinterpret_cast<const tflite::SVDFOptions *>(obj);
  15900. return ptr->UnPack(resolver);
  15901. }
  15902. case BuiltinOptions_RNNOptions: {
  15903. auto ptr = reinterpret_cast<const tflite::RNNOptions *>(obj);
  15904. return ptr->UnPack(resolver);
  15905. }
  15906. case BuiltinOptions_FullyConnectedOptions: {
  15907. auto ptr = reinterpret_cast<const tflite::FullyConnectedOptions *>(obj);
  15908. return ptr->UnPack(resolver);
  15909. }
  15910. case BuiltinOptions_SoftmaxOptions: {
  15911. auto ptr = reinterpret_cast<const tflite::SoftmaxOptions *>(obj);
  15912. return ptr->UnPack(resolver);
  15913. }
  15914. case BuiltinOptions_ConcatenationOptions: {
  15915. auto ptr = reinterpret_cast<const tflite::ConcatenationOptions *>(obj);
  15916. return ptr->UnPack(resolver);
  15917. }
  15918. case BuiltinOptions_AddOptions: {
  15919. auto ptr = reinterpret_cast<const tflite::AddOptions *>(obj);
  15920. return ptr->UnPack(resolver);
  15921. }
  15922. case BuiltinOptions_L2NormOptions: {
  15923. auto ptr = reinterpret_cast<const tflite::L2NormOptions *>(obj);
  15924. return ptr->UnPack(resolver);
  15925. }
  15926. case BuiltinOptions_LocalResponseNormalizationOptions: {
  15927. auto ptr = reinterpret_cast<const tflite::LocalResponseNormalizationOptions *>(obj);
  15928. return ptr->UnPack(resolver);
  15929. }
  15930. case BuiltinOptions_LSTMOptions: {
  15931. auto ptr = reinterpret_cast<const tflite::LSTMOptions *>(obj);
  15932. return ptr->UnPack(resolver);
  15933. }
  15934. case BuiltinOptions_ResizeBilinearOptions: {
  15935. auto ptr = reinterpret_cast<const tflite::ResizeBilinearOptions *>(obj);
  15936. return ptr->UnPack(resolver);
  15937. }
  15938. case BuiltinOptions_CallOptions: {
  15939. auto ptr = reinterpret_cast<const tflite::CallOptions *>(obj);
  15940. return ptr->UnPack(resolver);
  15941. }
  15942. case BuiltinOptions_ReshapeOptions: {
  15943. auto ptr = reinterpret_cast<const tflite::ReshapeOptions *>(obj);
  15944. return ptr->UnPack(resolver);
  15945. }
  15946. case BuiltinOptions_SkipGramOptions: {
  15947. auto ptr = reinterpret_cast<const tflite::SkipGramOptions *>(obj);
  15948. return ptr->UnPack(resolver);
  15949. }
  15950. case BuiltinOptions_SpaceToDepthOptions: {
  15951. auto ptr = reinterpret_cast<const tflite::SpaceToDepthOptions *>(obj);
  15952. return ptr->UnPack(resolver);
  15953. }
  15954. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  15955. auto ptr = reinterpret_cast<const tflite::EmbeddingLookupSparseOptions *>(obj);
  15956. return ptr->UnPack(resolver);
  15957. }
  15958. case BuiltinOptions_MulOptions: {
  15959. auto ptr = reinterpret_cast<const tflite::MulOptions *>(obj);
  15960. return ptr->UnPack(resolver);
  15961. }
  15962. case BuiltinOptions_PadOptions: {
  15963. auto ptr = reinterpret_cast<const tflite::PadOptions *>(obj);
  15964. return ptr->UnPack(resolver);
  15965. }
  15966. case BuiltinOptions_GatherOptions: {
  15967. auto ptr = reinterpret_cast<const tflite::GatherOptions *>(obj);
  15968. return ptr->UnPack(resolver);
  15969. }
  15970. case BuiltinOptions_BatchToSpaceNDOptions: {
  15971. auto ptr = reinterpret_cast<const tflite::BatchToSpaceNDOptions *>(obj);
  15972. return ptr->UnPack(resolver);
  15973. }
  15974. case BuiltinOptions_SpaceToBatchNDOptions: {
  15975. auto ptr = reinterpret_cast<const tflite::SpaceToBatchNDOptions *>(obj);
  15976. return ptr->UnPack(resolver);
  15977. }
  15978. case BuiltinOptions_TransposeOptions: {
  15979. auto ptr = reinterpret_cast<const tflite::TransposeOptions *>(obj);
  15980. return ptr->UnPack(resolver);
  15981. }
  15982. case BuiltinOptions_ReducerOptions: {
  15983. auto ptr = reinterpret_cast<const tflite::ReducerOptions *>(obj);
  15984. return ptr->UnPack(resolver);
  15985. }
  15986. case BuiltinOptions_SubOptions: {
  15987. auto ptr = reinterpret_cast<const tflite::SubOptions *>(obj);
  15988. return ptr->UnPack(resolver);
  15989. }
  15990. case BuiltinOptions_DivOptions: {
  15991. auto ptr = reinterpret_cast<const tflite::DivOptions *>(obj);
  15992. return ptr->UnPack(resolver);
  15993. }
  15994. case BuiltinOptions_SqueezeOptions: {
  15995. auto ptr = reinterpret_cast<const tflite::SqueezeOptions *>(obj);
  15996. return ptr->UnPack(resolver);
  15997. }
  15998. case BuiltinOptions_SequenceRNNOptions: {
  15999. auto ptr = reinterpret_cast<const tflite::SequenceRNNOptions *>(obj);
  16000. return ptr->UnPack(resolver);
  16001. }
  16002. case BuiltinOptions_StridedSliceOptions: {
  16003. auto ptr = reinterpret_cast<const tflite::StridedSliceOptions *>(obj);
  16004. return ptr->UnPack(resolver);
  16005. }
  16006. case BuiltinOptions_ExpOptions: {
  16007. auto ptr = reinterpret_cast<const tflite::ExpOptions *>(obj);
  16008. return ptr->UnPack(resolver);
  16009. }
  16010. case BuiltinOptions_TopKV2Options: {
  16011. auto ptr = reinterpret_cast<const tflite::TopKV2Options *>(obj);
  16012. return ptr->UnPack(resolver);
  16013. }
  16014. case BuiltinOptions_SplitOptions: {
  16015. auto ptr = reinterpret_cast<const tflite::SplitOptions *>(obj);
  16016. return ptr->UnPack(resolver);
  16017. }
  16018. case BuiltinOptions_LogSoftmaxOptions: {
  16019. auto ptr = reinterpret_cast<const tflite::LogSoftmaxOptions *>(obj);
  16020. return ptr->UnPack(resolver);
  16021. }
  16022. case BuiltinOptions_CastOptions: {
  16023. auto ptr = reinterpret_cast<const tflite::CastOptions *>(obj);
  16024. return ptr->UnPack(resolver);
  16025. }
  16026. case BuiltinOptions_DequantizeOptions: {
  16027. auto ptr = reinterpret_cast<const tflite::DequantizeOptions *>(obj);
  16028. return ptr->UnPack(resolver);
  16029. }
  16030. case BuiltinOptions_MaximumMinimumOptions: {
  16031. auto ptr = reinterpret_cast<const tflite::MaximumMinimumOptions *>(obj);
  16032. return ptr->UnPack(resolver);
  16033. }
  16034. case BuiltinOptions_ArgMaxOptions: {
  16035. auto ptr = reinterpret_cast<const tflite::ArgMaxOptions *>(obj);
  16036. return ptr->UnPack(resolver);
  16037. }
  16038. case BuiltinOptions_LessOptions: {
  16039. auto ptr = reinterpret_cast<const tflite::LessOptions *>(obj);
  16040. return ptr->UnPack(resolver);
  16041. }
  16042. case BuiltinOptions_NegOptions: {
  16043. auto ptr = reinterpret_cast<const tflite::NegOptions *>(obj);
  16044. return ptr->UnPack(resolver);
  16045. }
  16046. case BuiltinOptions_PadV2Options: {
  16047. auto ptr = reinterpret_cast<const tflite::PadV2Options *>(obj);
  16048. return ptr->UnPack(resolver);
  16049. }
  16050. case BuiltinOptions_GreaterOptions: {
  16051. auto ptr = reinterpret_cast<const tflite::GreaterOptions *>(obj);
  16052. return ptr->UnPack(resolver);
  16053. }
  16054. case BuiltinOptions_GreaterEqualOptions: {
  16055. auto ptr = reinterpret_cast<const tflite::GreaterEqualOptions *>(obj);
  16056. return ptr->UnPack(resolver);
  16057. }
  16058. case BuiltinOptions_LessEqualOptions: {
  16059. auto ptr = reinterpret_cast<const tflite::LessEqualOptions *>(obj);
  16060. return ptr->UnPack(resolver);
  16061. }
  16062. case BuiltinOptions_SelectOptions: {
  16063. auto ptr = reinterpret_cast<const tflite::SelectOptions *>(obj);
  16064. return ptr->UnPack(resolver);
  16065. }
  16066. case BuiltinOptions_SliceOptions: {
  16067. auto ptr = reinterpret_cast<const tflite::SliceOptions *>(obj);
  16068. return ptr->UnPack(resolver);
  16069. }
  16070. case BuiltinOptions_TransposeConvOptions: {
  16071. auto ptr = reinterpret_cast<const tflite::TransposeConvOptions *>(obj);
  16072. return ptr->UnPack(resolver);
  16073. }
  16074. case BuiltinOptions_SparseToDenseOptions: {
  16075. auto ptr = reinterpret_cast<const tflite::SparseToDenseOptions *>(obj);
  16076. return ptr->UnPack(resolver);
  16077. }
  16078. case BuiltinOptions_TileOptions: {
  16079. auto ptr = reinterpret_cast<const tflite::TileOptions *>(obj);
  16080. return ptr->UnPack(resolver);
  16081. }
  16082. case BuiltinOptions_ExpandDimsOptions: {
  16083. auto ptr = reinterpret_cast<const tflite::ExpandDimsOptions *>(obj);
  16084. return ptr->UnPack(resolver);
  16085. }
  16086. case BuiltinOptions_EqualOptions: {
  16087. auto ptr = reinterpret_cast<const tflite::EqualOptions *>(obj);
  16088. return ptr->UnPack(resolver);
  16089. }
  16090. case BuiltinOptions_NotEqualOptions: {
  16091. auto ptr = reinterpret_cast<const tflite::NotEqualOptions *>(obj);
  16092. return ptr->UnPack(resolver);
  16093. }
  16094. case BuiltinOptions_ShapeOptions: {
  16095. auto ptr = reinterpret_cast<const tflite::ShapeOptions *>(obj);
  16096. return ptr->UnPack(resolver);
  16097. }
  16098. case BuiltinOptions_PowOptions: {
  16099. auto ptr = reinterpret_cast<const tflite::PowOptions *>(obj);
  16100. return ptr->UnPack(resolver);
  16101. }
  16102. case BuiltinOptions_ArgMinOptions: {
  16103. auto ptr = reinterpret_cast<const tflite::ArgMinOptions *>(obj);
  16104. return ptr->UnPack(resolver);
  16105. }
  16106. case BuiltinOptions_FakeQuantOptions: {
  16107. auto ptr = reinterpret_cast<const tflite::FakeQuantOptions *>(obj);
  16108. return ptr->UnPack(resolver);
  16109. }
  16110. case BuiltinOptions_PackOptions: {
  16111. auto ptr = reinterpret_cast<const tflite::PackOptions *>(obj);
  16112. return ptr->UnPack(resolver);
  16113. }
  16114. case BuiltinOptions_LogicalOrOptions: {
  16115. auto ptr = reinterpret_cast<const tflite::LogicalOrOptions *>(obj);
  16116. return ptr->UnPack(resolver);
  16117. }
  16118. case BuiltinOptions_OneHotOptions: {
  16119. auto ptr = reinterpret_cast<const tflite::OneHotOptions *>(obj);
  16120. return ptr->UnPack(resolver);
  16121. }
  16122. case BuiltinOptions_LogicalAndOptions: {
  16123. auto ptr = reinterpret_cast<const tflite::LogicalAndOptions *>(obj);
  16124. return ptr->UnPack(resolver);
  16125. }
  16126. case BuiltinOptions_LogicalNotOptions: {
  16127. auto ptr = reinterpret_cast<const tflite::LogicalNotOptions *>(obj);
  16128. return ptr->UnPack(resolver);
  16129. }
  16130. case BuiltinOptions_UnpackOptions: {
  16131. auto ptr = reinterpret_cast<const tflite::UnpackOptions *>(obj);
  16132. return ptr->UnPack(resolver);
  16133. }
  16134. case BuiltinOptions_FloorDivOptions: {
  16135. auto ptr = reinterpret_cast<const tflite::FloorDivOptions *>(obj);
  16136. return ptr->UnPack(resolver);
  16137. }
  16138. case BuiltinOptions_SquareOptions: {
  16139. auto ptr = reinterpret_cast<const tflite::SquareOptions *>(obj);
  16140. return ptr->UnPack(resolver);
  16141. }
  16142. case BuiltinOptions_ZerosLikeOptions: {
  16143. auto ptr = reinterpret_cast<const tflite::ZerosLikeOptions *>(obj);
  16144. return ptr->UnPack(resolver);
  16145. }
  16146. case BuiltinOptions_FillOptions: {
  16147. auto ptr = reinterpret_cast<const tflite::FillOptions *>(obj);
  16148. return ptr->UnPack(resolver);
  16149. }
  16150. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  16151. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptions *>(obj);
  16152. return ptr->UnPack(resolver);
  16153. }
  16154. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  16155. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceRNNOptions *>(obj);
  16156. return ptr->UnPack(resolver);
  16157. }
  16158. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  16159. auto ptr = reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptions *>(obj);
  16160. return ptr->UnPack(resolver);
  16161. }
  16162. case BuiltinOptions_FloorModOptions: {
  16163. auto ptr = reinterpret_cast<const tflite::FloorModOptions *>(obj);
  16164. return ptr->UnPack(resolver);
  16165. }
  16166. case BuiltinOptions_RangeOptions: {
  16167. auto ptr = reinterpret_cast<const tflite::RangeOptions *>(obj);
  16168. return ptr->UnPack(resolver);
  16169. }
  16170. case BuiltinOptions_ResizeNearestNeighborOptions: {
  16171. auto ptr = reinterpret_cast<const tflite::ResizeNearestNeighborOptions *>(obj);
  16172. return ptr->UnPack(resolver);
  16173. }
  16174. case BuiltinOptions_LeakyReluOptions: {
  16175. auto ptr = reinterpret_cast<const tflite::LeakyReluOptions *>(obj);
  16176. return ptr->UnPack(resolver);
  16177. }
  16178. case BuiltinOptions_SquaredDifferenceOptions: {
  16179. auto ptr = reinterpret_cast<const tflite::SquaredDifferenceOptions *>(obj);
  16180. return ptr->UnPack(resolver);
  16181. }
  16182. case BuiltinOptions_MirrorPadOptions: {
  16183. auto ptr = reinterpret_cast<const tflite::MirrorPadOptions *>(obj);
  16184. return ptr->UnPack(resolver);
  16185. }
  16186. case BuiltinOptions_AbsOptions: {
  16187. auto ptr = reinterpret_cast<const tflite::AbsOptions *>(obj);
  16188. return ptr->UnPack(resolver);
  16189. }
  16190. case BuiltinOptions_SplitVOptions: {
  16191. auto ptr = reinterpret_cast<const tflite::SplitVOptions *>(obj);
  16192. return ptr->UnPack(resolver);
  16193. }
  16194. case BuiltinOptions_UniqueOptions: {
  16195. auto ptr = reinterpret_cast<const tflite::UniqueOptions *>(obj);
  16196. return ptr->UnPack(resolver);
  16197. }
  16198. case BuiltinOptions_ReverseV2Options: {
  16199. auto ptr = reinterpret_cast<const tflite::ReverseV2Options *>(obj);
  16200. return ptr->UnPack(resolver);
  16201. }
  16202. case BuiltinOptions_AddNOptions: {
  16203. auto ptr = reinterpret_cast<const tflite::AddNOptions *>(obj);
  16204. return ptr->UnPack(resolver);
  16205. }
  16206. case BuiltinOptions_GatherNdOptions: {
  16207. auto ptr = reinterpret_cast<const tflite::GatherNdOptions *>(obj);
  16208. return ptr->UnPack(resolver);
  16209. }
  16210. case BuiltinOptions_CosOptions: {
  16211. auto ptr = reinterpret_cast<const tflite::CosOptions *>(obj);
  16212. return ptr->UnPack(resolver);
  16213. }
  16214. case BuiltinOptions_WhereOptions: {
  16215. auto ptr = reinterpret_cast<const tflite::WhereOptions *>(obj);
  16216. return ptr->UnPack(resolver);
  16217. }
  16218. case BuiltinOptions_RankOptions: {
  16219. auto ptr = reinterpret_cast<const tflite::RankOptions *>(obj);
  16220. return ptr->UnPack(resolver);
  16221. }
  16222. case BuiltinOptions_ReverseSequenceOptions: {
  16223. auto ptr = reinterpret_cast<const tflite::ReverseSequenceOptions *>(obj);
  16224. return ptr->UnPack(resolver);
  16225. }
  16226. case BuiltinOptions_MatrixDiagOptions: {
  16227. auto ptr = reinterpret_cast<const tflite::MatrixDiagOptions *>(obj);
  16228. return ptr->UnPack(resolver);
  16229. }
  16230. case BuiltinOptions_QuantizeOptions: {
  16231. auto ptr = reinterpret_cast<const tflite::QuantizeOptions *>(obj);
  16232. return ptr->UnPack(resolver);
  16233. }
  16234. case BuiltinOptions_MatrixSetDiagOptions: {
  16235. auto ptr = reinterpret_cast<const tflite::MatrixSetDiagOptions *>(obj);
  16236. return ptr->UnPack(resolver);
  16237. }
  16238. case BuiltinOptions_HardSwishOptions: {
  16239. auto ptr = reinterpret_cast<const tflite::HardSwishOptions *>(obj);
  16240. return ptr->UnPack(resolver);
  16241. }
  16242. case BuiltinOptions_IfOptions: {
  16243. auto ptr = reinterpret_cast<const tflite::IfOptions *>(obj);
  16244. return ptr->UnPack(resolver);
  16245. }
  16246. case BuiltinOptions_WhileOptions: {
  16247. auto ptr = reinterpret_cast<const tflite::WhileOptions *>(obj);
  16248. return ptr->UnPack(resolver);
  16249. }
  16250. case BuiltinOptions_DepthToSpaceOptions: {
  16251. auto ptr = reinterpret_cast<const tflite::DepthToSpaceOptions *>(obj);
  16252. return ptr->UnPack(resolver);
  16253. }
  16254. case BuiltinOptions_NonMaxSuppressionV4Options: {
  16255. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV4Options *>(obj);
  16256. return ptr->UnPack(resolver);
  16257. }
  16258. case BuiltinOptions_NonMaxSuppressionV5Options: {
  16259. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV5Options *>(obj);
  16260. return ptr->UnPack(resolver);
  16261. }
  16262. case BuiltinOptions_ScatterNdOptions: {
  16263. auto ptr = reinterpret_cast<const tflite::ScatterNdOptions *>(obj);
  16264. return ptr->UnPack(resolver);
  16265. }
  16266. case BuiltinOptions_SelectV2Options: {
  16267. auto ptr = reinterpret_cast<const tflite::SelectV2Options *>(obj);
  16268. return ptr->UnPack(resolver);
  16269. }
  16270. case BuiltinOptions_DensifyOptions: {
  16271. auto ptr = reinterpret_cast<const tflite::DensifyOptions *>(obj);
  16272. return ptr->UnPack(resolver);
  16273. }
  16274. case BuiltinOptions_SegmentSumOptions: {
  16275. auto ptr = reinterpret_cast<const tflite::SegmentSumOptions *>(obj);
  16276. return ptr->UnPack(resolver);
  16277. }
  16278. case BuiltinOptions_BatchMatMulOptions: {
  16279. auto ptr = reinterpret_cast<const tflite::BatchMatMulOptions *>(obj);
  16280. return ptr->UnPack(resolver);
  16281. }
  16282. case BuiltinOptions_CumsumOptions: {
  16283. auto ptr = reinterpret_cast<const tflite::CumsumOptions *>(obj);
  16284. return ptr->UnPack(resolver);
  16285. }
  16286. case BuiltinOptions_CallOnceOptions: {
  16287. auto ptr = reinterpret_cast<const tflite::CallOnceOptions *>(obj);
  16288. return ptr->UnPack(resolver);
  16289. }
  16290. case BuiltinOptions_BroadcastToOptions: {
  16291. auto ptr = reinterpret_cast<const tflite::BroadcastToOptions *>(obj);
  16292. return ptr->UnPack(resolver);
  16293. }
  16294. case BuiltinOptions_Rfft2dOptions: {
  16295. auto ptr = reinterpret_cast<const tflite::Rfft2dOptions *>(obj);
  16296. return ptr->UnPack(resolver);
  16297. }
  16298. case BuiltinOptions_Conv3DOptions: {
  16299. auto ptr = reinterpret_cast<const tflite::Conv3DOptions *>(obj);
  16300. return ptr->UnPack(resolver);
  16301. }
  16302. case BuiltinOptions_HashtableOptions: {
  16303. auto ptr = reinterpret_cast<const tflite::HashtableOptions *>(obj);
  16304. return ptr->UnPack(resolver);
  16305. }
  16306. case BuiltinOptions_HashtableFindOptions: {
  16307. auto ptr = reinterpret_cast<const tflite::HashtableFindOptions *>(obj);
  16308. return ptr->UnPack(resolver);
  16309. }
  16310. case BuiltinOptions_HashtableImportOptions: {
  16311. auto ptr = reinterpret_cast<const tflite::HashtableImportOptions *>(obj);
  16312. return ptr->UnPack(resolver);
  16313. }
  16314. case BuiltinOptions_HashtableSizeOptions: {
  16315. auto ptr = reinterpret_cast<const tflite::HashtableSizeOptions *>(obj);
  16316. return ptr->UnPack(resolver);
  16317. }
  16318. case BuiltinOptions_VarHandleOptions: {
  16319. auto ptr = reinterpret_cast<const tflite::VarHandleOptions *>(obj);
  16320. return ptr->UnPack(resolver);
  16321. }
  16322. case BuiltinOptions_ReadVariableOptions: {
  16323. auto ptr = reinterpret_cast<const tflite::ReadVariableOptions *>(obj);
  16324. return ptr->UnPack(resolver);
  16325. }
  16326. case BuiltinOptions_AssignVariableOptions: {
  16327. auto ptr = reinterpret_cast<const tflite::AssignVariableOptions *>(obj);
  16328. return ptr->UnPack(resolver);
  16329. }
  16330. case BuiltinOptions_RandomOptions: {
  16331. auto ptr = reinterpret_cast<const tflite::RandomOptions *>(obj);
  16332. return ptr->UnPack(resolver);
  16333. }
  16334. case BuiltinOptions_BucketizeOptions: {
  16335. auto ptr = reinterpret_cast<const tflite::BucketizeOptions *>(obj);
  16336. return ptr->UnPack(resolver);
  16337. }
  16338. case BuiltinOptions_GeluOptions: {
  16339. auto ptr = reinterpret_cast<const tflite::GeluOptions *>(obj);
  16340. return ptr->UnPack(resolver);
  16341. }
  16342. case BuiltinOptions_DynamicUpdateSliceOptions: {
  16343. auto ptr = reinterpret_cast<const tflite::DynamicUpdateSliceOptions *>(obj);
  16344. return ptr->UnPack(resolver);
  16345. }
  16346. case BuiltinOptions_UnsortedSegmentProdOptions: {
  16347. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentProdOptions *>(obj);
  16348. return ptr->UnPack(resolver);
  16349. }
  16350. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  16351. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMaxOptions *>(obj);
  16352. return ptr->UnPack(resolver);
  16353. }
  16354. case BuiltinOptions_UnsortedSegmentMinOptions: {
  16355. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMinOptions *>(obj);
  16356. return ptr->UnPack(resolver);
  16357. }
  16358. case BuiltinOptions_UnsortedSegmentSumOptions: {
  16359. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentSumOptions *>(obj);
  16360. return ptr->UnPack(resolver);
  16361. }
  16362. case BuiltinOptions_ATan2Options: {
  16363. auto ptr = reinterpret_cast<const tflite::ATan2Options *>(obj);
  16364. return ptr->UnPack(resolver);
  16365. }
  16366. default: return nullptr;
  16367. }
  16368. }
  16369. inline flatbuffers::Offset<void> BuiltinOptionsUnion::Pack(flatbuffers::FlatBufferBuilder &_fbb, const flatbuffers::rehasher_function_t *_rehasher) const {
  16370. switch (type) {
  16371. case BuiltinOptions_Conv2DOptions: {
  16372. auto ptr = reinterpret_cast<const tflite::Conv2DOptionsT *>(value);
  16373. return CreateConv2DOptions(_fbb, ptr, _rehasher).Union();
  16374. }
  16375. case BuiltinOptions_DepthwiseConv2DOptions: {
  16376. auto ptr = reinterpret_cast<const tflite::DepthwiseConv2DOptionsT *>(value);
  16377. return CreateDepthwiseConv2DOptions(_fbb, ptr, _rehasher).Union();
  16378. }
  16379. case BuiltinOptions_ConcatEmbeddingsOptions: {
  16380. auto ptr = reinterpret_cast<const tflite::ConcatEmbeddingsOptionsT *>(value);
  16381. return CreateConcatEmbeddingsOptions(_fbb, ptr, _rehasher).Union();
  16382. }
  16383. case BuiltinOptions_LSHProjectionOptions: {
  16384. auto ptr = reinterpret_cast<const tflite::LSHProjectionOptionsT *>(value);
  16385. return CreateLSHProjectionOptions(_fbb, ptr, _rehasher).Union();
  16386. }
  16387. case BuiltinOptions_Pool2DOptions: {
  16388. auto ptr = reinterpret_cast<const tflite::Pool2DOptionsT *>(value);
  16389. return CreatePool2DOptions(_fbb, ptr, _rehasher).Union();
  16390. }
  16391. case BuiltinOptions_SVDFOptions: {
  16392. auto ptr = reinterpret_cast<const tflite::SVDFOptionsT *>(value);
  16393. return CreateSVDFOptions(_fbb, ptr, _rehasher).Union();
  16394. }
  16395. case BuiltinOptions_RNNOptions: {
  16396. auto ptr = reinterpret_cast<const tflite::RNNOptionsT *>(value);
  16397. return CreateRNNOptions(_fbb, ptr, _rehasher).Union();
  16398. }
  16399. case BuiltinOptions_FullyConnectedOptions: {
  16400. auto ptr = reinterpret_cast<const tflite::FullyConnectedOptionsT *>(value);
  16401. return CreateFullyConnectedOptions(_fbb, ptr, _rehasher).Union();
  16402. }
  16403. case BuiltinOptions_SoftmaxOptions: {
  16404. auto ptr = reinterpret_cast<const tflite::SoftmaxOptionsT *>(value);
  16405. return CreateSoftmaxOptions(_fbb, ptr, _rehasher).Union();
  16406. }
  16407. case BuiltinOptions_ConcatenationOptions: {
  16408. auto ptr = reinterpret_cast<const tflite::ConcatenationOptionsT *>(value);
  16409. return CreateConcatenationOptions(_fbb, ptr, _rehasher).Union();
  16410. }
  16411. case BuiltinOptions_AddOptions: {
  16412. auto ptr = reinterpret_cast<const tflite::AddOptionsT *>(value);
  16413. return CreateAddOptions(_fbb, ptr, _rehasher).Union();
  16414. }
  16415. case BuiltinOptions_L2NormOptions: {
  16416. auto ptr = reinterpret_cast<const tflite::L2NormOptionsT *>(value);
  16417. return CreateL2NormOptions(_fbb, ptr, _rehasher).Union();
  16418. }
  16419. case BuiltinOptions_LocalResponseNormalizationOptions: {
  16420. auto ptr = reinterpret_cast<const tflite::LocalResponseNormalizationOptionsT *>(value);
  16421. return CreateLocalResponseNormalizationOptions(_fbb, ptr, _rehasher).Union();
  16422. }
  16423. case BuiltinOptions_LSTMOptions: {
  16424. auto ptr = reinterpret_cast<const tflite::LSTMOptionsT *>(value);
  16425. return CreateLSTMOptions(_fbb, ptr, _rehasher).Union();
  16426. }
  16427. case BuiltinOptions_ResizeBilinearOptions: {
  16428. auto ptr = reinterpret_cast<const tflite::ResizeBilinearOptionsT *>(value);
  16429. return CreateResizeBilinearOptions(_fbb, ptr, _rehasher).Union();
  16430. }
  16431. case BuiltinOptions_CallOptions: {
  16432. auto ptr = reinterpret_cast<const tflite::CallOptionsT *>(value);
  16433. return CreateCallOptions(_fbb, ptr, _rehasher).Union();
  16434. }
  16435. case BuiltinOptions_ReshapeOptions: {
  16436. auto ptr = reinterpret_cast<const tflite::ReshapeOptionsT *>(value);
  16437. return CreateReshapeOptions(_fbb, ptr, _rehasher).Union();
  16438. }
  16439. case BuiltinOptions_SkipGramOptions: {
  16440. auto ptr = reinterpret_cast<const tflite::SkipGramOptionsT *>(value);
  16441. return CreateSkipGramOptions(_fbb, ptr, _rehasher).Union();
  16442. }
  16443. case BuiltinOptions_SpaceToDepthOptions: {
  16444. auto ptr = reinterpret_cast<const tflite::SpaceToDepthOptionsT *>(value);
  16445. return CreateSpaceToDepthOptions(_fbb, ptr, _rehasher).Union();
  16446. }
  16447. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  16448. auto ptr = reinterpret_cast<const tflite::EmbeddingLookupSparseOptionsT *>(value);
  16449. return CreateEmbeddingLookupSparseOptions(_fbb, ptr, _rehasher).Union();
  16450. }
  16451. case BuiltinOptions_MulOptions: {
  16452. auto ptr = reinterpret_cast<const tflite::MulOptionsT *>(value);
  16453. return CreateMulOptions(_fbb, ptr, _rehasher).Union();
  16454. }
  16455. case BuiltinOptions_PadOptions: {
  16456. auto ptr = reinterpret_cast<const tflite::PadOptionsT *>(value);
  16457. return CreatePadOptions(_fbb, ptr, _rehasher).Union();
  16458. }
  16459. case BuiltinOptions_GatherOptions: {
  16460. auto ptr = reinterpret_cast<const tflite::GatherOptionsT *>(value);
  16461. return CreateGatherOptions(_fbb, ptr, _rehasher).Union();
  16462. }
  16463. case BuiltinOptions_BatchToSpaceNDOptions: {
  16464. auto ptr = reinterpret_cast<const tflite::BatchToSpaceNDOptionsT *>(value);
  16465. return CreateBatchToSpaceNDOptions(_fbb, ptr, _rehasher).Union();
  16466. }
  16467. case BuiltinOptions_SpaceToBatchNDOptions: {
  16468. auto ptr = reinterpret_cast<const tflite::SpaceToBatchNDOptionsT *>(value);
  16469. return CreateSpaceToBatchNDOptions(_fbb, ptr, _rehasher).Union();
  16470. }
  16471. case BuiltinOptions_TransposeOptions: {
  16472. auto ptr = reinterpret_cast<const tflite::TransposeOptionsT *>(value);
  16473. return CreateTransposeOptions(_fbb, ptr, _rehasher).Union();
  16474. }
  16475. case BuiltinOptions_ReducerOptions: {
  16476. auto ptr = reinterpret_cast<const tflite::ReducerOptionsT *>(value);
  16477. return CreateReducerOptions(_fbb, ptr, _rehasher).Union();
  16478. }
  16479. case BuiltinOptions_SubOptions: {
  16480. auto ptr = reinterpret_cast<const tflite::SubOptionsT *>(value);
  16481. return CreateSubOptions(_fbb, ptr, _rehasher).Union();
  16482. }
  16483. case BuiltinOptions_DivOptions: {
  16484. auto ptr = reinterpret_cast<const tflite::DivOptionsT *>(value);
  16485. return CreateDivOptions(_fbb, ptr, _rehasher).Union();
  16486. }
  16487. case BuiltinOptions_SqueezeOptions: {
  16488. auto ptr = reinterpret_cast<const tflite::SqueezeOptionsT *>(value);
  16489. return CreateSqueezeOptions(_fbb, ptr, _rehasher).Union();
  16490. }
  16491. case BuiltinOptions_SequenceRNNOptions: {
  16492. auto ptr = reinterpret_cast<const tflite::SequenceRNNOptionsT *>(value);
  16493. return CreateSequenceRNNOptions(_fbb, ptr, _rehasher).Union();
  16494. }
  16495. case BuiltinOptions_StridedSliceOptions: {
  16496. auto ptr = reinterpret_cast<const tflite::StridedSliceOptionsT *>(value);
  16497. return CreateStridedSliceOptions(_fbb, ptr, _rehasher).Union();
  16498. }
  16499. case BuiltinOptions_ExpOptions: {
  16500. auto ptr = reinterpret_cast<const tflite::ExpOptionsT *>(value);
  16501. return CreateExpOptions(_fbb, ptr, _rehasher).Union();
  16502. }
  16503. case BuiltinOptions_TopKV2Options: {
  16504. auto ptr = reinterpret_cast<const tflite::TopKV2OptionsT *>(value);
  16505. return CreateTopKV2Options(_fbb, ptr, _rehasher).Union();
  16506. }
  16507. case BuiltinOptions_SplitOptions: {
  16508. auto ptr = reinterpret_cast<const tflite::SplitOptionsT *>(value);
  16509. return CreateSplitOptions(_fbb, ptr, _rehasher).Union();
  16510. }
  16511. case BuiltinOptions_LogSoftmaxOptions: {
  16512. auto ptr = reinterpret_cast<const tflite::LogSoftmaxOptionsT *>(value);
  16513. return CreateLogSoftmaxOptions(_fbb, ptr, _rehasher).Union();
  16514. }
  16515. case BuiltinOptions_CastOptions: {
  16516. auto ptr = reinterpret_cast<const tflite::CastOptionsT *>(value);
  16517. return CreateCastOptions(_fbb, ptr, _rehasher).Union();
  16518. }
  16519. case BuiltinOptions_DequantizeOptions: {
  16520. auto ptr = reinterpret_cast<const tflite::DequantizeOptionsT *>(value);
  16521. return CreateDequantizeOptions(_fbb, ptr, _rehasher).Union();
  16522. }
  16523. case BuiltinOptions_MaximumMinimumOptions: {
  16524. auto ptr = reinterpret_cast<const tflite::MaximumMinimumOptionsT *>(value);
  16525. return CreateMaximumMinimumOptions(_fbb, ptr, _rehasher).Union();
  16526. }
  16527. case BuiltinOptions_ArgMaxOptions: {
  16528. auto ptr = reinterpret_cast<const tflite::ArgMaxOptionsT *>(value);
  16529. return CreateArgMaxOptions(_fbb, ptr, _rehasher).Union();
  16530. }
  16531. case BuiltinOptions_LessOptions: {
  16532. auto ptr = reinterpret_cast<const tflite::LessOptionsT *>(value);
  16533. return CreateLessOptions(_fbb, ptr, _rehasher).Union();
  16534. }
  16535. case BuiltinOptions_NegOptions: {
  16536. auto ptr = reinterpret_cast<const tflite::NegOptionsT *>(value);
  16537. return CreateNegOptions(_fbb, ptr, _rehasher).Union();
  16538. }
  16539. case BuiltinOptions_PadV2Options: {
  16540. auto ptr = reinterpret_cast<const tflite::PadV2OptionsT *>(value);
  16541. return CreatePadV2Options(_fbb, ptr, _rehasher).Union();
  16542. }
  16543. case BuiltinOptions_GreaterOptions: {
  16544. auto ptr = reinterpret_cast<const tflite::GreaterOptionsT *>(value);
  16545. return CreateGreaterOptions(_fbb, ptr, _rehasher).Union();
  16546. }
  16547. case BuiltinOptions_GreaterEqualOptions: {
  16548. auto ptr = reinterpret_cast<const tflite::GreaterEqualOptionsT *>(value);
  16549. return CreateGreaterEqualOptions(_fbb, ptr, _rehasher).Union();
  16550. }
  16551. case BuiltinOptions_LessEqualOptions: {
  16552. auto ptr = reinterpret_cast<const tflite::LessEqualOptionsT *>(value);
  16553. return CreateLessEqualOptions(_fbb, ptr, _rehasher).Union();
  16554. }
  16555. case BuiltinOptions_SelectOptions: {
  16556. auto ptr = reinterpret_cast<const tflite::SelectOptionsT *>(value);
  16557. return CreateSelectOptions(_fbb, ptr, _rehasher).Union();
  16558. }
  16559. case BuiltinOptions_SliceOptions: {
  16560. auto ptr = reinterpret_cast<const tflite::SliceOptionsT *>(value);
  16561. return CreateSliceOptions(_fbb, ptr, _rehasher).Union();
  16562. }
  16563. case BuiltinOptions_TransposeConvOptions: {
  16564. auto ptr = reinterpret_cast<const tflite::TransposeConvOptionsT *>(value);
  16565. return CreateTransposeConvOptions(_fbb, ptr, _rehasher).Union();
  16566. }
  16567. case BuiltinOptions_SparseToDenseOptions: {
  16568. auto ptr = reinterpret_cast<const tflite::SparseToDenseOptionsT *>(value);
  16569. return CreateSparseToDenseOptions(_fbb, ptr, _rehasher).Union();
  16570. }
  16571. case BuiltinOptions_TileOptions: {
  16572. auto ptr = reinterpret_cast<const tflite::TileOptionsT *>(value);
  16573. return CreateTileOptions(_fbb, ptr, _rehasher).Union();
  16574. }
  16575. case BuiltinOptions_ExpandDimsOptions: {
  16576. auto ptr = reinterpret_cast<const tflite::ExpandDimsOptionsT *>(value);
  16577. return CreateExpandDimsOptions(_fbb, ptr, _rehasher).Union();
  16578. }
  16579. case BuiltinOptions_EqualOptions: {
  16580. auto ptr = reinterpret_cast<const tflite::EqualOptionsT *>(value);
  16581. return CreateEqualOptions(_fbb, ptr, _rehasher).Union();
  16582. }
  16583. case BuiltinOptions_NotEqualOptions: {
  16584. auto ptr = reinterpret_cast<const tflite::NotEqualOptionsT *>(value);
  16585. return CreateNotEqualOptions(_fbb, ptr, _rehasher).Union();
  16586. }
  16587. case BuiltinOptions_ShapeOptions: {
  16588. auto ptr = reinterpret_cast<const tflite::ShapeOptionsT *>(value);
  16589. return CreateShapeOptions(_fbb, ptr, _rehasher).Union();
  16590. }
  16591. case BuiltinOptions_PowOptions: {
  16592. auto ptr = reinterpret_cast<const tflite::PowOptionsT *>(value);
  16593. return CreatePowOptions(_fbb, ptr, _rehasher).Union();
  16594. }
  16595. case BuiltinOptions_ArgMinOptions: {
  16596. auto ptr = reinterpret_cast<const tflite::ArgMinOptionsT *>(value);
  16597. return CreateArgMinOptions(_fbb, ptr, _rehasher).Union();
  16598. }
  16599. case BuiltinOptions_FakeQuantOptions: {
  16600. auto ptr = reinterpret_cast<const tflite::FakeQuantOptionsT *>(value);
  16601. return CreateFakeQuantOptions(_fbb, ptr, _rehasher).Union();
  16602. }
  16603. case BuiltinOptions_PackOptions: {
  16604. auto ptr = reinterpret_cast<const tflite::PackOptionsT *>(value);
  16605. return CreatePackOptions(_fbb, ptr, _rehasher).Union();
  16606. }
  16607. case BuiltinOptions_LogicalOrOptions: {
  16608. auto ptr = reinterpret_cast<const tflite::LogicalOrOptionsT *>(value);
  16609. return CreateLogicalOrOptions(_fbb, ptr, _rehasher).Union();
  16610. }
  16611. case BuiltinOptions_OneHotOptions: {
  16612. auto ptr = reinterpret_cast<const tflite::OneHotOptionsT *>(value);
  16613. return CreateOneHotOptions(_fbb, ptr, _rehasher).Union();
  16614. }
  16615. case BuiltinOptions_LogicalAndOptions: {
  16616. auto ptr = reinterpret_cast<const tflite::LogicalAndOptionsT *>(value);
  16617. return CreateLogicalAndOptions(_fbb, ptr, _rehasher).Union();
  16618. }
  16619. case BuiltinOptions_LogicalNotOptions: {
  16620. auto ptr = reinterpret_cast<const tflite::LogicalNotOptionsT *>(value);
  16621. return CreateLogicalNotOptions(_fbb, ptr, _rehasher).Union();
  16622. }
  16623. case BuiltinOptions_UnpackOptions: {
  16624. auto ptr = reinterpret_cast<const tflite::UnpackOptionsT *>(value);
  16625. return CreateUnpackOptions(_fbb, ptr, _rehasher).Union();
  16626. }
  16627. case BuiltinOptions_FloorDivOptions: {
  16628. auto ptr = reinterpret_cast<const tflite::FloorDivOptionsT *>(value);
  16629. return CreateFloorDivOptions(_fbb, ptr, _rehasher).Union();
  16630. }
  16631. case BuiltinOptions_SquareOptions: {
  16632. auto ptr = reinterpret_cast<const tflite::SquareOptionsT *>(value);
  16633. return CreateSquareOptions(_fbb, ptr, _rehasher).Union();
  16634. }
  16635. case BuiltinOptions_ZerosLikeOptions: {
  16636. auto ptr = reinterpret_cast<const tflite::ZerosLikeOptionsT *>(value);
  16637. return CreateZerosLikeOptions(_fbb, ptr, _rehasher).Union();
  16638. }
  16639. case BuiltinOptions_FillOptions: {
  16640. auto ptr = reinterpret_cast<const tflite::FillOptionsT *>(value);
  16641. return CreateFillOptions(_fbb, ptr, _rehasher).Union();
  16642. }
  16643. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  16644. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceLSTMOptionsT *>(value);
  16645. return CreateBidirectionalSequenceLSTMOptions(_fbb, ptr, _rehasher).Union();
  16646. }
  16647. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  16648. auto ptr = reinterpret_cast<const tflite::BidirectionalSequenceRNNOptionsT *>(value);
  16649. return CreateBidirectionalSequenceRNNOptions(_fbb, ptr, _rehasher).Union();
  16650. }
  16651. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  16652. auto ptr = reinterpret_cast<const tflite::UnidirectionalSequenceLSTMOptionsT *>(value);
  16653. return CreateUnidirectionalSequenceLSTMOptions(_fbb, ptr, _rehasher).Union();
  16654. }
  16655. case BuiltinOptions_FloorModOptions: {
  16656. auto ptr = reinterpret_cast<const tflite::FloorModOptionsT *>(value);
  16657. return CreateFloorModOptions(_fbb, ptr, _rehasher).Union();
  16658. }
  16659. case BuiltinOptions_RangeOptions: {
  16660. auto ptr = reinterpret_cast<const tflite::RangeOptionsT *>(value);
  16661. return CreateRangeOptions(_fbb, ptr, _rehasher).Union();
  16662. }
  16663. case BuiltinOptions_ResizeNearestNeighborOptions: {
  16664. auto ptr = reinterpret_cast<const tflite::ResizeNearestNeighborOptionsT *>(value);
  16665. return CreateResizeNearestNeighborOptions(_fbb, ptr, _rehasher).Union();
  16666. }
  16667. case BuiltinOptions_LeakyReluOptions: {
  16668. auto ptr = reinterpret_cast<const tflite::LeakyReluOptionsT *>(value);
  16669. return CreateLeakyReluOptions(_fbb, ptr, _rehasher).Union();
  16670. }
  16671. case BuiltinOptions_SquaredDifferenceOptions: {
  16672. auto ptr = reinterpret_cast<const tflite::SquaredDifferenceOptionsT *>(value);
  16673. return CreateSquaredDifferenceOptions(_fbb, ptr, _rehasher).Union();
  16674. }
  16675. case BuiltinOptions_MirrorPadOptions: {
  16676. auto ptr = reinterpret_cast<const tflite::MirrorPadOptionsT *>(value);
  16677. return CreateMirrorPadOptions(_fbb, ptr, _rehasher).Union();
  16678. }
  16679. case BuiltinOptions_AbsOptions: {
  16680. auto ptr = reinterpret_cast<const tflite::AbsOptionsT *>(value);
  16681. return CreateAbsOptions(_fbb, ptr, _rehasher).Union();
  16682. }
  16683. case BuiltinOptions_SplitVOptions: {
  16684. auto ptr = reinterpret_cast<const tflite::SplitVOptionsT *>(value);
  16685. return CreateSplitVOptions(_fbb, ptr, _rehasher).Union();
  16686. }
  16687. case BuiltinOptions_UniqueOptions: {
  16688. auto ptr = reinterpret_cast<const tflite::UniqueOptionsT *>(value);
  16689. return CreateUniqueOptions(_fbb, ptr, _rehasher).Union();
  16690. }
  16691. case BuiltinOptions_ReverseV2Options: {
  16692. auto ptr = reinterpret_cast<const tflite::ReverseV2OptionsT *>(value);
  16693. return CreateReverseV2Options(_fbb, ptr, _rehasher).Union();
  16694. }
  16695. case BuiltinOptions_AddNOptions: {
  16696. auto ptr = reinterpret_cast<const tflite::AddNOptionsT *>(value);
  16697. return CreateAddNOptions(_fbb, ptr, _rehasher).Union();
  16698. }
  16699. case BuiltinOptions_GatherNdOptions: {
  16700. auto ptr = reinterpret_cast<const tflite::GatherNdOptionsT *>(value);
  16701. return CreateGatherNdOptions(_fbb, ptr, _rehasher).Union();
  16702. }
  16703. case BuiltinOptions_CosOptions: {
  16704. auto ptr = reinterpret_cast<const tflite::CosOptionsT *>(value);
  16705. return CreateCosOptions(_fbb, ptr, _rehasher).Union();
  16706. }
  16707. case BuiltinOptions_WhereOptions: {
  16708. auto ptr = reinterpret_cast<const tflite::WhereOptionsT *>(value);
  16709. return CreateWhereOptions(_fbb, ptr, _rehasher).Union();
  16710. }
  16711. case BuiltinOptions_RankOptions: {
  16712. auto ptr = reinterpret_cast<const tflite::RankOptionsT *>(value);
  16713. return CreateRankOptions(_fbb, ptr, _rehasher).Union();
  16714. }
  16715. case BuiltinOptions_ReverseSequenceOptions: {
  16716. auto ptr = reinterpret_cast<const tflite::ReverseSequenceOptionsT *>(value);
  16717. return CreateReverseSequenceOptions(_fbb, ptr, _rehasher).Union();
  16718. }
  16719. case BuiltinOptions_MatrixDiagOptions: {
  16720. auto ptr = reinterpret_cast<const tflite::MatrixDiagOptionsT *>(value);
  16721. return CreateMatrixDiagOptions(_fbb, ptr, _rehasher).Union();
  16722. }
  16723. case BuiltinOptions_QuantizeOptions: {
  16724. auto ptr = reinterpret_cast<const tflite::QuantizeOptionsT *>(value);
  16725. return CreateQuantizeOptions(_fbb, ptr, _rehasher).Union();
  16726. }
  16727. case BuiltinOptions_MatrixSetDiagOptions: {
  16728. auto ptr = reinterpret_cast<const tflite::MatrixSetDiagOptionsT *>(value);
  16729. return CreateMatrixSetDiagOptions(_fbb, ptr, _rehasher).Union();
  16730. }
  16731. case BuiltinOptions_HardSwishOptions: {
  16732. auto ptr = reinterpret_cast<const tflite::HardSwishOptionsT *>(value);
  16733. return CreateHardSwishOptions(_fbb, ptr, _rehasher).Union();
  16734. }
  16735. case BuiltinOptions_IfOptions: {
  16736. auto ptr = reinterpret_cast<const tflite::IfOptionsT *>(value);
  16737. return CreateIfOptions(_fbb, ptr, _rehasher).Union();
  16738. }
  16739. case BuiltinOptions_WhileOptions: {
  16740. auto ptr = reinterpret_cast<const tflite::WhileOptionsT *>(value);
  16741. return CreateWhileOptions(_fbb, ptr, _rehasher).Union();
  16742. }
  16743. case BuiltinOptions_DepthToSpaceOptions: {
  16744. auto ptr = reinterpret_cast<const tflite::DepthToSpaceOptionsT *>(value);
  16745. return CreateDepthToSpaceOptions(_fbb, ptr, _rehasher).Union();
  16746. }
  16747. case BuiltinOptions_NonMaxSuppressionV4Options: {
  16748. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV4OptionsT *>(value);
  16749. return CreateNonMaxSuppressionV4Options(_fbb, ptr, _rehasher).Union();
  16750. }
  16751. case BuiltinOptions_NonMaxSuppressionV5Options: {
  16752. auto ptr = reinterpret_cast<const tflite::NonMaxSuppressionV5OptionsT *>(value);
  16753. return CreateNonMaxSuppressionV5Options(_fbb, ptr, _rehasher).Union();
  16754. }
  16755. case BuiltinOptions_ScatterNdOptions: {
  16756. auto ptr = reinterpret_cast<const tflite::ScatterNdOptionsT *>(value);
  16757. return CreateScatterNdOptions(_fbb, ptr, _rehasher).Union();
  16758. }
  16759. case BuiltinOptions_SelectV2Options: {
  16760. auto ptr = reinterpret_cast<const tflite::SelectV2OptionsT *>(value);
  16761. return CreateSelectV2Options(_fbb, ptr, _rehasher).Union();
  16762. }
  16763. case BuiltinOptions_DensifyOptions: {
  16764. auto ptr = reinterpret_cast<const tflite::DensifyOptionsT *>(value);
  16765. return CreateDensifyOptions(_fbb, ptr, _rehasher).Union();
  16766. }
  16767. case BuiltinOptions_SegmentSumOptions: {
  16768. auto ptr = reinterpret_cast<const tflite::SegmentSumOptionsT *>(value);
  16769. return CreateSegmentSumOptions(_fbb, ptr, _rehasher).Union();
  16770. }
  16771. case BuiltinOptions_BatchMatMulOptions: {
  16772. auto ptr = reinterpret_cast<const tflite::BatchMatMulOptionsT *>(value);
  16773. return CreateBatchMatMulOptions(_fbb, ptr, _rehasher).Union();
  16774. }
  16775. case BuiltinOptions_CumsumOptions: {
  16776. auto ptr = reinterpret_cast<const tflite::CumsumOptionsT *>(value);
  16777. return CreateCumsumOptions(_fbb, ptr, _rehasher).Union();
  16778. }
  16779. case BuiltinOptions_CallOnceOptions: {
  16780. auto ptr = reinterpret_cast<const tflite::CallOnceOptionsT *>(value);
  16781. return CreateCallOnceOptions(_fbb, ptr, _rehasher).Union();
  16782. }
  16783. case BuiltinOptions_BroadcastToOptions: {
  16784. auto ptr = reinterpret_cast<const tflite::BroadcastToOptionsT *>(value);
  16785. return CreateBroadcastToOptions(_fbb, ptr, _rehasher).Union();
  16786. }
  16787. case BuiltinOptions_Rfft2dOptions: {
  16788. auto ptr = reinterpret_cast<const tflite::Rfft2dOptionsT *>(value);
  16789. return CreateRfft2dOptions(_fbb, ptr, _rehasher).Union();
  16790. }
  16791. case BuiltinOptions_Conv3DOptions: {
  16792. auto ptr = reinterpret_cast<const tflite::Conv3DOptionsT *>(value);
  16793. return CreateConv3DOptions(_fbb, ptr, _rehasher).Union();
  16794. }
  16795. case BuiltinOptions_HashtableOptions: {
  16796. auto ptr = reinterpret_cast<const tflite::HashtableOptionsT *>(value);
  16797. return CreateHashtableOptions(_fbb, ptr, _rehasher).Union();
  16798. }
  16799. case BuiltinOptions_HashtableFindOptions: {
  16800. auto ptr = reinterpret_cast<const tflite::HashtableFindOptionsT *>(value);
  16801. return CreateHashtableFindOptions(_fbb, ptr, _rehasher).Union();
  16802. }
  16803. case BuiltinOptions_HashtableImportOptions: {
  16804. auto ptr = reinterpret_cast<const tflite::HashtableImportOptionsT *>(value);
  16805. return CreateHashtableImportOptions(_fbb, ptr, _rehasher).Union();
  16806. }
  16807. case BuiltinOptions_HashtableSizeOptions: {
  16808. auto ptr = reinterpret_cast<const tflite::HashtableSizeOptionsT *>(value);
  16809. return CreateHashtableSizeOptions(_fbb, ptr, _rehasher).Union();
  16810. }
  16811. case BuiltinOptions_VarHandleOptions: {
  16812. auto ptr = reinterpret_cast<const tflite::VarHandleOptionsT *>(value);
  16813. return CreateVarHandleOptions(_fbb, ptr, _rehasher).Union();
  16814. }
  16815. case BuiltinOptions_ReadVariableOptions: {
  16816. auto ptr = reinterpret_cast<const tflite::ReadVariableOptionsT *>(value);
  16817. return CreateReadVariableOptions(_fbb, ptr, _rehasher).Union();
  16818. }
  16819. case BuiltinOptions_AssignVariableOptions: {
  16820. auto ptr = reinterpret_cast<const tflite::AssignVariableOptionsT *>(value);
  16821. return CreateAssignVariableOptions(_fbb, ptr, _rehasher).Union();
  16822. }
  16823. case BuiltinOptions_RandomOptions: {
  16824. auto ptr = reinterpret_cast<const tflite::RandomOptionsT *>(value);
  16825. return CreateRandomOptions(_fbb, ptr, _rehasher).Union();
  16826. }
  16827. case BuiltinOptions_BucketizeOptions: {
  16828. auto ptr = reinterpret_cast<const tflite::BucketizeOptionsT *>(value);
  16829. return CreateBucketizeOptions(_fbb, ptr, _rehasher).Union();
  16830. }
  16831. case BuiltinOptions_GeluOptions: {
  16832. auto ptr = reinterpret_cast<const tflite::GeluOptionsT *>(value);
  16833. return CreateGeluOptions(_fbb, ptr, _rehasher).Union();
  16834. }
  16835. case BuiltinOptions_DynamicUpdateSliceOptions: {
  16836. auto ptr = reinterpret_cast<const tflite::DynamicUpdateSliceOptionsT *>(value);
  16837. return CreateDynamicUpdateSliceOptions(_fbb, ptr, _rehasher).Union();
  16838. }
  16839. case BuiltinOptions_UnsortedSegmentProdOptions: {
  16840. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentProdOptionsT *>(value);
  16841. return CreateUnsortedSegmentProdOptions(_fbb, ptr, _rehasher).Union();
  16842. }
  16843. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  16844. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMaxOptionsT *>(value);
  16845. return CreateUnsortedSegmentMaxOptions(_fbb, ptr, _rehasher).Union();
  16846. }
  16847. case BuiltinOptions_UnsortedSegmentMinOptions: {
  16848. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentMinOptionsT *>(value);
  16849. return CreateUnsortedSegmentMinOptions(_fbb, ptr, _rehasher).Union();
  16850. }
  16851. case BuiltinOptions_UnsortedSegmentSumOptions: {
  16852. auto ptr = reinterpret_cast<const tflite::UnsortedSegmentSumOptionsT *>(value);
  16853. return CreateUnsortedSegmentSumOptions(_fbb, ptr, _rehasher).Union();
  16854. }
  16855. case BuiltinOptions_ATan2Options: {
  16856. auto ptr = reinterpret_cast<const tflite::ATan2OptionsT *>(value);
  16857. return CreateATan2Options(_fbb, ptr, _rehasher).Union();
  16858. }
  16859. default: return 0;
  16860. }
  16861. }
  16862. inline BuiltinOptionsUnion::BuiltinOptionsUnion(const BuiltinOptionsUnion &u) : type(u.type), value(nullptr) {
  16863. switch (type) {
  16864. case BuiltinOptions_Conv2DOptions: {
  16865. value = new tflite::Conv2DOptionsT(*reinterpret_cast<tflite::Conv2DOptionsT *>(u.value));
  16866. break;
  16867. }
  16868. case BuiltinOptions_DepthwiseConv2DOptions: {
  16869. value = new tflite::DepthwiseConv2DOptionsT(*reinterpret_cast<tflite::DepthwiseConv2DOptionsT *>(u.value));
  16870. break;
  16871. }
  16872. case BuiltinOptions_ConcatEmbeddingsOptions: {
  16873. value = new tflite::ConcatEmbeddingsOptionsT(*reinterpret_cast<tflite::ConcatEmbeddingsOptionsT *>(u.value));
  16874. break;
  16875. }
  16876. case BuiltinOptions_LSHProjectionOptions: {
  16877. value = new tflite::LSHProjectionOptionsT(*reinterpret_cast<tflite::LSHProjectionOptionsT *>(u.value));
  16878. break;
  16879. }
  16880. case BuiltinOptions_Pool2DOptions: {
  16881. value = new tflite::Pool2DOptionsT(*reinterpret_cast<tflite::Pool2DOptionsT *>(u.value));
  16882. break;
  16883. }
  16884. case BuiltinOptions_SVDFOptions: {
  16885. value = new tflite::SVDFOptionsT(*reinterpret_cast<tflite::SVDFOptionsT *>(u.value));
  16886. break;
  16887. }
  16888. case BuiltinOptions_RNNOptions: {
  16889. value = new tflite::RNNOptionsT(*reinterpret_cast<tflite::RNNOptionsT *>(u.value));
  16890. break;
  16891. }
  16892. case BuiltinOptions_FullyConnectedOptions: {
  16893. value = new tflite::FullyConnectedOptionsT(*reinterpret_cast<tflite::FullyConnectedOptionsT *>(u.value));
  16894. break;
  16895. }
  16896. case BuiltinOptions_SoftmaxOptions: {
  16897. value = new tflite::SoftmaxOptionsT(*reinterpret_cast<tflite::SoftmaxOptionsT *>(u.value));
  16898. break;
  16899. }
  16900. case BuiltinOptions_ConcatenationOptions: {
  16901. value = new tflite::ConcatenationOptionsT(*reinterpret_cast<tflite::ConcatenationOptionsT *>(u.value));
  16902. break;
  16903. }
  16904. case BuiltinOptions_AddOptions: {
  16905. value = new tflite::AddOptionsT(*reinterpret_cast<tflite::AddOptionsT *>(u.value));
  16906. break;
  16907. }
  16908. case BuiltinOptions_L2NormOptions: {
  16909. value = new tflite::L2NormOptionsT(*reinterpret_cast<tflite::L2NormOptionsT *>(u.value));
  16910. break;
  16911. }
  16912. case BuiltinOptions_LocalResponseNormalizationOptions: {
  16913. value = new tflite::LocalResponseNormalizationOptionsT(*reinterpret_cast<tflite::LocalResponseNormalizationOptionsT *>(u.value));
  16914. break;
  16915. }
  16916. case BuiltinOptions_LSTMOptions: {
  16917. value = new tflite::LSTMOptionsT(*reinterpret_cast<tflite::LSTMOptionsT *>(u.value));
  16918. break;
  16919. }
  16920. case BuiltinOptions_ResizeBilinearOptions: {
  16921. value = new tflite::ResizeBilinearOptionsT(*reinterpret_cast<tflite::ResizeBilinearOptionsT *>(u.value));
  16922. break;
  16923. }
  16924. case BuiltinOptions_CallOptions: {
  16925. value = new tflite::CallOptionsT(*reinterpret_cast<tflite::CallOptionsT *>(u.value));
  16926. break;
  16927. }
  16928. case BuiltinOptions_ReshapeOptions: {
  16929. value = new tflite::ReshapeOptionsT(*reinterpret_cast<tflite::ReshapeOptionsT *>(u.value));
  16930. break;
  16931. }
  16932. case BuiltinOptions_SkipGramOptions: {
  16933. value = new tflite::SkipGramOptionsT(*reinterpret_cast<tflite::SkipGramOptionsT *>(u.value));
  16934. break;
  16935. }
  16936. case BuiltinOptions_SpaceToDepthOptions: {
  16937. value = new tflite::SpaceToDepthOptionsT(*reinterpret_cast<tflite::SpaceToDepthOptionsT *>(u.value));
  16938. break;
  16939. }
  16940. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  16941. value = new tflite::EmbeddingLookupSparseOptionsT(*reinterpret_cast<tflite::EmbeddingLookupSparseOptionsT *>(u.value));
  16942. break;
  16943. }
  16944. case BuiltinOptions_MulOptions: {
  16945. value = new tflite::MulOptionsT(*reinterpret_cast<tflite::MulOptionsT *>(u.value));
  16946. break;
  16947. }
  16948. case BuiltinOptions_PadOptions: {
  16949. value = new tflite::PadOptionsT(*reinterpret_cast<tflite::PadOptionsT *>(u.value));
  16950. break;
  16951. }
  16952. case BuiltinOptions_GatherOptions: {
  16953. value = new tflite::GatherOptionsT(*reinterpret_cast<tflite::GatherOptionsT *>(u.value));
  16954. break;
  16955. }
  16956. case BuiltinOptions_BatchToSpaceNDOptions: {
  16957. value = new tflite::BatchToSpaceNDOptionsT(*reinterpret_cast<tflite::BatchToSpaceNDOptionsT *>(u.value));
  16958. break;
  16959. }
  16960. case BuiltinOptions_SpaceToBatchNDOptions: {
  16961. value = new tflite::SpaceToBatchNDOptionsT(*reinterpret_cast<tflite::SpaceToBatchNDOptionsT *>(u.value));
  16962. break;
  16963. }
  16964. case BuiltinOptions_TransposeOptions: {
  16965. value = new tflite::TransposeOptionsT(*reinterpret_cast<tflite::TransposeOptionsT *>(u.value));
  16966. break;
  16967. }
  16968. case BuiltinOptions_ReducerOptions: {
  16969. value = new tflite::ReducerOptionsT(*reinterpret_cast<tflite::ReducerOptionsT *>(u.value));
  16970. break;
  16971. }
  16972. case BuiltinOptions_SubOptions: {
  16973. value = new tflite::SubOptionsT(*reinterpret_cast<tflite::SubOptionsT *>(u.value));
  16974. break;
  16975. }
  16976. case BuiltinOptions_DivOptions: {
  16977. value = new tflite::DivOptionsT(*reinterpret_cast<tflite::DivOptionsT *>(u.value));
  16978. break;
  16979. }
  16980. case BuiltinOptions_SqueezeOptions: {
  16981. value = new tflite::SqueezeOptionsT(*reinterpret_cast<tflite::SqueezeOptionsT *>(u.value));
  16982. break;
  16983. }
  16984. case BuiltinOptions_SequenceRNNOptions: {
  16985. value = new tflite::SequenceRNNOptionsT(*reinterpret_cast<tflite::SequenceRNNOptionsT *>(u.value));
  16986. break;
  16987. }
  16988. case BuiltinOptions_StridedSliceOptions: {
  16989. value = new tflite::StridedSliceOptionsT(*reinterpret_cast<tflite::StridedSliceOptionsT *>(u.value));
  16990. break;
  16991. }
  16992. case BuiltinOptions_ExpOptions: {
  16993. value = new tflite::ExpOptionsT(*reinterpret_cast<tflite::ExpOptionsT *>(u.value));
  16994. break;
  16995. }
  16996. case BuiltinOptions_TopKV2Options: {
  16997. value = new tflite::TopKV2OptionsT(*reinterpret_cast<tflite::TopKV2OptionsT *>(u.value));
  16998. break;
  16999. }
  17000. case BuiltinOptions_SplitOptions: {
  17001. value = new tflite::SplitOptionsT(*reinterpret_cast<tflite::SplitOptionsT *>(u.value));
  17002. break;
  17003. }
  17004. case BuiltinOptions_LogSoftmaxOptions: {
  17005. value = new tflite::LogSoftmaxOptionsT(*reinterpret_cast<tflite::LogSoftmaxOptionsT *>(u.value));
  17006. break;
  17007. }
  17008. case BuiltinOptions_CastOptions: {
  17009. value = new tflite::CastOptionsT(*reinterpret_cast<tflite::CastOptionsT *>(u.value));
  17010. break;
  17011. }
  17012. case BuiltinOptions_DequantizeOptions: {
  17013. value = new tflite::DequantizeOptionsT(*reinterpret_cast<tflite::DequantizeOptionsT *>(u.value));
  17014. break;
  17015. }
  17016. case BuiltinOptions_MaximumMinimumOptions: {
  17017. value = new tflite::MaximumMinimumOptionsT(*reinterpret_cast<tflite::MaximumMinimumOptionsT *>(u.value));
  17018. break;
  17019. }
  17020. case BuiltinOptions_ArgMaxOptions: {
  17021. value = new tflite::ArgMaxOptionsT(*reinterpret_cast<tflite::ArgMaxOptionsT *>(u.value));
  17022. break;
  17023. }
  17024. case BuiltinOptions_LessOptions: {
  17025. value = new tflite::LessOptionsT(*reinterpret_cast<tflite::LessOptionsT *>(u.value));
  17026. break;
  17027. }
  17028. case BuiltinOptions_NegOptions: {
  17029. value = new tflite::NegOptionsT(*reinterpret_cast<tflite::NegOptionsT *>(u.value));
  17030. break;
  17031. }
  17032. case BuiltinOptions_PadV2Options: {
  17033. value = new tflite::PadV2OptionsT(*reinterpret_cast<tflite::PadV2OptionsT *>(u.value));
  17034. break;
  17035. }
  17036. case BuiltinOptions_GreaterOptions: {
  17037. value = new tflite::GreaterOptionsT(*reinterpret_cast<tflite::GreaterOptionsT *>(u.value));
  17038. break;
  17039. }
  17040. case BuiltinOptions_GreaterEqualOptions: {
  17041. value = new tflite::GreaterEqualOptionsT(*reinterpret_cast<tflite::GreaterEqualOptionsT *>(u.value));
  17042. break;
  17043. }
  17044. case BuiltinOptions_LessEqualOptions: {
  17045. value = new tflite::LessEqualOptionsT(*reinterpret_cast<tflite::LessEqualOptionsT *>(u.value));
  17046. break;
  17047. }
  17048. case BuiltinOptions_SelectOptions: {
  17049. value = new tflite::SelectOptionsT(*reinterpret_cast<tflite::SelectOptionsT *>(u.value));
  17050. break;
  17051. }
  17052. case BuiltinOptions_SliceOptions: {
  17053. value = new tflite::SliceOptionsT(*reinterpret_cast<tflite::SliceOptionsT *>(u.value));
  17054. break;
  17055. }
  17056. case BuiltinOptions_TransposeConvOptions: {
  17057. value = new tflite::TransposeConvOptionsT(*reinterpret_cast<tflite::TransposeConvOptionsT *>(u.value));
  17058. break;
  17059. }
  17060. case BuiltinOptions_SparseToDenseOptions: {
  17061. value = new tflite::SparseToDenseOptionsT(*reinterpret_cast<tflite::SparseToDenseOptionsT *>(u.value));
  17062. break;
  17063. }
  17064. case BuiltinOptions_TileOptions: {
  17065. value = new tflite::TileOptionsT(*reinterpret_cast<tflite::TileOptionsT *>(u.value));
  17066. break;
  17067. }
  17068. case BuiltinOptions_ExpandDimsOptions: {
  17069. value = new tflite::ExpandDimsOptionsT(*reinterpret_cast<tflite::ExpandDimsOptionsT *>(u.value));
  17070. break;
  17071. }
  17072. case BuiltinOptions_EqualOptions: {
  17073. value = new tflite::EqualOptionsT(*reinterpret_cast<tflite::EqualOptionsT *>(u.value));
  17074. break;
  17075. }
  17076. case BuiltinOptions_NotEqualOptions: {
  17077. value = new tflite::NotEqualOptionsT(*reinterpret_cast<tflite::NotEqualOptionsT *>(u.value));
  17078. break;
  17079. }
  17080. case BuiltinOptions_ShapeOptions: {
  17081. value = new tflite::ShapeOptionsT(*reinterpret_cast<tflite::ShapeOptionsT *>(u.value));
  17082. break;
  17083. }
  17084. case BuiltinOptions_PowOptions: {
  17085. value = new tflite::PowOptionsT(*reinterpret_cast<tflite::PowOptionsT *>(u.value));
  17086. break;
  17087. }
  17088. case BuiltinOptions_ArgMinOptions: {
  17089. value = new tflite::ArgMinOptionsT(*reinterpret_cast<tflite::ArgMinOptionsT *>(u.value));
  17090. break;
  17091. }
  17092. case BuiltinOptions_FakeQuantOptions: {
  17093. value = new tflite::FakeQuantOptionsT(*reinterpret_cast<tflite::FakeQuantOptionsT *>(u.value));
  17094. break;
  17095. }
  17096. case BuiltinOptions_PackOptions: {
  17097. value = new tflite::PackOptionsT(*reinterpret_cast<tflite::PackOptionsT *>(u.value));
  17098. break;
  17099. }
  17100. case BuiltinOptions_LogicalOrOptions: {
  17101. value = new tflite::LogicalOrOptionsT(*reinterpret_cast<tflite::LogicalOrOptionsT *>(u.value));
  17102. break;
  17103. }
  17104. case BuiltinOptions_OneHotOptions: {
  17105. value = new tflite::OneHotOptionsT(*reinterpret_cast<tflite::OneHotOptionsT *>(u.value));
  17106. break;
  17107. }
  17108. case BuiltinOptions_LogicalAndOptions: {
  17109. value = new tflite::LogicalAndOptionsT(*reinterpret_cast<tflite::LogicalAndOptionsT *>(u.value));
  17110. break;
  17111. }
  17112. case BuiltinOptions_LogicalNotOptions: {
  17113. value = new tflite::LogicalNotOptionsT(*reinterpret_cast<tflite::LogicalNotOptionsT *>(u.value));
  17114. break;
  17115. }
  17116. case BuiltinOptions_UnpackOptions: {
  17117. value = new tflite::UnpackOptionsT(*reinterpret_cast<tflite::UnpackOptionsT *>(u.value));
  17118. break;
  17119. }
  17120. case BuiltinOptions_FloorDivOptions: {
  17121. value = new tflite::FloorDivOptionsT(*reinterpret_cast<tflite::FloorDivOptionsT *>(u.value));
  17122. break;
  17123. }
  17124. case BuiltinOptions_SquareOptions: {
  17125. value = new tflite::SquareOptionsT(*reinterpret_cast<tflite::SquareOptionsT *>(u.value));
  17126. break;
  17127. }
  17128. case BuiltinOptions_ZerosLikeOptions: {
  17129. value = new tflite::ZerosLikeOptionsT(*reinterpret_cast<tflite::ZerosLikeOptionsT *>(u.value));
  17130. break;
  17131. }
  17132. case BuiltinOptions_FillOptions: {
  17133. value = new tflite::FillOptionsT(*reinterpret_cast<tflite::FillOptionsT *>(u.value));
  17134. break;
  17135. }
  17136. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  17137. value = new tflite::BidirectionalSequenceLSTMOptionsT(*reinterpret_cast<tflite::BidirectionalSequenceLSTMOptionsT *>(u.value));
  17138. break;
  17139. }
  17140. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  17141. value = new tflite::BidirectionalSequenceRNNOptionsT(*reinterpret_cast<tflite::BidirectionalSequenceRNNOptionsT *>(u.value));
  17142. break;
  17143. }
  17144. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  17145. value = new tflite::UnidirectionalSequenceLSTMOptionsT(*reinterpret_cast<tflite::UnidirectionalSequenceLSTMOptionsT *>(u.value));
  17146. break;
  17147. }
  17148. case BuiltinOptions_FloorModOptions: {
  17149. value = new tflite::FloorModOptionsT(*reinterpret_cast<tflite::FloorModOptionsT *>(u.value));
  17150. break;
  17151. }
  17152. case BuiltinOptions_RangeOptions: {
  17153. value = new tflite::RangeOptionsT(*reinterpret_cast<tflite::RangeOptionsT *>(u.value));
  17154. break;
  17155. }
  17156. case BuiltinOptions_ResizeNearestNeighborOptions: {
  17157. value = new tflite::ResizeNearestNeighborOptionsT(*reinterpret_cast<tflite::ResizeNearestNeighborOptionsT *>(u.value));
  17158. break;
  17159. }
  17160. case BuiltinOptions_LeakyReluOptions: {
  17161. value = new tflite::LeakyReluOptionsT(*reinterpret_cast<tflite::LeakyReluOptionsT *>(u.value));
  17162. break;
  17163. }
  17164. case BuiltinOptions_SquaredDifferenceOptions: {
  17165. value = new tflite::SquaredDifferenceOptionsT(*reinterpret_cast<tflite::SquaredDifferenceOptionsT *>(u.value));
  17166. break;
  17167. }
  17168. case BuiltinOptions_MirrorPadOptions: {
  17169. value = new tflite::MirrorPadOptionsT(*reinterpret_cast<tflite::MirrorPadOptionsT *>(u.value));
  17170. break;
  17171. }
  17172. case BuiltinOptions_AbsOptions: {
  17173. value = new tflite::AbsOptionsT(*reinterpret_cast<tflite::AbsOptionsT *>(u.value));
  17174. break;
  17175. }
  17176. case BuiltinOptions_SplitVOptions: {
  17177. value = new tflite::SplitVOptionsT(*reinterpret_cast<tflite::SplitVOptionsT *>(u.value));
  17178. break;
  17179. }
  17180. case BuiltinOptions_UniqueOptions: {
  17181. value = new tflite::UniqueOptionsT(*reinterpret_cast<tflite::UniqueOptionsT *>(u.value));
  17182. break;
  17183. }
  17184. case BuiltinOptions_ReverseV2Options: {
  17185. value = new tflite::ReverseV2OptionsT(*reinterpret_cast<tflite::ReverseV2OptionsT *>(u.value));
  17186. break;
  17187. }
  17188. case BuiltinOptions_AddNOptions: {
  17189. value = new tflite::AddNOptionsT(*reinterpret_cast<tflite::AddNOptionsT *>(u.value));
  17190. break;
  17191. }
  17192. case BuiltinOptions_GatherNdOptions: {
  17193. value = new tflite::GatherNdOptionsT(*reinterpret_cast<tflite::GatherNdOptionsT *>(u.value));
  17194. break;
  17195. }
  17196. case BuiltinOptions_CosOptions: {
  17197. value = new tflite::CosOptionsT(*reinterpret_cast<tflite::CosOptionsT *>(u.value));
  17198. break;
  17199. }
  17200. case BuiltinOptions_WhereOptions: {
  17201. value = new tflite::WhereOptionsT(*reinterpret_cast<tflite::WhereOptionsT *>(u.value));
  17202. break;
  17203. }
  17204. case BuiltinOptions_RankOptions: {
  17205. value = new tflite::RankOptionsT(*reinterpret_cast<tflite::RankOptionsT *>(u.value));
  17206. break;
  17207. }
  17208. case BuiltinOptions_ReverseSequenceOptions: {
  17209. value = new tflite::ReverseSequenceOptionsT(*reinterpret_cast<tflite::ReverseSequenceOptionsT *>(u.value));
  17210. break;
  17211. }
  17212. case BuiltinOptions_MatrixDiagOptions: {
  17213. value = new tflite::MatrixDiagOptionsT(*reinterpret_cast<tflite::MatrixDiagOptionsT *>(u.value));
  17214. break;
  17215. }
  17216. case BuiltinOptions_QuantizeOptions: {
  17217. value = new tflite::QuantizeOptionsT(*reinterpret_cast<tflite::QuantizeOptionsT *>(u.value));
  17218. break;
  17219. }
  17220. case BuiltinOptions_MatrixSetDiagOptions: {
  17221. value = new tflite::MatrixSetDiagOptionsT(*reinterpret_cast<tflite::MatrixSetDiagOptionsT *>(u.value));
  17222. break;
  17223. }
  17224. case BuiltinOptions_HardSwishOptions: {
  17225. value = new tflite::HardSwishOptionsT(*reinterpret_cast<tflite::HardSwishOptionsT *>(u.value));
  17226. break;
  17227. }
  17228. case BuiltinOptions_IfOptions: {
  17229. value = new tflite::IfOptionsT(*reinterpret_cast<tflite::IfOptionsT *>(u.value));
  17230. break;
  17231. }
  17232. case BuiltinOptions_WhileOptions: {
  17233. value = new tflite::WhileOptionsT(*reinterpret_cast<tflite::WhileOptionsT *>(u.value));
  17234. break;
  17235. }
  17236. case BuiltinOptions_DepthToSpaceOptions: {
  17237. value = new tflite::DepthToSpaceOptionsT(*reinterpret_cast<tflite::DepthToSpaceOptionsT *>(u.value));
  17238. break;
  17239. }
  17240. case BuiltinOptions_NonMaxSuppressionV4Options: {
  17241. value = new tflite::NonMaxSuppressionV4OptionsT(*reinterpret_cast<tflite::NonMaxSuppressionV4OptionsT *>(u.value));
  17242. break;
  17243. }
  17244. case BuiltinOptions_NonMaxSuppressionV5Options: {
  17245. value = new tflite::NonMaxSuppressionV5OptionsT(*reinterpret_cast<tflite::NonMaxSuppressionV5OptionsT *>(u.value));
  17246. break;
  17247. }
  17248. case BuiltinOptions_ScatterNdOptions: {
  17249. value = new tflite::ScatterNdOptionsT(*reinterpret_cast<tflite::ScatterNdOptionsT *>(u.value));
  17250. break;
  17251. }
  17252. case BuiltinOptions_SelectV2Options: {
  17253. value = new tflite::SelectV2OptionsT(*reinterpret_cast<tflite::SelectV2OptionsT *>(u.value));
  17254. break;
  17255. }
  17256. case BuiltinOptions_DensifyOptions: {
  17257. value = new tflite::DensifyOptionsT(*reinterpret_cast<tflite::DensifyOptionsT *>(u.value));
  17258. break;
  17259. }
  17260. case BuiltinOptions_SegmentSumOptions: {
  17261. value = new tflite::SegmentSumOptionsT(*reinterpret_cast<tflite::SegmentSumOptionsT *>(u.value));
  17262. break;
  17263. }
  17264. case BuiltinOptions_BatchMatMulOptions: {
  17265. value = new tflite::BatchMatMulOptionsT(*reinterpret_cast<tflite::BatchMatMulOptionsT *>(u.value));
  17266. break;
  17267. }
  17268. case BuiltinOptions_CumsumOptions: {
  17269. value = new tflite::CumsumOptionsT(*reinterpret_cast<tflite::CumsumOptionsT *>(u.value));
  17270. break;
  17271. }
  17272. case BuiltinOptions_CallOnceOptions: {
  17273. value = new tflite::CallOnceOptionsT(*reinterpret_cast<tflite::CallOnceOptionsT *>(u.value));
  17274. break;
  17275. }
  17276. case BuiltinOptions_BroadcastToOptions: {
  17277. value = new tflite::BroadcastToOptionsT(*reinterpret_cast<tflite::BroadcastToOptionsT *>(u.value));
  17278. break;
  17279. }
  17280. case BuiltinOptions_Rfft2dOptions: {
  17281. value = new tflite::Rfft2dOptionsT(*reinterpret_cast<tflite::Rfft2dOptionsT *>(u.value));
  17282. break;
  17283. }
  17284. case BuiltinOptions_Conv3DOptions: {
  17285. value = new tflite::Conv3DOptionsT(*reinterpret_cast<tflite::Conv3DOptionsT *>(u.value));
  17286. break;
  17287. }
  17288. case BuiltinOptions_HashtableOptions: {
  17289. value = new tflite::HashtableOptionsT(*reinterpret_cast<tflite::HashtableOptionsT *>(u.value));
  17290. break;
  17291. }
  17292. case BuiltinOptions_HashtableFindOptions: {
  17293. value = new tflite::HashtableFindOptionsT(*reinterpret_cast<tflite::HashtableFindOptionsT *>(u.value));
  17294. break;
  17295. }
  17296. case BuiltinOptions_HashtableImportOptions: {
  17297. value = new tflite::HashtableImportOptionsT(*reinterpret_cast<tflite::HashtableImportOptionsT *>(u.value));
  17298. break;
  17299. }
  17300. case BuiltinOptions_HashtableSizeOptions: {
  17301. value = new tflite::HashtableSizeOptionsT(*reinterpret_cast<tflite::HashtableSizeOptionsT *>(u.value));
  17302. break;
  17303. }
  17304. case BuiltinOptions_VarHandleOptions: {
  17305. value = new tflite::VarHandleOptionsT(*reinterpret_cast<tflite::VarHandleOptionsT *>(u.value));
  17306. break;
  17307. }
  17308. case BuiltinOptions_ReadVariableOptions: {
  17309. value = new tflite::ReadVariableOptionsT(*reinterpret_cast<tflite::ReadVariableOptionsT *>(u.value));
  17310. break;
  17311. }
  17312. case BuiltinOptions_AssignVariableOptions: {
  17313. value = new tflite::AssignVariableOptionsT(*reinterpret_cast<tflite::AssignVariableOptionsT *>(u.value));
  17314. break;
  17315. }
  17316. case BuiltinOptions_RandomOptions: {
  17317. value = new tflite::RandomOptionsT(*reinterpret_cast<tflite::RandomOptionsT *>(u.value));
  17318. break;
  17319. }
  17320. case BuiltinOptions_BucketizeOptions: {
  17321. value = new tflite::BucketizeOptionsT(*reinterpret_cast<tflite::BucketizeOptionsT *>(u.value));
  17322. break;
  17323. }
  17324. case BuiltinOptions_GeluOptions: {
  17325. value = new tflite::GeluOptionsT(*reinterpret_cast<tflite::GeluOptionsT *>(u.value));
  17326. break;
  17327. }
  17328. case BuiltinOptions_DynamicUpdateSliceOptions: {
  17329. value = new tflite::DynamicUpdateSliceOptionsT(*reinterpret_cast<tflite::DynamicUpdateSliceOptionsT *>(u.value));
  17330. break;
  17331. }
  17332. case BuiltinOptions_UnsortedSegmentProdOptions: {
  17333. value = new tflite::UnsortedSegmentProdOptionsT(*reinterpret_cast<tflite::UnsortedSegmentProdOptionsT *>(u.value));
  17334. break;
  17335. }
  17336. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  17337. value = new tflite::UnsortedSegmentMaxOptionsT(*reinterpret_cast<tflite::UnsortedSegmentMaxOptionsT *>(u.value));
  17338. break;
  17339. }
  17340. case BuiltinOptions_UnsortedSegmentMinOptions: {
  17341. value = new tflite::UnsortedSegmentMinOptionsT(*reinterpret_cast<tflite::UnsortedSegmentMinOptionsT *>(u.value));
  17342. break;
  17343. }
  17344. case BuiltinOptions_UnsortedSegmentSumOptions: {
  17345. value = new tflite::UnsortedSegmentSumOptionsT(*reinterpret_cast<tflite::UnsortedSegmentSumOptionsT *>(u.value));
  17346. break;
  17347. }
  17348. case BuiltinOptions_ATan2Options: {
  17349. value = new tflite::ATan2OptionsT(*reinterpret_cast<tflite::ATan2OptionsT *>(u.value));
  17350. break;
  17351. }
  17352. default:
  17353. break;
  17354. }
  17355. }
  17356. inline void BuiltinOptionsUnion::Reset() {
  17357. switch (type) {
  17358. case BuiltinOptions_Conv2DOptions: {
  17359. auto ptr = reinterpret_cast<tflite::Conv2DOptionsT *>(value);
  17360. delete ptr;
  17361. break;
  17362. }
  17363. case BuiltinOptions_DepthwiseConv2DOptions: {
  17364. auto ptr = reinterpret_cast<tflite::DepthwiseConv2DOptionsT *>(value);
  17365. delete ptr;
  17366. break;
  17367. }
  17368. case BuiltinOptions_ConcatEmbeddingsOptions: {
  17369. auto ptr = reinterpret_cast<tflite::ConcatEmbeddingsOptionsT *>(value);
  17370. delete ptr;
  17371. break;
  17372. }
  17373. case BuiltinOptions_LSHProjectionOptions: {
  17374. auto ptr = reinterpret_cast<tflite::LSHProjectionOptionsT *>(value);
  17375. delete ptr;
  17376. break;
  17377. }
  17378. case BuiltinOptions_Pool2DOptions: {
  17379. auto ptr = reinterpret_cast<tflite::Pool2DOptionsT *>(value);
  17380. delete ptr;
  17381. break;
  17382. }
  17383. case BuiltinOptions_SVDFOptions: {
  17384. auto ptr = reinterpret_cast<tflite::SVDFOptionsT *>(value);
  17385. delete ptr;
  17386. break;
  17387. }
  17388. case BuiltinOptions_RNNOptions: {
  17389. auto ptr = reinterpret_cast<tflite::RNNOptionsT *>(value);
  17390. delete ptr;
  17391. break;
  17392. }
  17393. case BuiltinOptions_FullyConnectedOptions: {
  17394. auto ptr = reinterpret_cast<tflite::FullyConnectedOptionsT *>(value);
  17395. delete ptr;
  17396. break;
  17397. }
  17398. case BuiltinOptions_SoftmaxOptions: {
  17399. auto ptr = reinterpret_cast<tflite::SoftmaxOptionsT *>(value);
  17400. delete ptr;
  17401. break;
  17402. }
  17403. case BuiltinOptions_ConcatenationOptions: {
  17404. auto ptr = reinterpret_cast<tflite::ConcatenationOptionsT *>(value);
  17405. delete ptr;
  17406. break;
  17407. }
  17408. case BuiltinOptions_AddOptions: {
  17409. auto ptr = reinterpret_cast<tflite::AddOptionsT *>(value);
  17410. delete ptr;
  17411. break;
  17412. }
  17413. case BuiltinOptions_L2NormOptions: {
  17414. auto ptr = reinterpret_cast<tflite::L2NormOptionsT *>(value);
  17415. delete ptr;
  17416. break;
  17417. }
  17418. case BuiltinOptions_LocalResponseNormalizationOptions: {
  17419. auto ptr = reinterpret_cast<tflite::LocalResponseNormalizationOptionsT *>(value);
  17420. delete ptr;
  17421. break;
  17422. }
  17423. case BuiltinOptions_LSTMOptions: {
  17424. auto ptr = reinterpret_cast<tflite::LSTMOptionsT *>(value);
  17425. delete ptr;
  17426. break;
  17427. }
  17428. case BuiltinOptions_ResizeBilinearOptions: {
  17429. auto ptr = reinterpret_cast<tflite::ResizeBilinearOptionsT *>(value);
  17430. delete ptr;
  17431. break;
  17432. }
  17433. case BuiltinOptions_CallOptions: {
  17434. auto ptr = reinterpret_cast<tflite::CallOptionsT *>(value);
  17435. delete ptr;
  17436. break;
  17437. }
  17438. case BuiltinOptions_ReshapeOptions: {
  17439. auto ptr = reinterpret_cast<tflite::ReshapeOptionsT *>(value);
  17440. delete ptr;
  17441. break;
  17442. }
  17443. case BuiltinOptions_SkipGramOptions: {
  17444. auto ptr = reinterpret_cast<tflite::SkipGramOptionsT *>(value);
  17445. delete ptr;
  17446. break;
  17447. }
  17448. case BuiltinOptions_SpaceToDepthOptions: {
  17449. auto ptr = reinterpret_cast<tflite::SpaceToDepthOptionsT *>(value);
  17450. delete ptr;
  17451. break;
  17452. }
  17453. case BuiltinOptions_EmbeddingLookupSparseOptions: {
  17454. auto ptr = reinterpret_cast<tflite::EmbeddingLookupSparseOptionsT *>(value);
  17455. delete ptr;
  17456. break;
  17457. }
  17458. case BuiltinOptions_MulOptions: {
  17459. auto ptr = reinterpret_cast<tflite::MulOptionsT *>(value);
  17460. delete ptr;
  17461. break;
  17462. }
  17463. case BuiltinOptions_PadOptions: {
  17464. auto ptr = reinterpret_cast<tflite::PadOptionsT *>(value);
  17465. delete ptr;
  17466. break;
  17467. }
  17468. case BuiltinOptions_GatherOptions: {
  17469. auto ptr = reinterpret_cast<tflite::GatherOptionsT *>(value);
  17470. delete ptr;
  17471. break;
  17472. }
  17473. case BuiltinOptions_BatchToSpaceNDOptions: {
  17474. auto ptr = reinterpret_cast<tflite::BatchToSpaceNDOptionsT *>(value);
  17475. delete ptr;
  17476. break;
  17477. }
  17478. case BuiltinOptions_SpaceToBatchNDOptions: {
  17479. auto ptr = reinterpret_cast<tflite::SpaceToBatchNDOptionsT *>(value);
  17480. delete ptr;
  17481. break;
  17482. }
  17483. case BuiltinOptions_TransposeOptions: {
  17484. auto ptr = reinterpret_cast<tflite::TransposeOptionsT *>(value);
  17485. delete ptr;
  17486. break;
  17487. }
  17488. case BuiltinOptions_ReducerOptions: {
  17489. auto ptr = reinterpret_cast<tflite::ReducerOptionsT *>(value);
  17490. delete ptr;
  17491. break;
  17492. }
  17493. case BuiltinOptions_SubOptions: {
  17494. auto ptr = reinterpret_cast<tflite::SubOptionsT *>(value);
  17495. delete ptr;
  17496. break;
  17497. }
  17498. case BuiltinOptions_DivOptions: {
  17499. auto ptr = reinterpret_cast<tflite::DivOptionsT *>(value);
  17500. delete ptr;
  17501. break;
  17502. }
  17503. case BuiltinOptions_SqueezeOptions: {
  17504. auto ptr = reinterpret_cast<tflite::SqueezeOptionsT *>(value);
  17505. delete ptr;
  17506. break;
  17507. }
  17508. case BuiltinOptions_SequenceRNNOptions: {
  17509. auto ptr = reinterpret_cast<tflite::SequenceRNNOptionsT *>(value);
  17510. delete ptr;
  17511. break;
  17512. }
  17513. case BuiltinOptions_StridedSliceOptions: {
  17514. auto ptr = reinterpret_cast<tflite::StridedSliceOptionsT *>(value);
  17515. delete ptr;
  17516. break;
  17517. }
  17518. case BuiltinOptions_ExpOptions: {
  17519. auto ptr = reinterpret_cast<tflite::ExpOptionsT *>(value);
  17520. delete ptr;
  17521. break;
  17522. }
  17523. case BuiltinOptions_TopKV2Options: {
  17524. auto ptr = reinterpret_cast<tflite::TopKV2OptionsT *>(value);
  17525. delete ptr;
  17526. break;
  17527. }
  17528. case BuiltinOptions_SplitOptions: {
  17529. auto ptr = reinterpret_cast<tflite::SplitOptionsT *>(value);
  17530. delete ptr;
  17531. break;
  17532. }
  17533. case BuiltinOptions_LogSoftmaxOptions: {
  17534. auto ptr = reinterpret_cast<tflite::LogSoftmaxOptionsT *>(value);
  17535. delete ptr;
  17536. break;
  17537. }
  17538. case BuiltinOptions_CastOptions: {
  17539. auto ptr = reinterpret_cast<tflite::CastOptionsT *>(value);
  17540. delete ptr;
  17541. break;
  17542. }
  17543. case BuiltinOptions_DequantizeOptions: {
  17544. auto ptr = reinterpret_cast<tflite::DequantizeOptionsT *>(value);
  17545. delete ptr;
  17546. break;
  17547. }
  17548. case BuiltinOptions_MaximumMinimumOptions: {
  17549. auto ptr = reinterpret_cast<tflite::MaximumMinimumOptionsT *>(value);
  17550. delete ptr;
  17551. break;
  17552. }
  17553. case BuiltinOptions_ArgMaxOptions: {
  17554. auto ptr = reinterpret_cast<tflite::ArgMaxOptionsT *>(value);
  17555. delete ptr;
  17556. break;
  17557. }
  17558. case BuiltinOptions_LessOptions: {
  17559. auto ptr = reinterpret_cast<tflite::LessOptionsT *>(value);
  17560. delete ptr;
  17561. break;
  17562. }
  17563. case BuiltinOptions_NegOptions: {
  17564. auto ptr = reinterpret_cast<tflite::NegOptionsT *>(value);
  17565. delete ptr;
  17566. break;
  17567. }
  17568. case BuiltinOptions_PadV2Options: {
  17569. auto ptr = reinterpret_cast<tflite::PadV2OptionsT *>(value);
  17570. delete ptr;
  17571. break;
  17572. }
  17573. case BuiltinOptions_GreaterOptions: {
  17574. auto ptr = reinterpret_cast<tflite::GreaterOptionsT *>(value);
  17575. delete ptr;
  17576. break;
  17577. }
  17578. case BuiltinOptions_GreaterEqualOptions: {
  17579. auto ptr = reinterpret_cast<tflite::GreaterEqualOptionsT *>(value);
  17580. delete ptr;
  17581. break;
  17582. }
  17583. case BuiltinOptions_LessEqualOptions: {
  17584. auto ptr = reinterpret_cast<tflite::LessEqualOptionsT *>(value);
  17585. delete ptr;
  17586. break;
  17587. }
  17588. case BuiltinOptions_SelectOptions: {
  17589. auto ptr = reinterpret_cast<tflite::SelectOptionsT *>(value);
  17590. delete ptr;
  17591. break;
  17592. }
  17593. case BuiltinOptions_SliceOptions: {
  17594. auto ptr = reinterpret_cast<tflite::SliceOptionsT *>(value);
  17595. delete ptr;
  17596. break;
  17597. }
  17598. case BuiltinOptions_TransposeConvOptions: {
  17599. auto ptr = reinterpret_cast<tflite::TransposeConvOptionsT *>(value);
  17600. delete ptr;
  17601. break;
  17602. }
  17603. case BuiltinOptions_SparseToDenseOptions: {
  17604. auto ptr = reinterpret_cast<tflite::SparseToDenseOptionsT *>(value);
  17605. delete ptr;
  17606. break;
  17607. }
  17608. case BuiltinOptions_TileOptions: {
  17609. auto ptr = reinterpret_cast<tflite::TileOptionsT *>(value);
  17610. delete ptr;
  17611. break;
  17612. }
  17613. case BuiltinOptions_ExpandDimsOptions: {
  17614. auto ptr = reinterpret_cast<tflite::ExpandDimsOptionsT *>(value);
  17615. delete ptr;
  17616. break;
  17617. }
  17618. case BuiltinOptions_EqualOptions: {
  17619. auto ptr = reinterpret_cast<tflite::EqualOptionsT *>(value);
  17620. delete ptr;
  17621. break;
  17622. }
  17623. case BuiltinOptions_NotEqualOptions: {
  17624. auto ptr = reinterpret_cast<tflite::NotEqualOptionsT *>(value);
  17625. delete ptr;
  17626. break;
  17627. }
  17628. case BuiltinOptions_ShapeOptions: {
  17629. auto ptr = reinterpret_cast<tflite::ShapeOptionsT *>(value);
  17630. delete ptr;
  17631. break;
  17632. }
  17633. case BuiltinOptions_PowOptions: {
  17634. auto ptr = reinterpret_cast<tflite::PowOptionsT *>(value);
  17635. delete ptr;
  17636. break;
  17637. }
  17638. case BuiltinOptions_ArgMinOptions: {
  17639. auto ptr = reinterpret_cast<tflite::ArgMinOptionsT *>(value);
  17640. delete ptr;
  17641. break;
  17642. }
  17643. case BuiltinOptions_FakeQuantOptions: {
  17644. auto ptr = reinterpret_cast<tflite::FakeQuantOptionsT *>(value);
  17645. delete ptr;
  17646. break;
  17647. }
  17648. case BuiltinOptions_PackOptions: {
  17649. auto ptr = reinterpret_cast<tflite::PackOptionsT *>(value);
  17650. delete ptr;
  17651. break;
  17652. }
  17653. case BuiltinOptions_LogicalOrOptions: {
  17654. auto ptr = reinterpret_cast<tflite::LogicalOrOptionsT *>(value);
  17655. delete ptr;
  17656. break;
  17657. }
  17658. case BuiltinOptions_OneHotOptions: {
  17659. auto ptr = reinterpret_cast<tflite::OneHotOptionsT *>(value);
  17660. delete ptr;
  17661. break;
  17662. }
  17663. case BuiltinOptions_LogicalAndOptions: {
  17664. auto ptr = reinterpret_cast<tflite::LogicalAndOptionsT *>(value);
  17665. delete ptr;
  17666. break;
  17667. }
  17668. case BuiltinOptions_LogicalNotOptions: {
  17669. auto ptr = reinterpret_cast<tflite::LogicalNotOptionsT *>(value);
  17670. delete ptr;
  17671. break;
  17672. }
  17673. case BuiltinOptions_UnpackOptions: {
  17674. auto ptr = reinterpret_cast<tflite::UnpackOptionsT *>(value);
  17675. delete ptr;
  17676. break;
  17677. }
  17678. case BuiltinOptions_FloorDivOptions: {
  17679. auto ptr = reinterpret_cast<tflite::FloorDivOptionsT *>(value);
  17680. delete ptr;
  17681. break;
  17682. }
  17683. case BuiltinOptions_SquareOptions: {
  17684. auto ptr = reinterpret_cast<tflite::SquareOptionsT *>(value);
  17685. delete ptr;
  17686. break;
  17687. }
  17688. case BuiltinOptions_ZerosLikeOptions: {
  17689. auto ptr = reinterpret_cast<tflite::ZerosLikeOptionsT *>(value);
  17690. delete ptr;
  17691. break;
  17692. }
  17693. case BuiltinOptions_FillOptions: {
  17694. auto ptr = reinterpret_cast<tflite::FillOptionsT *>(value);
  17695. delete ptr;
  17696. break;
  17697. }
  17698. case BuiltinOptions_BidirectionalSequenceLSTMOptions: {
  17699. auto ptr = reinterpret_cast<tflite::BidirectionalSequenceLSTMOptionsT *>(value);
  17700. delete ptr;
  17701. break;
  17702. }
  17703. case BuiltinOptions_BidirectionalSequenceRNNOptions: {
  17704. auto ptr = reinterpret_cast<tflite::BidirectionalSequenceRNNOptionsT *>(value);
  17705. delete ptr;
  17706. break;
  17707. }
  17708. case BuiltinOptions_UnidirectionalSequenceLSTMOptions: {
  17709. auto ptr = reinterpret_cast<tflite::UnidirectionalSequenceLSTMOptionsT *>(value);
  17710. delete ptr;
  17711. break;
  17712. }
  17713. case BuiltinOptions_FloorModOptions: {
  17714. auto ptr = reinterpret_cast<tflite::FloorModOptionsT *>(value);
  17715. delete ptr;
  17716. break;
  17717. }
  17718. case BuiltinOptions_RangeOptions: {
  17719. auto ptr = reinterpret_cast<tflite::RangeOptionsT *>(value);
  17720. delete ptr;
  17721. break;
  17722. }
  17723. case BuiltinOptions_ResizeNearestNeighborOptions: {
  17724. auto ptr = reinterpret_cast<tflite::ResizeNearestNeighborOptionsT *>(value);
  17725. delete ptr;
  17726. break;
  17727. }
  17728. case BuiltinOptions_LeakyReluOptions: {
  17729. auto ptr = reinterpret_cast<tflite::LeakyReluOptionsT *>(value);
  17730. delete ptr;
  17731. break;
  17732. }
  17733. case BuiltinOptions_SquaredDifferenceOptions: {
  17734. auto ptr = reinterpret_cast<tflite::SquaredDifferenceOptionsT *>(value);
  17735. delete ptr;
  17736. break;
  17737. }
  17738. case BuiltinOptions_MirrorPadOptions: {
  17739. auto ptr = reinterpret_cast<tflite::MirrorPadOptionsT *>(value);
  17740. delete ptr;
  17741. break;
  17742. }
  17743. case BuiltinOptions_AbsOptions: {
  17744. auto ptr = reinterpret_cast<tflite::AbsOptionsT *>(value);
  17745. delete ptr;
  17746. break;
  17747. }
  17748. case BuiltinOptions_SplitVOptions: {
  17749. auto ptr = reinterpret_cast<tflite::SplitVOptionsT *>(value);
  17750. delete ptr;
  17751. break;
  17752. }
  17753. case BuiltinOptions_UniqueOptions: {
  17754. auto ptr = reinterpret_cast<tflite::UniqueOptionsT *>(value);
  17755. delete ptr;
  17756. break;
  17757. }
  17758. case BuiltinOptions_ReverseV2Options: {
  17759. auto ptr = reinterpret_cast<tflite::ReverseV2OptionsT *>(value);
  17760. delete ptr;
  17761. break;
  17762. }
  17763. case BuiltinOptions_AddNOptions: {
  17764. auto ptr = reinterpret_cast<tflite::AddNOptionsT *>(value);
  17765. delete ptr;
  17766. break;
  17767. }
  17768. case BuiltinOptions_GatherNdOptions: {
  17769. auto ptr = reinterpret_cast<tflite::GatherNdOptionsT *>(value);
  17770. delete ptr;
  17771. break;
  17772. }
  17773. case BuiltinOptions_CosOptions: {
  17774. auto ptr = reinterpret_cast<tflite::CosOptionsT *>(value);
  17775. delete ptr;
  17776. break;
  17777. }
  17778. case BuiltinOptions_WhereOptions: {
  17779. auto ptr = reinterpret_cast<tflite::WhereOptionsT *>(value);
  17780. delete ptr;
  17781. break;
  17782. }
  17783. case BuiltinOptions_RankOptions: {
  17784. auto ptr = reinterpret_cast<tflite::RankOptionsT *>(value);
  17785. delete ptr;
  17786. break;
  17787. }
  17788. case BuiltinOptions_ReverseSequenceOptions: {
  17789. auto ptr = reinterpret_cast<tflite::ReverseSequenceOptionsT *>(value);
  17790. delete ptr;
  17791. break;
  17792. }
  17793. case BuiltinOptions_MatrixDiagOptions: {
  17794. auto ptr = reinterpret_cast<tflite::MatrixDiagOptionsT *>(value);
  17795. delete ptr;
  17796. break;
  17797. }
  17798. case BuiltinOptions_QuantizeOptions: {
  17799. auto ptr = reinterpret_cast<tflite::QuantizeOptionsT *>(value);
  17800. delete ptr;
  17801. break;
  17802. }
  17803. case BuiltinOptions_MatrixSetDiagOptions: {
  17804. auto ptr = reinterpret_cast<tflite::MatrixSetDiagOptionsT *>(value);
  17805. delete ptr;
  17806. break;
  17807. }
  17808. case BuiltinOptions_HardSwishOptions: {
  17809. auto ptr = reinterpret_cast<tflite::HardSwishOptionsT *>(value);
  17810. delete ptr;
  17811. break;
  17812. }
  17813. case BuiltinOptions_IfOptions: {
  17814. auto ptr = reinterpret_cast<tflite::IfOptionsT *>(value);
  17815. delete ptr;
  17816. break;
  17817. }
  17818. case BuiltinOptions_WhileOptions: {
  17819. auto ptr = reinterpret_cast<tflite::WhileOptionsT *>(value);
  17820. delete ptr;
  17821. break;
  17822. }
  17823. case BuiltinOptions_DepthToSpaceOptions: {
  17824. auto ptr = reinterpret_cast<tflite::DepthToSpaceOptionsT *>(value);
  17825. delete ptr;
  17826. break;
  17827. }
  17828. case BuiltinOptions_NonMaxSuppressionV4Options: {
  17829. auto ptr = reinterpret_cast<tflite::NonMaxSuppressionV4OptionsT *>(value);
  17830. delete ptr;
  17831. break;
  17832. }
  17833. case BuiltinOptions_NonMaxSuppressionV5Options: {
  17834. auto ptr = reinterpret_cast<tflite::NonMaxSuppressionV5OptionsT *>(value);
  17835. delete ptr;
  17836. break;
  17837. }
  17838. case BuiltinOptions_ScatterNdOptions: {
  17839. auto ptr = reinterpret_cast<tflite::ScatterNdOptionsT *>(value);
  17840. delete ptr;
  17841. break;
  17842. }
  17843. case BuiltinOptions_SelectV2Options: {
  17844. auto ptr = reinterpret_cast<tflite::SelectV2OptionsT *>(value);
  17845. delete ptr;
  17846. break;
  17847. }
  17848. case BuiltinOptions_DensifyOptions: {
  17849. auto ptr = reinterpret_cast<tflite::DensifyOptionsT *>(value);
  17850. delete ptr;
  17851. break;
  17852. }
  17853. case BuiltinOptions_SegmentSumOptions: {
  17854. auto ptr = reinterpret_cast<tflite::SegmentSumOptionsT *>(value);
  17855. delete ptr;
  17856. break;
  17857. }
  17858. case BuiltinOptions_BatchMatMulOptions: {
  17859. auto ptr = reinterpret_cast<tflite::BatchMatMulOptionsT *>(value);
  17860. delete ptr;
  17861. break;
  17862. }
  17863. case BuiltinOptions_CumsumOptions: {
  17864. auto ptr = reinterpret_cast<tflite::CumsumOptionsT *>(value);
  17865. delete ptr;
  17866. break;
  17867. }
  17868. case BuiltinOptions_CallOnceOptions: {
  17869. auto ptr = reinterpret_cast<tflite::CallOnceOptionsT *>(value);
  17870. delete ptr;
  17871. break;
  17872. }
  17873. case BuiltinOptions_BroadcastToOptions: {
  17874. auto ptr = reinterpret_cast<tflite::BroadcastToOptionsT *>(value);
  17875. delete ptr;
  17876. break;
  17877. }
  17878. case BuiltinOptions_Rfft2dOptions: {
  17879. auto ptr = reinterpret_cast<tflite::Rfft2dOptionsT *>(value);
  17880. delete ptr;
  17881. break;
  17882. }
  17883. case BuiltinOptions_Conv3DOptions: {
  17884. auto ptr = reinterpret_cast<tflite::Conv3DOptionsT *>(value);
  17885. delete ptr;
  17886. break;
  17887. }
  17888. case BuiltinOptions_HashtableOptions: {
  17889. auto ptr = reinterpret_cast<tflite::HashtableOptionsT *>(value);
  17890. delete ptr;
  17891. break;
  17892. }
  17893. case BuiltinOptions_HashtableFindOptions: {
  17894. auto ptr = reinterpret_cast<tflite::HashtableFindOptionsT *>(value);
  17895. delete ptr;
  17896. break;
  17897. }
  17898. case BuiltinOptions_HashtableImportOptions: {
  17899. auto ptr = reinterpret_cast<tflite::HashtableImportOptionsT *>(value);
  17900. delete ptr;
  17901. break;
  17902. }
  17903. case BuiltinOptions_HashtableSizeOptions: {
  17904. auto ptr = reinterpret_cast<tflite::HashtableSizeOptionsT *>(value);
  17905. delete ptr;
  17906. break;
  17907. }
  17908. case BuiltinOptions_VarHandleOptions: {
  17909. auto ptr = reinterpret_cast<tflite::VarHandleOptionsT *>(value);
  17910. delete ptr;
  17911. break;
  17912. }
  17913. case BuiltinOptions_ReadVariableOptions: {
  17914. auto ptr = reinterpret_cast<tflite::ReadVariableOptionsT *>(value);
  17915. delete ptr;
  17916. break;
  17917. }
  17918. case BuiltinOptions_AssignVariableOptions: {
  17919. auto ptr = reinterpret_cast<tflite::AssignVariableOptionsT *>(value);
  17920. delete ptr;
  17921. break;
  17922. }
  17923. case BuiltinOptions_RandomOptions: {
  17924. auto ptr = reinterpret_cast<tflite::RandomOptionsT *>(value);
  17925. delete ptr;
  17926. break;
  17927. }
  17928. case BuiltinOptions_BucketizeOptions: {
  17929. auto ptr = reinterpret_cast<tflite::BucketizeOptionsT *>(value);
  17930. delete ptr;
  17931. break;
  17932. }
  17933. case BuiltinOptions_GeluOptions: {
  17934. auto ptr = reinterpret_cast<tflite::GeluOptionsT *>(value);
  17935. delete ptr;
  17936. break;
  17937. }
  17938. case BuiltinOptions_DynamicUpdateSliceOptions: {
  17939. auto ptr = reinterpret_cast<tflite::DynamicUpdateSliceOptionsT *>(value);
  17940. delete ptr;
  17941. break;
  17942. }
  17943. case BuiltinOptions_UnsortedSegmentProdOptions: {
  17944. auto ptr = reinterpret_cast<tflite::UnsortedSegmentProdOptionsT *>(value);
  17945. delete ptr;
  17946. break;
  17947. }
  17948. case BuiltinOptions_UnsortedSegmentMaxOptions: {
  17949. auto ptr = reinterpret_cast<tflite::UnsortedSegmentMaxOptionsT *>(value);
  17950. delete ptr;
  17951. break;
  17952. }
  17953. case BuiltinOptions_UnsortedSegmentMinOptions: {
  17954. auto ptr = reinterpret_cast<tflite::UnsortedSegmentMinOptionsT *>(value);
  17955. delete ptr;
  17956. break;
  17957. }
  17958. case BuiltinOptions_UnsortedSegmentSumOptions: {
  17959. auto ptr = reinterpret_cast<tflite::UnsortedSegmentSumOptionsT *>(value);
  17960. delete ptr;
  17961. break;
  17962. }
  17963. case BuiltinOptions_ATan2Options: {
  17964. auto ptr = reinterpret_cast<tflite::ATan2OptionsT *>(value);
  17965. delete ptr;
  17966. break;
  17967. }
  17968. default: break;
  17969. }
  17970. value = nullptr;
  17971. type = BuiltinOptions_NONE;
  17972. }
  17973. inline const tflite::Model *GetModel(const void *buf) {
  17974. return flatbuffers::GetRoot<tflite::Model>(buf);
  17975. }
  17976. inline const tflite::Model *GetSizePrefixedModel(const void *buf) {
  17977. return flatbuffers::GetSizePrefixedRoot<tflite::Model>(buf);
  17978. }
  17979. inline const char *ModelIdentifier() {
  17980. return "TFL3";
  17981. }
  17982. inline bool ModelBufferHasIdentifier(const void *buf) {
  17983. return flatbuffers::BufferHasIdentifier(
  17984. buf, ModelIdentifier());
  17985. }
  17986. inline bool VerifyModelBuffer(
  17987. flatbuffers::Verifier &verifier) {
  17988. return verifier.VerifyBuffer<tflite::Model>(ModelIdentifier());
  17989. }
  17990. inline bool VerifySizePrefixedModelBuffer(
  17991. flatbuffers::Verifier &verifier) {
  17992. return verifier.VerifySizePrefixedBuffer<tflite::Model>(ModelIdentifier());
  17993. }
  17994. inline const char *ModelExtension() {
  17995. return "tflite";
  17996. }
  17997. inline void FinishModelBuffer(
  17998. flatbuffers::FlatBufferBuilder &fbb,
  17999. flatbuffers::Offset<tflite::Model> root) {
  18000. fbb.Finish(root, ModelIdentifier());
  18001. }
  18002. inline void FinishSizePrefixedModelBuffer(
  18003. flatbuffers::FlatBufferBuilder &fbb,
  18004. flatbuffers::Offset<tflite::Model> root) {
  18005. fbb.FinishSizePrefixed(root, ModelIdentifier());
  18006. }
  18007. inline std::unique_ptr<tflite::ModelT> UnPackModel(
  18008. const void *buf,
  18009. const flatbuffers::resolver_function_t *res = nullptr) {
  18010. return std::unique_ptr<tflite::ModelT>(GetModel(buf)->UnPack(res));
  18011. }
  18012. inline std::unique_ptr<tflite::ModelT> UnPackSizePrefixedModel(
  18013. const void *buf,
  18014. const flatbuffers::resolver_function_t *res = nullptr) {
  18015. return std::unique_ptr<tflite::ModelT>(GetSizePrefixedModel(buf)->UnPack(res));
  18016. }
  18017. } // namespace tflite
  18018. #endif // FLATBUFFERS_GENERATED_SCHEMA_TFLITE_H_