1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
mod serialization; pub mod structs; extern "C" { fn __asml_abi_invoke( mem: *const u8, name_ptr: *const u8, name_len: usize, input_ptr: *const u8, input_len: usize, ) -> i32; } pub mod database { use paste; use serde_json; use assemblylift_core_event_guest::Event; use assemblylift_core_guest::*; use crate::structs::{ DeleteItemInput, DeleteItemOutput, GetItemInput, GetItemOutput, ListTablesInput, ListTablesOutput, PutItemInput, PutItemOutput, UpdateItemInput, UpdateItemOutput, }; call!(aws => dynamodb => list_tables, ListTablesInput => ListTablesOutput); call!(aws => dynamodb => put_item, PutItemInput => PutItemOutput); call!(aws => dynamodb => get_item, GetItemInput => GetItemOutput); call!(aws => dynamodb => delete_item, DeleteItemInput => DeleteItemOutput); call!(aws => dynamodb => update_item, UpdateItemInput => UpdateItemOutput); #[macro_export] macro_rules! val { (B => $val:expr) => {{ let mut attr = AttributeValue::default(); attr.b = Some($val); attr }}; (S => $val:expr) => {{ let mut attr = AttributeValue::default(); attr.s = Some($val.to_string()); attr }}; (N => $val:expr) => {{ let mut attr = AttributeValue::default(); attr.n = Some($val.to_string()); attr }}; } }