Documentation ¶
Index ¶
- Constants
- Variables
- func GetAssetNameLength() uint64
- func GetAssetNameRegExp() *regexp.Regexp
- func SetAssetMangerName(name common.Name)
- func SetAssetNameConfig(config *Config) bool
- type Asset
- func (a *Asset) CheckOwner(fromName common.Name, assetID uint64) error
- func (a *Asset) DestroyAsset(accountName common.Name, assetID uint64, amount *big.Int) error
- func (a *Asset) GetAssetAmountByTime(assetID uint64, time uint64) (*big.Int, error)
- func (a *Asset) GetAssetFounderByID(ID uint64) (common.Name, error)
- func (a *Asset) GetAssetIDByName(assetName string) (uint64, error)
- func (a *Asset) GetAssetObjectByID(ID uint64) (*AssetObject, error)
- func (a *Asset) GetAssetObjectByName(assetName string) (*AssetObject, error)
- func (a *Asset) GetAssetObjectByTime(assetID uint64, time uint64) (*AssetObject, error)
- func (a *Asset) HasAccess(assetID uint64, names ...common.Name) bool
- func (a *Asset) IncStats(assetID uint64) error
- func (a *Asset) IncreaseAsset(accountName common.Name, assetID uint64, amount *big.Int, forkID uint64) error
- func (a *Asset) InitAssetCount()
- func (a *Asset) IsValidAssetOwner(fromName common.Name, assetPrefix string, assetNames []string) (uint64, bool)
- func (a *Asset) IsValidMainAssetBeforeFork(assetName string) bool
- func (a *Asset) IsValidSubAssetBeforeFork(fromName common.Name, assetName string) (uint64, bool)
- func (a *Asset) IssueAsset(assetName string, number uint64, forkID uint64, symbol string, amount *big.Int, ...) (uint64, error)
- func (a *Asset) IssueAssetObject(ao *AssetObject) (uint64, error)
- func (a *Asset) SetAssetNewContract(assetID uint64, contract common.Name) error
- func (a *Asset) SetAssetNewOwner(accountName common.Name, assetID uint64, newOwner common.Name) error
- func (a *Asset) SetAssetObject(ao *AssetObject) error
- func (a *Asset) UpdateAsset(accountName common.Name, assetID uint64, founderName common.Name, ...) error
- type AssetIf
- type AssetObject
- func (ao *AssetObject) GetAssetAddIssue() *big.Int
- func (ao *AssetObject) GetAssetAmount() *big.Int
- func (ao *AssetObject) GetAssetContract() common.Name
- func (ao *AssetObject) GetAssetDescription() string
- func (ao *AssetObject) GetAssetFounder() common.Name
- func (ao *AssetObject) GetAssetID() uint64
- func (ao *AssetObject) GetAssetName() string
- func (ao *AssetObject) GetAssetNumber() uint64
- func (ao *AssetObject) GetAssetOwner() common.Name
- func (ao *AssetObject) GetAssetStats() uint64
- func (ao *AssetObject) GetContract() common.Name
- func (ao *AssetObject) GetDecimals() uint64
- func (ao *AssetObject) GetSymbol() string
- func (ao *AssetObject) GetUpperLimit() *big.Int
- func (ao *AssetObject) SetAssetAddIssue(amount *big.Int)
- func (ao *AssetObject) SetAssetAmount(amount *big.Int)
- func (ao *AssetObject) SetAssetContract(contract common.Name)
- func (ao *AssetObject) SetAssetDescription(description string)
- func (ao *AssetObject) SetAssetFounder(f common.Name)
- func (ao *AssetObject) SetAssetID(AssetID uint64)
- func (ao *AssetObject) SetAssetName(assetName string)
- func (ao *AssetObject) SetAssetNumber(number uint64)
- func (ao *AssetObject) SetAssetOwner(owner common.Name)
- func (ao *AssetObject) SetAssetStats(count uint64)
- func (ao *AssetObject) SetDecimals(dec uint64)
- func (ao *AssetObject) SetSymbol(sym string)
- type Config
Constants ¶
View Source
const MaxDescriptionLength uint64 = 255
Variables ¶
View Source
var ( ErrAccountNameNull = errors.New("account name is null") ErrAssetIsExist = errors.New("asset is exist") ErrAssetNotExist = errors.New("asset not exist") ErrOwnerMismatch = errors.New("asset owner mismatch") ErrAssetNameEmpty = errors.New("asset name is empty") ErrAssetObjectEmpty = errors.New("asset object is empty") ErrNewAssetObject = errors.New("create asset object input invalid") ErrAssetAmountZero = errors.New("asset amount is zero") ErrUpperLimit = errors.New("asset amount over the issuance limit") ErrDestroyLimit = errors.New("asset destroy exceeding the lower limit") ErrAssetCountNotExist = errors.New("asset total count not exist") ErrAssetIDInvalid = errors.New("asset id invalid") ErrAssetManagerNotExist = errors.New("asset manager name not exist") ErrDetailTooLong = errors.New("detail info exceed maximum") ErrNegativeAmount = errors.New("negative amount") ErrAmountOverMax256 = errors.New("amount over max uint256") )
Functions ¶
func GetAssetNameLength ¶
func GetAssetNameLength() uint64
func GetAssetNameRegExp ¶
func SetAssetMangerName ¶
SetAssetMangerName set the global asset manager name
func SetAssetNameConfig ¶
Types ¶
type Asset ¶
type Asset struct {
// contains filtered or unexported fields
}
func (*Asset) DestroyAsset ¶
DestroyAsset destroy asset
func (*Asset) GetAssetAmountByTime ¶
GetAssetAmountByTime get asset amount by time
func (*Asset) GetAssetFounderByID ¶
GetAssetFounderByID get asset founder by ID
func (*Asset) GetAssetIDByName ¶
GetAssetIDByName get assset id by asset name
func (*Asset) GetAssetObjectByID ¶
func (a *Asset) GetAssetObjectByID(ID uint64) (*AssetObject, error)
GetAssetObjectByID get asset by asset ID
func (*Asset) GetAssetObjectByName ¶
func (a *Asset) GetAssetObjectByName(assetName string) (*AssetObject, error)
GetAssetObjectByName get asset object by name
func (*Asset) GetAssetObjectByTime ¶
func (a *Asset) GetAssetObjectByTime(assetID uint64, time uint64) (*AssetObject, error)
GetAssetObjectByTime get asset object by time
func (*Asset) IncreaseAsset ¶
func (a *Asset) IncreaseAsset(accountName common.Name, assetID uint64, amount *big.Int, forkID uint64) error
IncreaseAsset increase asset, upperlimit == 0 means no upper limit
func (*Asset) IsValidAssetOwner ¶
func (*Asset) IsValidMainAssetBeforeFork ¶
func (*Asset) IsValidSubAssetBeforeFork ¶
IsValidSubAssetBeforeFork check parent owner valid
func (*Asset) IssueAsset ¶
func (a *Asset) IssueAsset(assetName string, number uint64, forkID uint64, symbol string, amount *big.Int, dec uint64, founder common.Name, owner common.Name, limit *big.Int, contract common.Name, description string) (uint64, error)
IssueAsset issue asset
func (*Asset) IssueAssetObject ¶
func (a *Asset) IssueAssetObject(ao *AssetObject) (uint64, error)
IssueAssetObject Issue Asset Object
func (*Asset) SetAssetNewContract ¶
func (*Asset) SetAssetNewOwner ¶
func (a *Asset) SetAssetNewOwner(accountName common.Name, assetID uint64, newOwner common.Name) error
SetAssetNewOwner change asset owner
func (*Asset) SetAssetObject ¶
func (a *Asset) SetAssetObject(ao *AssetObject) error
SetAssetObject store an asset into database
type AssetIf ¶
type AssetIf interface { GetAssetIDByName(assetName common.Name) (uint64, error) GetAllAssetObject() []*AssetObject IssueAssetObject(ao *AssetObject) (uint64, error) IssueAsset(assetName common.Name, symbol string, amount *big.Int, owner common.Name) error IncreaseAsset(accountName common.Name, assetID uint64, amount *big.Int) error SetAssetNewOwner(accountName common.Name, assetID uint64, newOwner common.Name) error }
type AssetObject ¶
type AssetObject struct { AssetID uint64 `json:"assetId"` Number uint64 `json:"number"` Stats uint64 `json:"stats"` AssetName string `json:"assetName"` Symbol string `json:"symbol"` Amount *big.Int `json:"amount"` Decimals uint64 `json:"decimals"` Founder common.Name `json:"founder"` Owner common.Name `json:"owner"` AddIssue *big.Int `json:"addIssue"` UpperLimit *big.Int `json:"upperLimit"` Contract common.Name `json:"contract"` Description string `json:"description"` }
func NewAssetObject ¶
func NewAssetObjectNoCheck ¶
func (*AssetObject) GetAssetAddIssue ¶
func (ao *AssetObject) GetAssetAddIssue() *big.Int
func (*AssetObject) GetAssetAmount ¶
func (ao *AssetObject) GetAssetAmount() *big.Int
func (*AssetObject) GetAssetContract ¶
func (ao *AssetObject) GetAssetContract() common.Name
func (*AssetObject) GetAssetDescription ¶
func (ao *AssetObject) GetAssetDescription() string
func (*AssetObject) GetAssetFounder ¶
func (ao *AssetObject) GetAssetFounder() common.Name
func (*AssetObject) GetAssetID ¶
func (ao *AssetObject) GetAssetID() uint64
func (*AssetObject) GetAssetName ¶
func (ao *AssetObject) GetAssetName() string
func (*AssetObject) GetAssetNumber ¶
func (ao *AssetObject) GetAssetNumber() uint64
func (*AssetObject) GetAssetOwner ¶
func (ao *AssetObject) GetAssetOwner() common.Name
func (*AssetObject) GetAssetStats ¶
func (ao *AssetObject) GetAssetStats() uint64
func (*AssetObject) GetContract ¶
func (ao *AssetObject) GetContract() common.Name
func (*AssetObject) GetDecimals ¶
func (ao *AssetObject) GetDecimals() uint64
func (*AssetObject) GetSymbol ¶
func (ao *AssetObject) GetSymbol() string
func (*AssetObject) GetUpperLimit ¶
func (ao *AssetObject) GetUpperLimit() *big.Int
func (*AssetObject) SetAssetAddIssue ¶
func (ao *AssetObject) SetAssetAddIssue(amount *big.Int)
func (*AssetObject) SetAssetAmount ¶
func (ao *AssetObject) SetAssetAmount(amount *big.Int)
func (*AssetObject) SetAssetContract ¶
func (ao *AssetObject) SetAssetContract(contract common.Name)
func (*AssetObject) SetAssetDescription ¶
func (ao *AssetObject) SetAssetDescription(description string)
func (*AssetObject) SetAssetFounder ¶
func (ao *AssetObject) SetAssetFounder(f common.Name)
func (*AssetObject) SetAssetID ¶
func (ao *AssetObject) SetAssetID(AssetID uint64)
func (*AssetObject) SetAssetName ¶
func (ao *AssetObject) SetAssetName(assetName string)
func (*AssetObject) SetAssetNumber ¶
func (ao *AssetObject) SetAssetNumber(number uint64)
func (*AssetObject) SetAssetOwner ¶
func (ao *AssetObject) SetAssetOwner(owner common.Name)
func (*AssetObject) SetAssetStats ¶
func (ao *AssetObject) SetAssetStats(count uint64)
func (*AssetObject) SetDecimals ¶
func (ao *AssetObject) SetDecimals(dec uint64)
func (*AssetObject) SetSymbol ¶
func (ao *AssetObject) SetSymbol(sym string)
type Config ¶
type Config struct { AssetNameLevel uint64 `json:"assetNameLevel"` AssetNameLength uint64 `json:"assetNameLength"` MainAssetNameMinLength uint64 `json:"mainAssetNameMinLength"` MainAssetNameMaxLength uint64 `json:"mainAssetNameMaxLength"` SubAssetNameMinLength uint64 `json:"subAssetNameMinLength"` SubAssetNameMaxLength uint64 `json:"subAssetNameMaxLength"` }
Config Asset name level
Click to show internal directories.
Click to hide internal directories.