mirror of
https://gitlab.com/pulsechaincom/erigon-pulse.git
synced 2025-01-08 12:01:20 +00:00
27 lines
897 B
Go
27 lines
897 B
Go
package transition
|
|
|
|
import "github.com/ledgerwatch/erigon/cl/cltypes"
|
|
|
|
func (s *StateTransistor) ProcessEth1DataReset() {
|
|
nextEpoch := s.state.Epoch() + 1
|
|
if nextEpoch%s.beaconConfig.EpochsPerEth1VotingPeriod == 0 {
|
|
s.state.ResetEth1DataVotes()
|
|
}
|
|
}
|
|
|
|
func (s *StateTransistor) ProcessSlashingsReset() {
|
|
s.state.SetSlashingSegmentAt(int(s.state.Epoch()+1)%int(s.beaconConfig.EpochsPerSlashingsVector), 0)
|
|
|
|
}
|
|
|
|
func (s *StateTransistor) ProcessRandaoMixesReset() {
|
|
currentEpoch := s.state.Epoch()
|
|
nextEpoch := s.state.Epoch() + 1
|
|
s.state.SetRandaoMixAt(int(nextEpoch%s.beaconConfig.EpochsPerHistoricalVector), s.state.GetRandaoMixes(currentEpoch))
|
|
}
|
|
|
|
func (s *StateTransistor) ProcessParticipationFlagUpdates() {
|
|
s.state.SetPreviousEpochParticipation(s.state.CurrentEpochParticipation())
|
|
s.state.SetCurrentEpochParticipation(make([]cltypes.ParticipationFlags, len(s.state.Validators())))
|
|
}
|