1
0
Fork 1

Move cancellable to the type system and implement multi-parenting #1

Geschlossen
dgriffen möchte 3 Commits von dgriffen/rust.eventbus:dev/dgriffen/type-cancel nach master zusammenführen
Erstmaliger Mitwirkender

The dyn_events test was changed to produce the output requested in your sample here: https://bpaste.net/show/73d5e4bc55b4

The dyn_events test was changed to produce the output requested in your sample here: <https://bpaste.net/show/73d5e4bc55b4>
Autor
Erstmaliger Mitwirkender

This is the output produced when run with cargo test -- --nocapture

Got event for inspection and manipulation: MyEventImpl { i: 3 }
Got event for inspection, manipulation, and cancellation: MyExtraEventImpl { i: 4 }
Got event for inspection and manipulation: MyExtraEventImpl { i: 4 }
This is the output produced when run with `cargo test -- --nocapture` ```text Got event for inspection and manipulation: MyEventImpl { i: 3 } Got event for inspection, manipulation, and cancellation: MyExtraEventImpl { i: 4 } Got event for inspection and manipulation: MyExtraEventImpl { i: 4 } ```
Besitzer

The output requested in my sample should be done as a separate test. And it should use asserts somehow.

This also doesn't respect the hook priorities correctly.

The output requested in my sample should be done as a separate test. And it should use asserts somehow. This also doesn't respect the hook priorities correctly.
Autor
Erstmaliger Mitwirkender

Hook priorities is quite a large problem with the way this system is implemented. Rust really doesn't have a good built-in system for dynamic typing and downcasting which will have to be done in order to respect hook priorities since we'll be mixing up handlers a lot.

Hook priorities is quite a large problem with the way this system is implemented. Rust really doesn't have a good built-in system for dynamic typing and downcasting which will have to be done in order to respect hook priorities since we'll be mixing up handlers a lot.
Besitzer

Some way to generate identifiers (for use in a large enum or somesuch) would work just as well, I think, altho I'm not quite sure how to do that.

Some way to generate identifiers (for use in a large enum or somesuch) would work just as well, I think, altho I'm not quite sure how to do that.
Autor
Erstmaliger Mitwirkender

Ah yes, having the macro generate an enum large enough for each type would probably work great. I'm not sure if Rust supports turning a ty into an ident though.

Ah yes, having the macro generate an enum large enough for each type would probably work great. I'm not sure if Rust supports turning a `ty` into an `ident` though.
SoniEx2 hat diesen Pull-Request 2018-12-03 16:45:02 +01:00 geschlossen

Pull-Request geschlossen

Anmelden, um an der Diskussion teilzunehmen.
Keine Reviewer
Keine Label
Kein Meilenstein
Kein Projekt
Niemand zuständig
2 Beteiligte
Nachrichten
Fällig am
Das Fälligkeitsdatum ist ungültig oder außerhalb des zulässigen Bereichs. Bitte verwende das Format „jjjj-mm-tt“.

Kein Fälligkeitsdatum gesetzt.

Abhängigkeiten

Keine Abhängigkeiten gesetzt.

Referenz: SoniEx2/rust.eventbus#1
Keine Beschreibung angegeben.