#athena #aws #user-defined

macro from-athena-derive

Derive macro for FromAthena trait to convert Athena ResultSet into user defined Structs

1 unstable release

0.1.1 Apr 12, 2024
0.1.0 Apr 12, 2024

#7 in #athena


Used in aws-athena-parser

MIT/Apache

4KB

Athena Parser

Overview

The purpose of this package is to provide an easy method of turning the external aws_sdk_athena::types::ResultSet into a user defined struct of various types.

Usage

Ensure that named values within your struct correspond to the column names of the Athena query result set.

use aws_athena_pasrer::{FromAthenam, build_map};

#[derive(FromAthena)]
struct MyStruct {
  my_value: String
}

pub fn main() {
      let result_set = ...; // Athena response
      let res: Vec<MyStruct> = build_map(result_set)
            .iter()
            .flat_map(|x| MyStruct::from_athena(x.clone()))
            .collect();
      // ( use the res for your purposes )
}

Dependencies

~13–19MB
~261K SLoC