How do I create a ReactiveCocoa subscriber that receives a signal only once, then unsubscribes/releases itself?

ios, objective-c, reactive-cocoa, reactive-programming

Solution

[[RACAble(self.test) take:1] subscribeNext:^(id x) {
    NSLog(@"signal fired!");
}];

Problem

I'm currently registering a subscriber to a property signal like this: ``` [RACAble(self.test) subscribeNext:^(id x) { NSLog(@"signal fired!"); }]; ``` The default functionality is that it fires every single time self.test is changed, but I just want it to fire once, and then unsubscribe. Is there a "once" argument or modifier I can pass to RAC when I create this subscriber?

Original source