├── .bsp └── sbt.json ├── .gitignore ├── .idea ├── .gitignore ├── codeStyles │ ├── Project.xml │ └── codeStyleConfig.xml ├── misc.xml ├── modules.xml ├── modules │ ├── cats-effect-build.iml │ └── cats-effect.iml ├── sbt.xml ├── scala_compiler.xml ├── scala_settings.xml └── vcs.xml ├── README.md ├── project └── build.properties └── src └── main ├── resources └── connection.txt └── scala └── com └── rockthejvm ├── part1recap ├── CatsTypeClasses.scala ├── ContextualAbstractionsScala2.scala ├── ContextualAbstractionsScala3.scala └── Essentials.scala ├── part2effects ├── Effects.scala ├── IOApps.scala ├── IOErrorHandling.scala ├── IOIntroduction.scala ├── IOParallelism.scala └── IOTraversal.scala ├── part3concurrency ├── AsyncIOs.scala ├── BlockingIOs.scala ├── CancellingIOs.scala ├── Fibers.scala ├── RacingIOs.scala └── Resources.scala ├── part4coordination ├── CountdownLatches.scala ├── CyclicBarriers.scala ├── Defers.scala ├── Mutex.scala ├── Refs.scala └── Semaphores.scala ├── part5polymorphic ├── PolymorphicAsync.scala ├── PolymorphicCancellation.scala ├── PolymorphicCoordination.scala ├── PolymorphicFibers.scala ├── PolymorphicSync.scala └── PolymorphicTemporalSuspension.scala ├── playground └── Playground.scala ├── utils ├── Utils.scala └── general │ └── Utils.scala └── utilsScala2 ├── general └── package.scala └── package.scala /.bsp/sbt.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.bsp/sbt.json -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/codeStyles/Project.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.idea/codeStyles/Project.xml -------------------------------------------------------------------------------- /.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.idea/codeStyles/codeStyleConfig.xml -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.idea/misc.xml -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.idea/modules.xml -------------------------------------------------------------------------------- /.idea/modules/cats-effect-build.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.idea/modules/cats-effect-build.iml -------------------------------------------------------------------------------- /.idea/modules/cats-effect.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.idea/modules/cats-effect.iml -------------------------------------------------------------------------------- /.idea/sbt.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.idea/sbt.xml -------------------------------------------------------------------------------- /.idea/scala_compiler.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.idea/scala_compiler.xml -------------------------------------------------------------------------------- /.idea/scala_settings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.idea/scala_settings.xml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/README.md -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version=1.5.2 2 | -------------------------------------------------------------------------------- /src/main/resources/connection.txt: -------------------------------------------------------------------------------- 1 | rockthejvm.com -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1recap/CatsTypeClasses.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part1recap/CatsTypeClasses.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1recap/ContextualAbstractionsScala2.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part1recap/ContextualAbstractionsScala2.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1recap/ContextualAbstractionsScala3.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part1recap/ContextualAbstractionsScala3.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part1recap/Essentials.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part1recap/Essentials.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2effects/Effects.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part2effects/Effects.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2effects/IOApps.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part2effects/IOApps.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2effects/IOErrorHandling.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part2effects/IOErrorHandling.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2effects/IOIntroduction.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part2effects/IOIntroduction.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2effects/IOParallelism.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part2effects/IOParallelism.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part2effects/IOTraversal.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part2effects/IOTraversal.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3concurrency/AsyncIOs.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part3concurrency/AsyncIOs.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3concurrency/BlockingIOs.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part3concurrency/BlockingIOs.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3concurrency/CancellingIOs.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part3concurrency/CancellingIOs.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3concurrency/Fibers.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part3concurrency/Fibers.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3concurrency/RacingIOs.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part3concurrency/RacingIOs.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part3concurrency/Resources.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part3concurrency/Resources.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4coordination/CountdownLatches.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part4coordination/CountdownLatches.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4coordination/CyclicBarriers.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part4coordination/CyclicBarriers.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4coordination/Defers.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part4coordination/Defers.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4coordination/Mutex.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part4coordination/Mutex.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4coordination/Refs.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part4coordination/Refs.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part4coordination/Semaphores.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part4coordination/Semaphores.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicAsync.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicAsync.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicCancellation.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicCancellation.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicCoordination.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicCoordination.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicFibers.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicFibers.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicSync.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicSync.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicTemporalSuspension.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/part5polymorphic/PolymorphicTemporalSuspension.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/playground/Playground.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/playground/Playground.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/utils/Utils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/utils/Utils.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/utils/general/Utils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/utils/general/Utils.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/utilsScala2/general/package.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/utilsScala2/general/package.scala -------------------------------------------------------------------------------- /src/main/scala/com/rockthejvm/utilsScala2/package.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rockthejvm/cats-effect/HEAD/src/main/scala/com/rockthejvm/utilsScala2/package.scala --------------------------------------------------------------------------------