/* Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠMIT Ġlicense Ġthat Ġcan Ġbe Ċ Ġ* Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . rust . lang . core . types . ty Ċ Ċ import Ġorg . rust . lang . core . types . infer . Type Folder Ċ import Ġorg . rust . lang . core . types . infer . Type Visitor Ċ Ċ data Ġclass ĠTy Reference ( val Ġreferenced : ĠTy , Ġval Ġmut ability : ĠMut ability ) Ġ: ĠTy ( referenced . flags ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġsuper Fold With ( folder : ĠType Folder ): ĠTy Ġ= ĊĠĠĠĠĠĠĠ ĠTy Reference ( referenced . fold With ( folder ), Ġmut ability ) ĊĊĠĠĠ Ġoverride Ġfun Ġsuper Visit With ( visitor : ĠType Visitor ): ĠBoolean Ġ= ĊĠĠĠĠĠĠĠ Ġreferenced . visit With ( visitor ) Ċ } Ċ