Attribute
You may notice that some components are annotated with something like #[dyer::entity]
, #[dyer::actor]
or others, they are attribute Macros what transforms a block of code into another code block.
All of availiable attributes are following.
#[dyer::affix]
mark the type annotated forAffix
#[dyer::actor]
mark the type annotated forActor
#[dyer::middleware]
mark the type annotated forMiddleware
#[dyer::pipeline]
mark the type annotated forPipeline
#[dyer::parser]
mark the type annotated forparser
, any function with this attribute can parse response.#[dyer::entity]
mark the type annotated forentity
, any type with this attribute can contain data to be collected.#[dyer::async_trait]
mark the type annotated forasync_trait
, note that it is a wrapper of crate async_trait