axle
.
game
montyhall
package
montyhall
Linear Supertypes
AnyRef
,
Any
Ordering
Alphabetic
By Inheritance
Inherited
montyhall
AnyRef
Any
Hide All
Show All
Visibility
Public
All
Type Members
case class
Change
()
extends
MontyHallMove
with
Product
with
Serializable
case class
FirstChoice
(
door:
Int
)
extends
MontyHallMove
with
Product
with
Serializable
case class
MontyHall
(
contestant:
Player
,
contestantStrategy: (
MontyHall
,
MontyHallState
) ⇒
Distribution0
[
MontyHallMove
,
Rational
]
,
contestantDisplayer: (
String
) ⇒
Unit
,
monty:
Player
,
montyStrategy: (
MontyHall
,
MontyHallState
) ⇒
Distribution0
[
MontyHallMove
,
Rational
]
,
montyDisplayer: (
String
) ⇒
Unit
)
extends
Product
with
Serializable
sealed
trait
MontyHallMove
extends
AnyRef
case class
MontyHallOutcome
(
car:
Boolean
)
extends
Product
with
Serializable
case class
MontyHallState
(
placement:
Option
[
PlaceCar
]
,
carPlaced:
Boolean
,
firstChoice:
Option
[
FirstChoice
]
,
reveal:
Option
[
Reveal
]
,
secondChoice:
Option
[
Either
[
Change
,
Stay
]]
)
extends
Product
with
Serializable
case class
PlaceCar
(
door:
Int
)
extends
MontyHallMove
with
Product
with
Serializable
case class
Reveal
(
door:
Int
)
extends
MontyHallMove
with
Product
with
Serializable
case class
Stay
()
extends
MontyHallMove
with
Product
with
Serializable
Value Members
implicit
val
evGame
:
Game
[
MontyHall
,
MontyHallState
,
MontyHallOutcome
,
MontyHallMove
,
MontyHallState
,
Option
[
MontyHallMove
]]
implicit
val
evGameIO
:
GameIO
[
MontyHall
,
MontyHallOutcome
,
MontyHallMove
,
MontyHallState
,
Option
[
MontyHallMove
]]
Inherited from
AnyRef
Inherited from
Any
Ungrouped