Split spec on spaces/commas into deduped tokens validated against
allowed. Assumes spec is already lowercased by the config layer.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | spec | |||
| character(len=*), | intent(in) | :: | allowed(:) | |||
| character(len=8), | intent(out) | :: | tokens(max_formats) | |||
| integer, | intent(out) | :: | n | |||
| logical, | intent(out) | :: | is_ok | |||
| character(len=*), | intent(out) | :: | message |