Attribute Macro edgedb_query_derive::file_query

source ·
#[file_query]
Expand description

Create an edgeDB query based on a source file

Usage

    use edgedb_query_derive::{file_query};
    use edgedb_query::models::edge_query::ToEdgeQuery;

    #[file_query(src="edgedb-query-derive/test/from_file_query/add_user.edgeql")]
    pub struct AddUser {
        #[param("user_name")]
        pub name: String,
        pub age: i8,
        #[param("friend_name")]
        pub friend: String,
    }

    async fn main() {
         let client = edgedb_tokio::create_client().await.unwrap();
         let add_user = AddUser {
            name: "Joe".to_string(),
            friend: "Henri".to_string(),
        };

        let query = add_user.to_edge_query();

        let _ = client
                .query_single_json(query.query.as_str(), &query.args.unwrap())
                .await
                .unwrap();
    }