1// automatically generated by the FlatBuffers compiler, do not modify 2 3/* eslint-disable @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any, @typescript-eslint/no-non-null-assertion */ 4 5import { FallingTub, FallingTubT } from './falling-tub.js'; 6import { HandFan, HandFanT } from './hand-fan.js'; 7 8 9export enum Gadget { 10 NONE = 0, 11 FallingTub = 1, 12 HandFan = 2 13} 14 15export function unionToGadget( 16 type: Gadget, 17 accessor: (obj:FallingTub|HandFan) => FallingTub|HandFan|null 18): FallingTub|HandFan|null { 19 switch(Gadget[type]) { 20 case 'NONE': return null; 21 case 'FallingTub': return accessor(new FallingTub())! as FallingTub; 22 case 'HandFan': return accessor(new HandFan())! as HandFan; 23 default: return null; 24 } 25} 26 27export function unionListToGadget( 28 type: Gadget, 29 accessor: (index: number, obj:FallingTub|HandFan) => FallingTub|HandFan|null, 30 index: number 31): FallingTub|HandFan|null { 32 switch(Gadget[type]) { 33 case 'NONE': return null; 34 case 'FallingTub': return accessor(index, new FallingTub())! as FallingTub; 35 case 'HandFan': return accessor(index, new HandFan())! as HandFan; 36 default: return null; 37 } 38} 39