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%
1import WalletCoreC2import Foundation3// SPDX-License-Identifier: Apache-2.04//5// Copyright © 2017 Trust Wallet.6//7// This is a GENERATED FILE, changes made here WILL BE LOST.8//910import Foundation111213public final class Ethereum {1415 /// Returns the checksummed address.16 /// 17 /// - Parameter address: *non-null* string.18 /// - Returns: the checksummed address.19 public static func addressChecksummed(address: String) -> String? {20 let addressString = TWStringCreateWithNSString(address)21 defer {22 TWStringDelete(addressString)23 }24 guard let result = TWEthereumAddressChecksummed(addressString) else {25 return nil26 }27 return TWStringNSString(result)28 }2930 /// Returns the account path from address.31 /// 32 /// - Parameter eth_address: *non-null* string.33 /// - Parameter layer: *non-null* string.34 /// - Parameter application: *non-null* string.35 /// - Parameter index: *non-null* string.36 /// - Returns: the account path.37 public static func eip2645GetPath(ethAddress: String, layer: String, application: String, index: String) -> String? {38 let ethAddressString = TWStringCreateWithNSString(ethAddress)39 defer {40 TWStringDelete(ethAddressString)41 }42 let layerString = TWStringCreateWithNSString(layer)43 defer {44 TWStringDelete(layerString)45 }46 let applicationString = TWStringCreateWithNSString(application)47 defer {48 TWStringDelete(applicationString)49 }50 let indexString = TWStringCreateWithNSString(index)51 defer {52 TWStringDelete(indexString)53 }54 guard let result = TWEthereumEip2645GetPath(ethAddressString, layerString, applicationString, indexString) else {55 return nil56 }57 return TWStringNSString(result)58 }5960 /// Returns EIP-1014 Create2 address61 /// 62 /// - Parameter from: *non-null* string.63 /// - Parameter salt: *non-null* data.64 /// - Parameter init_code_hash: *non-null* data.65 /// - Returns: the EIP-1014 Create2 address.66 public static func eip1014Create2Address(from: String, salt: Data, initCodeHash: Data) -> String? {67 let fromString = TWStringCreateWithNSString(from)68 defer {69 TWStringDelete(fromString)70 }71 let saltData = TWDataCreateWithNSData(salt)72 defer {73 TWDataDelete(saltData)74 }75 let initCodeHashData = TWDataCreateWithNSData(initCodeHash)76 defer {77 TWDataDelete(initCodeHashData)78 }79 guard let result = TWEthereumEip1014Create2Address(fromString, saltData, initCodeHashData) else {80 return nil81 }82 return TWStringNSString(result)83 }8485 /// Returns EIP-1967 proxy init code86 /// 87 /// - Parameter logic_address: *non-null* string.88 /// - Parameter data: *non-null* data.89 /// - Returns: the EIP-1967 proxy init code.90 public static func eip1967ProxyInitCode(logicAddress: String, data: Data) -> Data? {91 let logicAddressString = TWStringCreateWithNSString(logicAddress)92 defer {93 TWStringDelete(logicAddressString)94 }95 let dataData = TWDataCreateWithNSData(data)96 defer {97 TWDataDelete(dataData)98 }99 guard let result = TWEthereumEip1967ProxyInitCode(logicAddressString, dataData) else {100 return nil101 }102 return TWDataNSData(result)103 }104105 let rawValue: OpaquePointer106107 init(rawValue: OpaquePointer) {108 self.rawValue = rawValue109 }110111112}113