@startuml class HideIfTest { + hide1 : bool + hide2 : bool } class HideIfNest1 { + hide1 : bool + hide2 : bool + Hide1 : bool <> + Hide2 : bool <> + hideIfAll : int + hideIfAny : int + hideIfEnum : int + hideIfEnumFlag : int + hideIfEnumFlagMulti : int } class HideIfNest2 { + hide1 : bool + hide2 : bool + GetHide1() : bool + GetHide2() : bool + GetEnum1() : HideIfEnum + GetEnum2() : HideIfEnumFlag } enum HideIfEnum { Case0, Case1, Case2, } enum HideIfEnumFlag { Flag0= 1, Flag1= 2, Flag2= 4, Flag3= 8, } MonoBehaviour <|-- HideIfTest HideIfTest --> "enum1" HideIfEnum HideIfTest --> "enum2" HideIfEnumFlag HideIfTest --> "nest1" HideIfNest1 HideIfNest1 --> "enum1" HideIfEnum HideIfNest1 --> "enum2" HideIfEnumFlag HideIfNest1 --> "Enum1" HideIfEnum HideIfNest1 --> "Enum2" HideIfEnumFlag HideIfNest1 --> "nest2" HideIfNest2 HideIfNest2 --> "enum1" HideIfEnum HideIfNest2 --> "enum2" HideIfEnumFlag HideIfNest2 o-> "hideIfAll" Vector2 HideIfNest2 o-> "hideIfAny" Vector2 HideIfNest2 o-> "hideIfEnum" Vector2 HideIfNest2 --> "hideIfEnumFlag" Vector2 HideIfNest2 --> "hideIfEnumFlagMulti" Vector2 @enduml