Scala Uniquely Bound Classes Under Traits: SubCut

A simple, lightweight and convenient way to inject dependencies in scala, in a scala-like way.

License

License

Categories

Categories

Scala Languages
GroupId

GroupId

org.scala-tools
ArtifactId

ArtifactId

subcut_2.8.0
Last Version

Last Version

0.8
Release Date

Release Date

Type

Type

jar
Description

Description

Scala Uniquely Bound Classes Under Traits: SubCut
A simple, lightweight and convenient way to inject dependencies in scala, in a scala-like way.
Project Organization

Project Organization

scala-tools.org
Source Code Management

Source Code Management

http://github.com/dickwall/subcut/tree/master

Download subcut_2.8.0

How to add to project

<!-- https://jarcasting.com/artifacts/org.scala-tools/subcut_2.8.0/ -->
<dependency>
    <groupId>org.scala-tools</groupId>
    <artifactId>subcut_2.8.0</artifactId>
    <version>0.8</version>
</dependency>
// https://jarcasting.com/artifacts/org.scala-tools/subcut_2.8.0/
implementation 'org.scala-tools:subcut_2.8.0:0.8'
// https://jarcasting.com/artifacts/org.scala-tools/subcut_2.8.0/
implementation ("org.scala-tools:subcut_2.8.0:0.8")
'org.scala-tools:subcut_2.8.0:jar:0.8'
<dependency org="org.scala-tools" name="subcut_2.8.0" rev="0.8">
  <artifact name="subcut_2.8.0" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.scala-tools', module='subcut_2.8.0', version='0.8')
)
libraryDependencies += "org.scala-tools" % "subcut_2.8.0" % "0.8"
[org.scala-tools/subcut_2.8.0 "0.8"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

There are no modules declared in this project.

SubCut README

SubCut, or Scala Uniquely Bound Classes Under Traits, is a mix of service locator and dependency injection patterns designed to provide an idiomatic way of providing configured dependencies to scala applications. It is not a full inversion of control solution like Spring, but instead provides flexible and nearly invisible binding of traits to instances, classes or provider methods, along with a convenient binding DSL (Domain Specific Language) and an emphasis on convenience for developers, compile time performance, compile time type safety and immutability.

It is also small (a few hundred lines of code) and has no dependencies other than the Scala runtime libraries (plus scalatest and junit if you want to build from source and run the tests).

The SubCut library is available as open source under the Apache v2 license.

Documentation

Just Added: Property File Configuration

The scaladoc in the source code is reasonably complete, and will continue to be improved. The unit tests provide further code examples of how subcut can be used, but does not attempt to demonstrate recommended uses or effective recipes. There is a Getting Started document that spells out the quickest way to get going, and (in the author's opinion), the best way to use subcut effectively.

Scaladocs can be found on the GitHub home page for SubCut.

Or, take a look at an overview of What's new in SubCut 2.0

Versions

Version
0.8