<!--
{
  "availability" : [

  ],
  "documentType" : "symbol",
  "framework" : "BitcoinKernel",
  "identifier" : "/documentation/BitcoinKernel/ScriptVerificationFlags",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "BitcoinKernel"
    ],
    "preciseIdentifier" : "s:13BitcoinKernel23ScriptVerificationFlagsV"
  },
  "title" : "ScriptVerificationFlags"
}
-->

# ScriptVerificationFlags

Flags controlling which BIP-governed consensus rules apply during
script verification.

```
struct ScriptVerificationFlags
```

## Overview

Each flag maps to a specific BIP — see the individual flag
documentation below for citations. Compose using `OptionSet` syntax:
`[.p2sh, .witness, .taproot]`. Use [`all`](/documentation/BitcoinKernel/ScriptVerificationFlags/all) for full mainnet-equivalent
verification; leave flags off to simulate validation under older
consensus rules (useful for testing pre-activation blocks).

Maps to `btck_ScriptVerificationFlags` constants in the kernel C API.