Archived
1
0
Fork 0
This repository has been archived on 2024-12-18. You can view files and clone it, but cannot push or open issues or pull requests.
flexassistant/pool.go

46 lines
867 B
Go
Raw Normal View History

package main
import (
"fmt"
"gorm.io/gorm"
)
// Pool to store pool attributes
type Pool struct {
gorm.Model
Coin string `gorm:"unique;not null"`
LastBlockNumber uint64
}
// NewPool creates a Pool
func NewPool(coin string) *Pool {
return &Pool{Coin: coin}
}
// String represents Pool to a printable format
func (p *Pool) String() string {
return fmt.Sprintf("Pool<%s>", p.Coin)
}
// Block to store block attributes
type Block struct {
Hash string `gorm:"unique;not null"`
Number uint64 `gorm:"not null"`
Reward float64 `gorm:"not null"`
}
// NewBlock creates a Block
func NewBlock(hash string, number uint64, reward float64) *Block {
return &Block{
Hash: hash,
Number: number,
Reward: reward,
}
}
// String represents Block to a printable format
func (b *Block) String() string {
return fmt.Sprintf("Block<%d>", b.Number)
}