2010-11-19 5 views
1

Est-ce que SwiftSuspenders prend en charge les classes "s'injectant mutuellement"?SwiftSuspenders: classes "s'injectant mutuellement"?

Par exemple, si la classe A injecte une instance de B et B injecte une instance de A:

class A { 
    [Inject] 
    public var b:B; 
} 
class B { 
    [Inject] 
    public var a:A; 
} 

Et, sinon, comment puis-je faux ce comportement?

Je demande parce que, quand j'ai essayé de le faire dans mon code, j'ai commencé à pile déborde ... Et on dirait qu'ils sont causés par SwiftSuspenders essayant d'injecter A dans B en A dans B en ...

Répondre

1

La réponse courte est probablement non. Les dépendances circulaires sont un truc. Vous pouvez utiliser l'injection de setter et le distribuer de cette façon. Injectez A dans B via un setter qui définit également B sur A.

Il peut être intéressant de classer un problème SS pour résoudre ce type de problème.

Questions connexes