gpt4 book ai didi

ios - TyphoonOptionMatcher 与 conformsToProtocol

转载 作者:行者123 更新时间:2023-12-01 16:28:14 26 4
gpt4 key购买 nike

如果我可以使用 matcher 根据协议(protocol)选择定义,那就太好了,例如:

- (UIViewController *)viewControllerForViewModel:(id <IViewModel>)viewModel
{
return [TyphoonDefinition withOption:viewModel matcher:^(TyphoonOptionMatcher *matcher)
{
[matcher conformsToProtocol:@protocol(ILoginViewModel) use:[self loginViewController]];
[matcher conformsToProtocol:@protocol(IMainViewModel) use:[self mainScreenViewController]];
[matcher defaultUse:[self emptyScreen]];
}];
}

是否有可能与 Typhoon 现在拥有的东西有关,或者可能有一些解决方法?

谢谢你。

编辑:
我在 TyphoonOptionMatch 和 TyphoonOptionMatcher 中添加了一些符合条件的选项,创建 PR 是否值得?

台风选项匹配
@property (nonatomic) Protocol *proto;
....
+ (id)matchWithConformsToProto:(Protocol *)proto injection:(id)injection;

台风选项匹配器
- (void)conformsToProto:(Protocol *)aProtocol use:(id)injection
...
- (TyphoonOptionMatch *)matchForValue:(id)value {
...
BOOL isConformProto = (match.proto && [value conformsToProtocol:match.proto]);

最佳答案

此功能已在 3.4.5 release 中推出

[matcher caseConformsToProtocol:@protocol(IMainViewModel) 
use:[self mainScreenViewController]];

关于ios - TyphoonOptionMatcher 与 conformsToProtocol,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33939136/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com