diff options
Diffstat (limited to 'src/main/scala/com/drivergrp/core/package.scala')
-rw-r--r-- | src/main/scala/com/drivergrp/core/package.scala | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/main/scala/com/drivergrp/core/package.scala b/src/main/scala/com/drivergrp/core/package.scala new file mode 100644 index 0000000..3c19431 --- /dev/null +++ b/src/main/scala/com/drivergrp/core/package.scala @@ -0,0 +1,19 @@ +package com.drivergrp + + +package object core { + import scala.language.reflectiveCalls + + def make[T](v: => T)(f: T => Unit): T = { + val value = v; f(value); value + } + + def using[R <: { def close() }, P](r: => R)(f: R => P): P = { + val resource = r + try { + f(resource) + } finally { + resource.close() + } + } +} |