michelson-ast
is a Rust library for generating Michelson code. This library can handle the Abstract Syntax Tree (AST) of Michelson, the smart contract language for Tezos.
To generate Michelson code using this library, you can write a program like the following: ```rust use michelsonast::{ instruction::Instruction, program::Program, ty::Ty, wrappedinstruction::WrappedInstruction, };
fn main() { let program = Program { storage: Ty::Unit, parameter: Ty::Unit, code: vec![ WrappedInstruction { comment: Some("=> Unit".toowned()), instruction: Instruction::Cdr, }, WrappedInstruction { comment: Some("=> {} : Unit".toowned()), instruction: Instruction::Nil { ty: Ty::Operation }, }, WrappedInstruction { comment: Some("=> (Pair {} Unit)".to_owned()), instruction: Instruction::Pair, }, ], };
println!("{}", program.to_string());
} ```
parameter unit;
storage unit;
code {
CDR; # => Unit
NIL operation; # => {} : Unit
PAIR; # => (Pair {} Unit)
}