SPB Git

spb/os-vault Public

Self-custody, multi-chain crypto wallet for macOS. One recovery phrase, six chain families, zero API keys — nothing leaves your Mac.

Swift 96% Shell 3.4% Makefile 0.6%
1.1 KB · 35 lines swift
Raw Blame History
1import Foundation23public struct TokenMintState: MintLayoutState {4    public static var BUFFER_LENGTH: UInt64 = 8256    public let mintAuthorityOption: UInt327    public let mintAuthority: PublicKey?8    public let supply: UInt649    public let decimals: UInt810    public let isInitialized: Bool11    public let freezeAuthorityOption: UInt3212    public let freezeAuthority: PublicKey?13}1415extension TokenMintState: BorshCodable {16    public init(from reader: inout BinaryReader) throws {17        mintAuthorityOption = try .init(from: &reader)18        mintAuthority = try? PublicKey(from: &reader)19        supply = try .init(from: &reader)20        decimals = try .init(from: &reader)21        isInitialized = try UInt8(from: &reader) == 122        freezeAuthorityOption = try .init(from: &reader)23        let freezeAuthorityTemp = try? PublicKey(from: &reader)24        if freezeAuthorityOption == 0 {25            freezeAuthority = nil26        } else {27            freezeAuthority = freezeAuthorityTemp28        }29    }3031    public func serialize(to writer: inout Data) throws {32        try serializeCommonProperties(to: &writer)33    }34}35