Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
antelope-abi2rs
Advanced tools
Command line tool to generate Rust type definitions from Antelope ABI Inspired by eosio-abi2ts
npm install -g antelope-abi2rs
or
yarn global add antelope-abi2rs
$ antelope-abi2rs -h
usage: antelope-abi2rs [-h] [-v] [-i INPUT] [-p PREFIX] [-n INDENT] [-t] [-e]
[-a | -c | -s]
[output]
Positional arguments:
output Output file to write to instead of stdout.
Optional arguments:
-h, --help Show this help message and exit.
-v, --version Show program's version number and exit.
-i INPUT, --input INPUT
Read ABI JSON from file instead of stdin.
-p PREFIX, --prefix PREFIX
Prefix to add to every type.
-n INDENT, --indent INDENT
How many spaces or tabs to indend with.
-t, --use-tabs Use tabs instead of spaces for indentation.
-a, --pascal-case Format types using PascalCase (default).
-c, --camel-case Format types using camelCase.
-s, --snake-case Format types using snake_case.
$ antelope-abi2rs -i eosio.token.abi
// Generated by antelope-abi2rs 0.3.1 - eosio::abi/1.1
use serde::{Deserialize, Serialize};
type Asset = String;
type Name = String;
type Symbol = String;
macro_rules! impl_try_from_str {
($type:ty) => {
impl TryFrom<&str> for $type {
type Error = serde_json::Error;
#[inline]
fn try_from(str: &str) -> Result<Self, Self::Error> {
serde_json::from_str(str)
}
}
};
}
#[derive(Serialize, Deserialize, Debug)]
#[serde(deny_unknown_fields)]
pub struct Account {
pub balance: Asset,
}
impl_try_from_str!(Account);
#[derive(Serialize, Deserialize, Debug)]
#[serde(deny_unknown_fields)]
pub struct Close {
pub owner: Name,
pub symbol: Symbol,
}
impl_try_from_str!(Close);
#[derive(Serialize, Deserialize, Debug)]
#[serde(deny_unknown_fields)]
pub struct Create {
pub issuer: Name,
pub maximum_supply: Asset,
}
impl_try_from_str!(Create);
#[derive(Serialize, Deserialize, Debug)]
#[serde(deny_unknown_fields)]
pub struct CurrencyStats {
pub supply: Asset,
pub max_supply: Asset,
pub issuer: Name,
}
impl_try_from_str!(CurrencyStats);
#[derive(Serialize, Deserialize, Debug)]
#[serde(deny_unknown_fields)]
pub struct Issue {
pub to: Name,
pub quantity: Asset,
pub memo: String,
}
impl_try_from_str!(Issue);
#[derive(Serialize, Deserialize, Debug)]
#[serde(deny_unknown_fields)]
pub struct Open {
pub owner: Name,
pub symbol: Symbol,
pub ram_payer: Name,
}
impl_try_from_str!(Open);
#[derive(Serialize, Deserialize, Debug)]
#[serde(deny_unknown_fields)]
pub struct Retire {
pub quantity: Asset,
pub memo: String,
}
impl_try_from_str!(Retire);
#[derive(Serialize, Deserialize, Debug)]
#[serde(deny_unknown_fields)]
pub struct Transfer {
pub from: Name,
pub to: Name,
pub quantity: Asset,
pub memo: String,
}
impl_try_from_str!(Transfer);
eosc -u https://eos.greymass.com get abi eosio.evm | antelope-abi2rs src/abi.rs
for trx in block.all_transaction_traces() {
for trace in &trx.action_traces {
let action_trace = trace.action.as_ref().unwrap();
if action_trace.name != "transfer" { continue; }
match abi::Transfer::try_from(action_trace.json_data.as_str()) {
Ok(transfer) => {
log::info!("Transfer! {:?}", transfer)
}
Err(_) => continue,
}
}
}
FAQs
Generate Rust type defenitions from Antelope ABI files
The npm package antelope-abi2rs receives a total of 1 weekly downloads. As such, antelope-abi2rs popularity was classified as not popular.
We found that antelope-abi2rs demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.