2010-11-19 7 views
1

Unterstützt SwiftSuspenders "sich gegenseitig injizierende" Klassen?SwiftSuspenders: "gegenseitig injizierende" Klassen?

Zum Beispiel, wenn Klasse A spritzt eine Instanz von B und B spritzt eine Instanz A:

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

Und wenn nicht, wie kann ich gefälschtes dieses Verhalten?

Ich frage, weil, als ich versuchte, dies in meinem Code zu tun, ich immer Stack überläuft begonnen ... Und es sieht aus wie sie durch SwiftSuspenders verursacht werden versuchen A in B in A in B in zu injizieren ...

Antwort

1

Die kurze Antwort ist wahrscheinlich nein. Kreisförmige Abhängigkeiten sind ein Trick. Sie könnten Setter-Injektion verwenden und es auf diese Weise liefern. Inject A in B über einen Setter, der auch B auf A setzt.

Es könnte sich lohnen, ein SS-Problem zu stellen, um diese Art von Sache zu lösen.

Verwandte Themen