2020-09-24 00:01:40 +00:00
|
|
|
package actors
|
|
|
|
|
|
|
|
import (
|
|
|
|
"fmt"
|
|
|
|
|
|
|
|
"github.com/filecoin-project/go-state-types/network"
|
|
|
|
)
|
|
|
|
|
|
|
|
type Version int
|
|
|
|
|
2021-05-15 01:11:23 +00:00
|
|
|
var LatestVersion = 4
|
|
|
|
|
|
|
|
var Versions = []int{0, 2, 3, LatestVersion}
|
|
|
|
|
2020-09-24 00:01:40 +00:00
|
|
|
const (
|
2020-10-07 00:51:43 +00:00
|
|
|
Version0 Version = 0
|
|
|
|
Version2 Version = 2
|
2021-01-16 04:12:31 +00:00
|
|
|
Version3 Version = 3
|
2021-04-23 12:29:46 +00:00
|
|
|
Version4 Version = 4
|
2020-09-24 00:01:40 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
// Converts a network version into an actors adt version.
|
|
|
|
func VersionForNetwork(version network.Version) Version {
|
|
|
|
switch version {
|
2020-09-28 19:53:40 +00:00
|
|
|
case network.Version0, network.Version1, network.Version2, network.Version3:
|
2020-09-24 00:01:40 +00:00
|
|
|
return Version0
|
2020-12-19 20:29:12 +00:00
|
|
|
case network.Version4, network.Version5, network.Version6, network.Version7, network.Version8, network.Version9:
|
2020-09-28 23:14:51 +00:00
|
|
|
return Version2
|
2021-03-29 22:48:43 +00:00
|
|
|
case network.Version10, network.Version11:
|
2021-01-16 04:12:31 +00:00
|
|
|
return Version3
|
2021-04-23 12:29:46 +00:00
|
|
|
case network.Version12:
|
|
|
|
return Version4
|
2020-09-24 00:01:40 +00:00
|
|
|
default:
|
|
|
|
panic(fmt.Sprintf("unsupported network version %d", version))
|
|
|
|
}
|
|
|
|
}
|