Skip to content

Commit 989db7c

Browse files
committed
Merge rust-bitcoin#3793: Update regex lookahead to match when there are no characters
23f75a0 Update regex lookahead to match when there are no characters (Shing Him Ng) Pull request description: Was working on rust-bitcoin#3777 and noticed that `amount::Denomination` didn't show up when running `contrib/api.sh units types`. There are some structs/enums in `api/<crate>/all-features.txt` that dont have a `\(`, `;`, or ` ` after the struct/enum name, and the line just ends, so matching the end of line `$` should also be added. This allows the script to find the additional type from `units`: `#[non_exhaustive] pub enum bitcoin_units::amount::Denomination` Also tested this in `primitives`, and it returned: ``` script::Script BlockChecked BlockUnchecked absolute::LockTime block::Checked block::Unchecked locktime::absolute::LockTime locktime::relative::LockTime opcodes::Class opcodes::ClassifyContext relative::LockTime BlockHash BlockHeader CompactTarget Sequence TapBranchTag TapLeafHash TapLeafTag TapNodeHash TapTweakHash TapTweakTag Transaction TxIn TxMerkleNode TxOut Txid Witness WitnessCommitment WitnessMerkleNode Wtxid block::BlockHash block::Header block::Version block::WitnessCommitment merkle_tree::TxMerkleNode merkle_tree::WitnessMerkleNode opcodes::Opcode pow::CompactTarget script::ScriptBuf script::ScriptHash script::WScriptHash sequence::Sequence taproot::TapBranchTag taproot::TapLeafHash taproot::TapLeafTag taproot::TapNodeHash taproot::TapTweakHash taproot::TapTweakTag transaction::OutPoint transaction::Transaction transaction::TxIn transaction::TxOut transaction::Txid transaction::Version transaction::Wtxid witness::Witness ``` vs without this update (on `master`): ``` script::Script BlockHash CompactTarget Sequence TapLeafHash TapNodeHash TapTweakHash TxMerkleNode Txid WitnessCommitment WitnessMerkleNode Wtxid block::BlockHash block::Version block::WitnessCommitment merkle_tree::TxMerkleNode merkle_tree::WitnessMerkleNode pow::CompactTarget script::ScriptBuf script::ScriptHash script::WScriptHash sequence::Sequence taproot::TapLeafHash taproot::TapNodeHash taproot::TapTweakHash transaction::Txid transaction::Version transaction::Wtxid ``` ACKs for top commit: tcharding: ACK 23f75a0 storopoli: ACK 23f75a0 apoelstra: ACK 23f75a0; successfully ran local tests Tree-SHA512: ce6a43d017bb4bc6317853a4646ce4a8dcf5ce957bb2b9cc50bbd333c6854efd7527c25571c1b30736ae496305fedcf876022ad26c50bee232150d308cb62d08
2 parents 229aa01 + 23f75a0 commit 989db7c

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

contrib/api.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,12 +99,12 @@ main() {
9999

100100
# Print all public structs and enums.
101101
structs_and_enums() {
102-
grep -oP 'pub (struct|enum) \K[\w:]+(?=\(|;| )' "$file" | sed "s/^${crate_full_name}:://"
102+
grep -oP 'pub (struct|enum) \K[\w:]+(?=\(|;| |$)' "$file" | sed "s/^${crate_full_name}:://"
103103
}
104104

105105
# Print all public structs and enums excluding error types.
106106
structs_and_enums_no_err() {
107-
grep -oP 'pub (struct|enum) \K[\w:]+(?=\(|;| )' "$file" | sed "s/^${crate_full_name}:://" | grep -v Error
107+
grep -oP 'pub (struct|enum) \K[\w:]+(?=\(|;| |$)' "$file" | sed "s/^${crate_full_name}:://" | grep -v Error
108108
}
109109

110110
# Print all public traits.

0 commit comments

Comments
 (0)