bitcoin_script_analyzer/
context.rs

1#[derive(Clone, Copy, PartialEq, Eq)]
2pub enum ScriptVersion {
3    Legacy,
4    SegwitV0,
5    SegwitV1,
6}
7
8#[derive(Clone, Copy, PartialEq, Eq)]
9pub enum ScriptRules {
10    ConsensusOnly,
11    All,
12}
13
14#[derive(Clone, Copy, PartialEq, Eq)]
15pub struct ScriptContext {
16    pub version: ScriptVersion,
17    pub rules: ScriptRules,
18}
19
20impl ScriptContext {
21    pub fn new(version: ScriptVersion, rules: ScriptRules) -> Self {
22        Self { version, rules }
23    }
24}