TyphoonOptionMatcher
Objective-C
@interface TyphoonOptionMatcher : NSObject
/** If 'option' equals 'optionValue' then use 'injection' */
- (void)caseEqual:(id)optionValue use:(id)injection;
/** If 'option' is kind of class 'optionClass' then use 'injection' */
- (void)caseKindOfClass:(Class)optionClass use:(id)injection;
/** If 'option' is member of class 'optionClass' then use 'injection' */
- (void)caseMemberOfClass:(Class)optionClass use:(id)injection;
/** When matcher can't match injection from optionValue, use 'injection' */
- (void)defaultUse:(id)injection;
/**
* If this method called, matcher will find definition using 'option' value as key for definition.
* @note When matching definition from 'option', 'caseEqual:use:', 'caseKindOfClass:use:' and 'caseMemberOfClass:use:' has higher priority than matching by definition key */
- (void)useDefinitionWithKeyMatchedOptionValue;
@end
Swift
class TyphoonOptionMatcher : NSObject
Undocumented
-
If ‘option’ equals ‘optionValue’ then use ‘injection’
Declaration
Objective-C
- (void)caseEqual:(id)optionValue use:(id)injection;
Swift
func caseEqual(_ optionValue: Any!, use injection: Any!)
-
If ‘option’ is kind of class ‘optionClass’ then use ‘injection’
Declaration
Objective-C
- (void)caseKindOfClass:(Class)optionClass use:(id)injection;
Swift
func caseKind(of optionClass: AnyClass!, use injection: Any!)
-
If ‘option’ is member of class ‘optionClass’ then use ‘injection’
Declaration
Objective-C
- (void)caseMemberOfClass:(Class)optionClass use:(id)injection;
Swift
func caseMember(of optionClass: AnyClass!, use injection: Any!)
-
When matcher can’t match injection from optionValue, use ‘injection’
Declaration
Objective-C
- (void)defaultUse:(id)injection;
Swift
func defaultUse(_ injection: Any!)
-
If this method called, matcher will find definition using ‘option’ value as key for definition.
Note
When matching definition from ‘option’, ‘caseEqual:use:’, ‘caseKindOfClass:use:’ and ‘caseMemberOfClass:use:’ has higher priority than matching by definition keyDeclaration
Objective-C
- (void)useDefinitionWithKeyMatchedOptionValue;
Swift
func useDefinitionWithKeyMatchedOptionValue()