Skip to content

Instantly share code, notes, and snippets.

@nicholasren
Last active August 29, 2015 14:01
Show Gist options
  • Save nicholasren/ab0663cf663d50ae5ccb to your computer and use it in GitHub Desktop.
Save nicholasren/ab0663cf663d50ae5ccb to your computer and use it in GitHub Desktop.
scala the language matters training
//-------------------------------------//
// readFile is a high order function //
// which can take another function //
// as parameter //
//-------------------------------------//
def using[T](f: File)(handler: FileInputStream => T): T = {
val resource = new java.io.FileInputStream(f)
try {
handler(resource)
} finally {
resource.close()
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment