Merge pull request #801 from ethereum/JustinDrake-patch-18

Simplify exit_validator
This commit is contained in:
Danny Ryan 2019-03-19 14:19:17 -06:00 committed by GitHub
commit 89a5a0bfa9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 7 deletions

View File

@ -1364,17 +1364,14 @@ def initiate_validator_exit(state: BeaconState, index: ValidatorIndex) -> None:
```python ```python
def exit_validator(state: BeaconState, index: ValidatorIndex) -> None: def exit_validator(state: BeaconState, index: ValidatorIndex) -> None:
""" """
Exit the validator of the given ``index``. Exit the validator with the given ``index``.
Note that this function mutates ``state``. Note that this function mutates ``state``.
""" """
validator = state.validator_registry[index] validator = state.validator_registry[index]
delayed_activation_exit_epoch = get_delayed_activation_exit_epoch(get_current_epoch(state))
# The following updates only occur if not previous exited # Update validator exit epoch if not previously exited
if validator.exit_epoch <= delayed_activation_exit_epoch: if validator.exit_epoch == FAR_FUTURE_EPOCH:
return validator.exit_epoch = get_delayed_activation_exit_epoch(get_current_epoch(state))
else:
validator.exit_epoch = delayed_activation_exit_epoch
``` ```
#### `slash_validator` #### `slash_validator`