package Ġorg . lf lang . generator . ts Ċ Ċ import Ġorg . lf lang . AST Utils Ċ import Ġorg . lf lang . generator . Target Types Ċ import Ġorg . lf lang . lf . State Var Ċ Ċ object ĠT ST ypes Ġ: ĠTarget Types Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġget Target Type ( s : ĠState Var ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtype Ġ= Ġsuper . getTarget Type ( s ) ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ(! AST Utils . isInitialized ( s )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ type Ġ| Ġundefined " ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtype ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġsupports Gener ics (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Target Time Type (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Time Value " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Target Tag Type (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Time Value " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Target Undefined Type (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Present " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Target Fixed Size ListType ( base Type : ĠString , Ġsize : ĠInt ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Array ($ size )< $ base Type >" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Target Variable Size ListType ( base Type : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Array <$ base Type >" ĊĠĠĠ Ġ} Ċ }