in app/models/CustomisedRole.scala [62:78]
def key[T: P]: P[String] = P(CharsWhile(_ != ':').!)
def allowedUnquotedChars: Char => Boolean = c =>
c.isLetterOrDigit || c == '-' || c == '_' || c == '/' || c == '.'
def unquotedSingleValue[T: P]: P[SingleParamValue] =
P(CharPred(allowedUnquotedChars).rep(1).!).map(SingleParamValue)
def quotedSingleValue[T: P]: P[SingleParamValue] =
P("'" ~ CharsWhile(_ != '\'', 0).! ~ "'").map(SingleParamValue)
def singleValue[T: P]: P[SingleParamValue] = P(
unquotedSingleValue | quotedSingleValue
)
def multiValues[T: P]: P[ListParamValue] = P(
"[" ~/ singleValue.rep(sep = ",") ~ "]"
).map(params => ListParamValue(params.toList))
def dictValues[T: P]: P[DictParamValue] =
P("{" ~/ dictPair.rep(sep = ",") ~ "}").map { pairs =>
DictParamValue(pairs.toMap)
}