parse_script

Function parse_script 

Source
pub fn parse_script<'a>(
    script: &'a str,
) -> Result<ParserContext<'a>, MiniscriptError<'a>>
Expand description

Parse and validate a miniscript string, returning the parsed context and generated Bitcoin script.

This function performs a complete validation pipeline:

  1. Parses the miniscript string into an AST
  2. Type checks the AST for correctness properties
  3. Validates the descriptor structure
  4. Generates the corresponding Bitcoin script

§Arguments

  • script - The miniscript string to parse and validate

§Returns

Returns Ok((ParserContext, ScriptBuf)) on success, where:

  • ParserContext contains the parsed AST and metadata
  • [ScriptBuf] is the generated Bitcoin script

Returns Err(MiniscriptError) if parsing, validation, or script generation fails.

§Examples

use tinyminiscript::parse_script;

let result = parse_script("pk(02e79c4c8b3c8b3c8b3c8b3c8b3c8b3c8b3c8b3c8b3c8b3c8b3c8b3c8b3c8b3)");
match result {
    Ok(ctx) => {
        let script = ctx.build_script().unwrap();
        println!("Generated script: {:?}", script);
    }
    Err(e) => eprintln!("Parse error: {:?}", e),
}