Dart / rxdart / Bloc: receive event item with original type when listening to a BehaviorSubject's stream











up vote
0
down vote

favorite












Consider this code (don't mind the useless listen method, it's just to show the use case):



class Bloc {
final BehaviorSubject notifPrompt =
BehaviorSubject<NotifPromptModel>()..add(NotifPromptModel(answered: false));

void listen() {
notifPrompt.stream.listen(
(data) => print(data.answered)
);
}

void dispose() {
notifPrompt.close();
}
}

class NotifPromptModel {
final bool answered;

NotifPromptModel({this.answered});
}


Now I know that this will work, but is there a way to get the generic type, NotifPromptModel in this case, that I pass to the BehaviorSubject (StreamController that sends last event on every new listen) with the data parameter? This would allow me to have convenient code suggestions when I'm passing an object containing the model information as fields to the BehaviorSubject, like in this case.










share|improve this question




























    up vote
    0
    down vote

    favorite












    Consider this code (don't mind the useless listen method, it's just to show the use case):



    class Bloc {
    final BehaviorSubject notifPrompt =
    BehaviorSubject<NotifPromptModel>()..add(NotifPromptModel(answered: false));

    void listen() {
    notifPrompt.stream.listen(
    (data) => print(data.answered)
    );
    }

    void dispose() {
    notifPrompt.close();
    }
    }

    class NotifPromptModel {
    final bool answered;

    NotifPromptModel({this.answered});
    }


    Now I know that this will work, but is there a way to get the generic type, NotifPromptModel in this case, that I pass to the BehaviorSubject (StreamController that sends last event on every new listen) with the data parameter? This would allow me to have convenient code suggestions when I'm passing an object containing the model information as fields to the BehaviorSubject, like in this case.










    share|improve this question


























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      Consider this code (don't mind the useless listen method, it's just to show the use case):



      class Bloc {
      final BehaviorSubject notifPrompt =
      BehaviorSubject<NotifPromptModel>()..add(NotifPromptModel(answered: false));

      void listen() {
      notifPrompt.stream.listen(
      (data) => print(data.answered)
      );
      }

      void dispose() {
      notifPrompt.close();
      }
      }

      class NotifPromptModel {
      final bool answered;

      NotifPromptModel({this.answered});
      }


      Now I know that this will work, but is there a way to get the generic type, NotifPromptModel in this case, that I pass to the BehaviorSubject (StreamController that sends last event on every new listen) with the data parameter? This would allow me to have convenient code suggestions when I'm passing an object containing the model information as fields to the BehaviorSubject, like in this case.










      share|improve this question















      Consider this code (don't mind the useless listen method, it's just to show the use case):



      class Bloc {
      final BehaviorSubject notifPrompt =
      BehaviorSubject<NotifPromptModel>()..add(NotifPromptModel(answered: false));

      void listen() {
      notifPrompt.stream.listen(
      (data) => print(data.answered)
      );
      }

      void dispose() {
      notifPrompt.close();
      }
      }

      class NotifPromptModel {
      final bool answered;

      NotifPromptModel({this.answered});
      }


      Now I know that this will work, but is there a way to get the generic type, NotifPromptModel in this case, that I pass to the BehaviorSubject (StreamController that sends last event on every new listen) with the data parameter? This would allow me to have convenient code suggestions when I'm passing an object containing the model information as fields to the BehaviorSubject, like in this case.







      stream dart flutter rxdart






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 11 at 4:03

























      asked Nov 11 at 3:52









      Footurist

      799




      799
























          1 Answer
          1






          active

          oldest

          votes

















          up vote
          0
          down vote













          Should have spent some minutes more thinking. The problem was that I instantiated the BehaviorSubject object with the type, but didn't declare the variable with it.






          share|improve this answer





















            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














             

            draft saved


            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53245693%2fdart-rxdart-bloc-receive-event-item-with-original-type-when-listening-to-a%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            0
            down vote













            Should have spent some minutes more thinking. The problem was that I instantiated the BehaviorSubject object with the type, but didn't declare the variable with it.






            share|improve this answer

























              up vote
              0
              down vote













              Should have spent some minutes more thinking. The problem was that I instantiated the BehaviorSubject object with the type, but didn't declare the variable with it.






              share|improve this answer























                up vote
                0
                down vote










                up vote
                0
                down vote









                Should have spent some minutes more thinking. The problem was that I instantiated the BehaviorSubject object with the type, but didn't declare the variable with it.






                share|improve this answer












                Should have spent some minutes more thinking. The problem was that I instantiated the BehaviorSubject object with the type, but didn't declare the variable with it.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 11 at 4:09









                Footurist

                799




                799






























                     

                    draft saved


                    draft discarded



















































                     


                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53245693%2fdart-rxdart-bloc-receive-event-item-with-original-type-when-listening-to-a%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Bressuire

                    Vorschmack

                    Quarantine