fork(1) download
  1. final class Order private() {
  2. class OrderLine(x: Int) { }
  3.  
  4. def this(makeOrderLines: { def apply(order: Order): Seq[order.OrderLine] }) = {
  5. this()
  6. orderLines = makeOrderLines(this)
  7. }
  8.  
  9. // TODO: Private setter.
  10. var orderLines: Seq[OrderLine] = null
  11. }
  12.  
  13. object Main extends App {
  14. val order = new Order(new {
  15. def apply(order: Order) =
  16. Seq(new order.OrderLine(1), new order.OrderLine(2))
  17. })
  18. println(order.orderLines)
  19. }
  20.  
Success #stdin #stdout 0.39s 382016KB
stdin
Standard input is empty
stdout
List(Order$OrderLine@17779f2, Order$OrderLine@76da32)