ridl-syntax 0.9.0

The RIDL family lexer and grammar: a lossless concrete syntax tree over rowan.
Documentation
package veh.services

interface CruiseControl {
  signal engaged : Boolean
  command setLever(lever: LeverInput)
}

interface DoorControl {
  signal locked : Boolean
}

interface MotorControl {
  signal rpm : Rpm
}

service veh.adas.cruise      : CruiseControl
service veh.body.doors       : DoorControl
service veh.powertrain.motor : MotorControl

service veh.hvac.cabin {
  signal  temperature : Temperature @[1s..10s]
  command setTarget(t: Temperature)
}

// The shape list (ADR-0015 decision 12): required commas between shapes, and
// a multi-line spelling with an optional trailing comma.
service veh.adas.dash : CruiseControl, DoorControl

service veh.body.composite :
  DoorControl,
  MotorControl,