11import inspect
22
3- from axelrod .actions import Actions
3+ from axelrod .actions import Actions , Action
44from axelrod .player import Player
55from axelrod ._strategy_utils import look_ahead
66
@@ -22,7 +22,7 @@ class MindReader(Player):
2222 'manipulates_state' : False
2323 }
2424
25- def strategy (self , opponent ) :
25+ def strategy (self , opponent : Player ) -> Action :
2626 """Pretends to play the opponent a number of times before each match.
2727 The primary purpose is to look far enough ahead to see if a defect will
2828 be punished by the opponent.
@@ -61,7 +61,7 @@ class ProtectedMindReader(MindReader):
6161 'manipulates_state' : False
6262 }
6363
64- def __setattr__ (self , name , val ):
64+ def __setattr__ (self , name : str , val : str ):
6565 """Stops any other strategy altering the methods of this class """
6666
6767 if name == 'strategy' :
@@ -85,7 +85,7 @@ class MirrorMindReader(ProtectedMindReader):
8585 'manipulates_state' : False
8686 }
8787
88- def strategy (self , opponent ) :
88+ def strategy (self , opponent : Player ) -> Action :
8989 """Will read the mind of the opponent and play the opponent's strategy.
9090
9191 Also avoid infinite recursion when called by itself or another mind
0 commit comments