Skip to content

Commit

Permalink
Hyperspace nv20 / av12 (#159)
Browse files Browse the repository at this point in the history
  • Loading branch information
raulk authored Feb 13, 2023
1 parent 9a067d3 commit 59a688c
Show file tree
Hide file tree
Showing 107 changed files with 28,359 additions and 30 deletions.
1 change: 1 addition & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ gen:
$(GO_BIN) run ./builtin/v9/gen/gen.go
$(GO_BIN) run ./builtin/v10/gen/gen.go
$(GO_BIN) run ./builtin/v11/gen/gen.go
$(GO_BIN) run ./builtin/v12/gen/gen.go
.PHONY: gen

lint:
Expand Down
3 changes: 3 additions & 0 deletions actors/version.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ const (
Version9 Version = 9
Version10 Version = 10
Version11 Version = 11
Version12 Version = 12
)

// Converts a network version into an actors adt version.
Expand Down Expand Up @@ -47,6 +48,8 @@ func VersionForNetwork(version network.Version) (Version, error) {
return Version10, nil
case network.Version19:
return Version11, nil
case network.Version20:
return Version12, nil
default:
return -1, fmt.Errorf("unsupported network version %d", version)
}
Expand Down
8 changes: 3 additions & 5 deletions builtin/methods.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,13 @@ var MethodsAccount = struct {
}

var MethodsInit = struct {
Constructor abi.MethodNum
Exec abi.MethodNum
Exec4 abi.MethodNum
ExecExported abi.MethodNum
Constructor abi.MethodNum
Exec abi.MethodNum
Exec4 abi.MethodNum
}{
MethodConstructor,
2,
3,
MustGenerateFRCMethodNum("Exec"),
}

var MethodsCron = struct {
Expand Down
9 changes: 9 additions & 0 deletions builtin/v12/account/account_state.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package account

import (
addr "github.com/filecoin-project/go-address"
)

type State struct {
Address addr.Address
}
6 changes: 6 additions & 0 deletions builtin/v12/account/account_types.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package account

type AuthenticateMessageParams struct {
Signature []byte
Message []byte
}
169 changes: 169 additions & 0 deletions builtin/v12/account/cbor_gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions builtin/v12/account/invariants.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package account

import (
"github.com/filecoin-project/go-address"

"github.com/filecoin-project/go-state-types/builtin"
)

type StateSummary struct {
PubKeyAddr address.Address
}

// Checks internal invariants of account state.
func CheckStateInvariants(st *State, idAddr address.Address) (*StateSummary, *builtin.MessageAccumulator) {
acc := &builtin.MessageAccumulator{}
accountSummary := &StateSummary{
PubKeyAddr: st.Address,
}

if id, err := address.IDFromAddress(idAddr); err != nil {
acc.Addf("error extracting actor ID from address: %v", err)
} else if id >= builtin.FirstNonSingletonActorId {
acc.Require(st.Address.Protocol() == address.BLS || st.Address.Protocol() == address.SECP256K1,
"actor address %v must be BLS or SECP256K1 protocol", st.Address)
}

return accountSummary, acc
}
15 changes: 15 additions & 0 deletions builtin/v12/account/methods.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package account

import (
"github.com/filecoin-project/go-address"

"github.com/filecoin-project/go-state-types/abi"
"github.com/filecoin-project/go-state-types/builtin"
)

var Methods = map[abi.MethodNum]builtin.MethodMeta{
1: {"Constructor", *new(func(*address.Address) *abi.EmptyValue)}, // Constructor
2: {"PubkeyAddress", *new(func(*abi.EmptyValue) *address.Address)}, // PubkeyAddress
builtin.MustGenerateFRCMethodNum("AuthenticateMessage"): {"AuthenticateMessage", *new(func(*AuthenticateMessageParams) *abi.EmptyValue)}, // AuthenticateMessage
builtin.MustGenerateFRCMethodNum("Receive"): {"UniversalReceiverHook", *new(func(*abi.CborBytesTransparent) *abi.EmptyValue)}, // UniversalReceiverHook
}
Loading

0 comments on commit 59a688c

Please sign in to comment.