mirror of
https://github.com/luxfi/evm.git
synced 2026-09-24 00:27:44 +00:00
36 lines
717 B
Go
36 lines
717 B
Go
// Copyright 2025 Lux Industries, Inc.
|
|
// This file contains the Block interface.
|
|
|
|
package iface
|
|
|
|
import "context"
|
|
|
|
// Block represents a block in the blockchain
|
|
type Block interface {
|
|
// ID returns the block's ID
|
|
ID() ID
|
|
|
|
// Accept marks the block as accepted
|
|
Accept(context.Context) error
|
|
|
|
// Reject marks the block as rejected
|
|
Reject(context.Context) error
|
|
|
|
// Status returns the block's status
|
|
Status() Status
|
|
|
|
// Parent returns the parent block ID
|
|
Parent() ID
|
|
|
|
// Height returns the block height
|
|
Height() uint64
|
|
|
|
// Timestamp returns the block timestamp
|
|
Timestamp() Timestamp
|
|
|
|
// Verify verifies the block
|
|
Verify(context.Context) error
|
|
|
|
// Bytes returns the block bytes
|
|
Bytes() []byte
|
|
} |