#identifier #stock #equity #validation

bin+lib cusip

Support for creating and validating CUSIPs

7 releases

0.3.0 Mar 11, 2024
0.2.5 Jun 8, 2023
0.2.4 Feb 10, 2023
0.2.2 Dec 22, 2022
0.1.1 Mar 22, 2021

#214 in Finance

Download history 34/week @ 2023-12-29 5/week @ 2024-01-05 8/week @ 2024-01-19 10/week @ 2024-02-16 41/week @ 2024-02-23 22/week @ 2024-03-01 151/week @ 2024-03-08 147/week @ 2024-03-15 45/week @ 2024-03-22 27/week @ 2024-03-29 33/week @ 2024-04-05

262 downloads per month
Used in investments

MIT/Apache

59KB
871 lines

cusip

An CUSIP type for working with validated Committee on Uniform Security Identification Procedures (CUSIP) identifiers as defined in ANSI X9.6-2020. There is also a companion type CINS for working with the subset of CUSIP identifiers that conform to the CINS standard.

This crate is part of the Financial Identifiers series:

  • CIK: Central Index Key (SEC EDGAR)
  • CUSIP: Committee on Uniform Security Identification Procedures (ANSI X9.6-2020)
  • ISIN: International Securities Identification Number (ISO 6166:2021)
  • LEI: Legal Entity Identifier (ISO 17442:2020)

Usage

Add this to your Cargo.toml:

[dependencies]
cusip = "0.2"

Example

use cusip;
let cusip_string = "023135106"; // Amazon.com Inc - Common Stock
match cusip::parse(cusip_string) {
    Ok(cusip) => {
        println!("Parsed CUSIP: {}", cusip.to_string()); // "023135106"
        println!("  Issuer number: {}", cusip.issuer_num()); // "023135"
        println!("  Issue number: {}", cusip.issue_num()); // "10"
        println!("  Check digit: {}", cusip.check_digit()); // '6'
    }
    Err(err) => panic!("Unable to parse CUSIP {}: {}", cusip_string, err),
}

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

No runtime deps