| public func getVersion() -> Int { |
| #if BEFORE |
| return 0 |
| #else |
| return 1 |
| #endif |
| } |
| |
| open class Base { |
| public init() {} |
| open var property: String { |
| return "Base.property" |
| } |
| open var nonOverriddenProperty: String { |
| return "Base.nonOverriddenProperty" |
| } |
| open class var classProperty: String { |
| return "Base.classProperty" |
| } |
| } |
| |
| open class InBetween : Base { |
| open override var property: String { |
| return "InBetween.property" |
| } |
| open override class var classProperty: String { |
| return "InBetween.classProperty" |
| } |
| } |
| |
| #if BEFORE |
| open class AddInterposingProperty : Base {} |
| #else |
| open class AddInterposingProperty : Base { |
| open override var property: String { |
| return "AddInterposingProperty.property" |
| } |
| open override class var classProperty: String { |
| return "AddInterposingProperty.classProperty" |
| } |
| } |
| #endif |
| |
| #if BEFORE |
| open class RemoveInterposingProperty : Base { |
| open override var property: String { |
| return "RemoveInterposingProperty.property" |
| } |
| open override class var classProperty: String { |
| return "RemoveInterposingProperty.classProperty" |
| } |
| } |
| #else |
| open class RemoveInterposingProperty : Base {} |
| #endif |
| |
| #if BEFORE |
| open class InsertSuperclass : Base {} |
| #else |
| open class InsertSuperclass : InBetween {} |
| #endif |