summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorJulian Michael <julianjohnmichael@gmail.com>2018-10-04 23:20:25 -0700
committerLi Haoyi <haoyi.sg@gmail.com>2018-10-05 14:20:25 +0800
commitb1082cf0ab772108fdd82b79a366ab59829a9907 (patch)
treee8ed09f3a51a41f8ccad13a21ab48e52ec5a225e /docs
parentbc645c444c04d4d53692fd9882b892bb21263e81 (diff)
downloadmill-b1082cf0ab772108fdd82b79a366ab59829a9907.tar.gz
mill-b1082cf0ab772108fdd82b79a366ab59829a9907.tar.bz2
mill-b1082cf0ab772108fdd82b79a366ab59829a9907.zip
Elaborate docs on using traits v classes for modules (#449)
Diffstat (limited to 'docs')
-rw-r--r--docs/pages/5 - Modules.md6
1 files changed, 5 insertions, 1 deletions
diff --git a/docs/pages/5 - Modules.md b/docs/pages/5 - Modules.md
index fa6260f3..973b93d1 100644
--- a/docs/pages/5 - Modules.md
+++ b/docs/pages/5 - Modules.md
@@ -52,12 +52,16 @@ This would make the following targets available from the command line
- `mill show foo2.baz`
- `mill show foo2.qux`
-The built in `mill.scalalib` package uses this to define
+The built-in `mill.scalalib` package uses this to define
`mill.scalalib.ScalaModule`, `mill.scalalib.SbtModule` and
`mill.scalalib.TestScalaModule`, all of which contain a set of "standard"
operations such as `compile` `jar` or `assembly` that you may expect from a
typical Scala module.
+When defining your own module abstractions, in general you should use `trait`s
+and not `class`es, except in the case of
+[Cross Builds](http://www.lihaoyi.com/mill/page/cross-builds.html).
+
## Overriding Targets
```scala