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() } } }