@startuml class ShowIfTest { + show1 : bool + show2 : bool } class ShowIfNest1 { + show1 : bool + show2 : bool + Show1 : bool <> + Show2 : bool <> + showIfAll : int + showIfAny : int + showIfEnum : int + showIfEnumFlag : int + showIfEnumFlagMulti : int } class ShowIfNest2 { + show1 : bool + show2 : bool + GetShow1() : bool + GetShow2() : bool + GetEnum1() : ShowIfEnum + GetEnum2() : ShowIfEnumFlag } enum ShowIfEnum { Case0, Case1, Case2, } enum ShowIfEnumFlag { Flag0= 1, Flag1= 2, Flag2= 4, Flag3= 8, } MonoBehaviour <|-- ShowIfTest ShowIfTest --> "enum1" ShowIfEnum ShowIfTest --> "enum2" ShowIfEnumFlag ShowIfTest --> "nest1" ShowIfNest1 ShowIfNest1 --> "enum1" ShowIfEnum ShowIfNest1 --> "enum2" ShowIfEnumFlag ShowIfNest1 --> "Enum1" ShowIfEnum ShowIfNest1 --> "Enum2" ShowIfEnumFlag ShowIfNest1 --> "nest2" ShowIfNest2 ShowIfNest2 --> "enum1" ShowIfEnum ShowIfNest2 --> "enum2" ShowIfEnumFlag ShowIfNest2 o-> "showIfAll" Vector2 ShowIfNest2 o-> "showIfAny" Vector2 ShowIfNest2 o-> "showIfEnum" Vector2 ShowIfNest2 --> "showIfEnumFlag" Vector2 ShowIfNest2 --> "showIfEnumFlagMulti" Vector2 @enduml