12345678910111213141516171819202122232425262728293031323334 |
- //
- // NSString+FLEX.h
- // FLEX
- //
- // Created by Tanner on 3/26/17.
- // Copyright © 2017 Tanner Bennett. All rights reserved.
- //
- #import "FLEXRuntimeConstants.h"
- @interface NSString (FLEXTypeEncoding)
- ///@return whether this type starts with the const specifier
- @property (nonatomic, readonly) BOOL flex_typeIsConst;
- /// @return the first char in the type encoding that is not the const specifier
- @property (nonatomic, readonly) FLEXTypeEncoding flex_firstNonConstType;
- /// @return the first char in the type encoding after the pointer specifier, if it is a pointer
- @property (nonatomic, readonly) FLEXTypeEncoding flex_pointeeType;
- /// @return whether this type is an objc object of any kind, even if it's const
- @property (nonatomic, readonly) BOOL flex_typeIsObjectOrClass;
- /// @return the class named in this type encoding if it is of the form \c @"MYClass"
- @property (nonatomic, readonly) Class flex_typeClass;
- /// Includes C strings and selectors as well as regular pointers
- @property (nonatomic, readonly) BOOL flex_typeIsNonObjcPointer;
- @end
- @interface NSString (KeyPaths)
- - (NSString *)flex_stringByRemovingLastKeyPathComponent;
- - (NSString *)flex_stringByReplacingLastKeyPathComponent:(NSString *)replacement;
- @end
|