From 59c309cf3b739c116c2ddce4e7f4527399b3c7ef Mon Sep 17 00:00:00 2001 From: Alexander Gehrke Date: Fri, 17 Dec 2021 16:39:01 +0100 Subject: [PATCH] Add function piping syntax extension --- src/main/scala/de.qwertyuiop.aoc/lib/extensions.scala | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/scala/de.qwertyuiop.aoc/lib/extensions.scala b/src/main/scala/de.qwertyuiop.aoc/lib/extensions.scala index 27e7b46..debdb77 100644 --- a/src/main/scala/de.qwertyuiop.aoc/lib/extensions.scala +++ b/src/main/scala/de.qwertyuiop.aoc/lib/extensions.scala @@ -1,4 +1,5 @@ package de.qwertyuiop.aoc.lib +import util.chaining.given /* for splitting input with separator lines */ extension [A](input: List[A])(using CanEqual[A,A]) @@ -29,3 +30,6 @@ extension [K,V,W](map: Map[K,V]) extension [A](input: List[A]) def countAll: Map[A, Int] = input.groupBy(identity).view.mapValues(_.size).toMap + +extension [A](a: A) + def |[B](f: (A) => B): B = a.pipe(f)