fsn-go-sdk

module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 3, 2021 License: GPL-3.0, LGPL-3.0, LGPL-3.0-or-later

README

Fusion Go SDK Repository

first run

  1. clone the repository
    mkdir -p ${GOPATH:-$HOME/go}/src/github.com/FusionFoundation  
    cd ${GOPATH:-$HOME/go}/src/github.com/FusionFoundation  
    git clone https://github.com/fsn-dev/fsn-go-sdk.git  
    cd fsn-go-sdk  
  1. build project
    # set env GOPROXY if you can't get packages from golang.org
    export GOPROXY=https://goproxy.io

    make fsn-cli (take `fsn-cli` as example here)  
  1. run project
    ./bin/fsn-cli (take `fsn-cli` as example here)  

commitment notes

  1. please make a new top level directory for each new project
  2. please provide help information for each command and sub-commands
  3. please run make fmt to format codes before committing
  4. please run ./scripts/add-license.sh <newfile> to add lincense for new files

common directories

  • efsn -- fusion base code

    import from https://github.com/FUSIONFoundation/efsn

  • fsnapi -- supply API to build and sign transaction, etc.

  • bin -- binary output directory

  • scripts -- scripts used to manage project

    build.sh -- build specified projects
    gofmt.sh -- format *.go files
    add-license.sh -- add LICENSE content to the file header

Directories

Path Synopsis
Package ethereum defines interfaces for interacting with Ethereum.
Package ethereum defines interfaces for interacting with Ethereum.
accounts
Package accounts implements high level Ethereum account management.
Package accounts implements high level Ethereum account management.
accounts/abi
Package abi implements the Ethereum ABI (Application Binary Interface).
Package abi implements the Ethereum ABI (Application Binary Interface).
accounts/abi/bind
Package bind generates Ethereum contract Go bindings.
Package bind generates Ethereum contract Go bindings.
accounts/keystore
Package keystore implements encrypted storage of secp256k1 private keys.
Package keystore implements encrypted storage of secp256k1 private keys.
cmd/utils
Package utils contains internal helper functions for go-ethereum commands.
Package utils contains internal helper functions for go-ethereum commands.
common
Package common contains various helper functions.
Package common contains various helper functions.
common/bitutil
Package bitutil implements fast bitwise operations.
Package bitutil implements fast bitwise operations.
common/compiler
Package compiler wraps the Solidity compiler executable (solc).
Package compiler wraps the Solidity compiler executable (solc).
common/hexutil
Package hexutil implements hex encoding with 0x prefix.
Package hexutil implements hex encoding with 0x prefix.
common/math
Package math provides integer math utilities.
Package math provides integer math utilities.
common/mclock
Package mclock is a wrapper for a monotonic clock source
Package mclock is a wrapper for a monotonic clock source
common/overflow
Package overflow offers overflow-checked integer arithmetic operations for int, int32, and int64.
Package overflow offers overflow-checked integer arithmetic operations for int, int32, and int64.
core/types
Package types contains data types related to Ethereum consensus.
Package types contains data types related to Ethereum consensus.
crypto/blake2b
Package blake2b implements the BLAKE2b hash algorithm defined by RFC 7693 and the extendable output function (XOF) BLAKE2Xb.
Package blake2b implements the BLAKE2b hash algorithm defined by RFC 7693 and the extendable output function (XOF) BLAKE2Xb.
crypto/bn256
Package bn256 implements the Optimal Ate pairing over a 256-bit Barreto-Naehrig curve.
Package bn256 implements the Optimal Ate pairing over a 256-bit Barreto-Naehrig curve.
crypto/bn256/cloudflare
Package bn256 implements a particular bilinear group at the 128-bit security level.
Package bn256 implements a particular bilinear group at the 128-bit security level.
crypto/bn256/google
Package bn256 implements a particular bilinear group.
Package bn256 implements a particular bilinear group.
crypto/secp256k1
Package secp256k1 wraps the bitcoin secp256k1 C library.
Package secp256k1 wraps the bitcoin secp256k1 C library.
ethclient
Package ethclient provides a client for the Ethereum RPC API.
Package ethclient provides a client for the Ethereum RPC API.
internal/event
Package event deals with subscriptions to real-time events.
Package event deals with subscriptions to real-time events.
internal/event/filter
Package filter implements event filters.
Package filter implements event filters.
internal/jsre
Package jsre provides execution environment for JavaScript.
Package jsre provides execution environment for JavaScript.
internal/jsre/deps
Package deps contains the console JavaScript dependencies Go embedded.
Package deps contains the console JavaScript dependencies Go embedded.
internal/rpc
Package rpc provides access to the exported methods of an object across a network or other I/O connection.
Package rpc provides access to the exported methods of an object across a network or other I/O connection.
internal/web3ext
package web3ext contains efsn specific web3.js extensions.
package web3ext contains efsn specific web3.js extensions.
log
rlp
Package rlp implements the RLP serialization format.
Package rlp implements the RLP serialization format.
rlpdump is a pretty-printer for RLP data.
rlpdump is a pretty-printer for RLP data.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL