diff options
Diffstat (limited to 'src/main/scala/Client/StdinLineReader.scala')
-rw-r--r-- | src/main/scala/Client/StdinLineReader.scala | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/src/main/scala/Client/StdinLineReader.scala b/src/main/scala/Client/StdinLineReader.scala deleted file mode 100644 index 42a1f40..0000000 --- a/src/main/scala/Client/StdinLineReader.scala +++ /dev/null @@ -1,31 +0,0 @@ -package o1game.Client - -import scala.concurrent.Future -import scala.concurrent.ExecutionContext.Implicits.global -import scala.io.StdIn.readLine -import scala.util.{Try, Success, Failure} - -/** This class is for taking new lines from stdin when they are available. - * reading starts when either newLine or clear or startReading are called. - */ -class StdinLineReader: - - private var nextLine: Future[String] = Future.failed(Exception()) - - /** Returns a new line of input if there are any. */ - def newLine(): Option[String] = - this.nextLine.value match - case Some(Success(s)) => - this.startReading() - Some(s) - case Some(Failure(e)) => - this.startReading() - None - case None => None - - /** Discards the line that is currently being read and restarts reading */ - def startReading(): Unit = - this.nextLine = Future(readLine()) - - -end StdinLineReader |