Reactive data

lempiji lempiji at gmail.com
Sat Mar 31 16:08:36 UTC 2018


On Friday, 23 March 2018 at 12:59:23 UTC, crimaniak wrote:
> I want to have reactive variables like in this example:
>
> ```
> USING_REACTIVE_DOMAIN(D)
>
> // The two words
> VarSignalT<string> firstWord  = MakeVar<D>(string( "Change" ));
> VarSignalT<string> secondWord = MakeVar<D>(string( "me!" ));
> // ...
> SignalT<string> bothWords = firstWord + string( " " ) + 
> secondWord;
> ```
>
> from this page: 
> http://schlangster.github.io/cpp.react/tutorials/BasicSignals.html
>
> Is this possible to make it in D with 
> https://github.com/lempiji/rx ? Is there other libraries exists 
> for this topic?

I think that it can use combineLatest which was recently added.
If using 'alias this' or 'operator overloading', might look like 
more original example.

-----------
import rx;

auto firstWord = new BehaviorSubject!string("Change");
auto secondWord = new BehaviorSubject!string("me!");

auto bothWords = new BehaviorSubject!string("");
combineLatest!((a, b) => a ~ " " ~ b)(firstWord, 
secondWord).doSubscribe(bothWords);

writeln(bothWords.value); // Change me!

firstWord.value = "TEST";
writeln(bothWords.value); // TEST me!
-----------


More information about the Digitalmars-d-learn mailing list