Represent a token as string
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(toml_token), | intent(in) | :: | token |
Token to represent as string |
String representation of token
pure function stringify(token) result(str) !> Token to represent as string type(toml_token), intent(in) :: token !> String representation of token character(len=:), allocatable :: str select case(token%kind) case default; str = "unknown" case(token_kind%invalid); str = "invalid sequence" case(token_kind%eof); str = "end of file" case(token_kind%unclosed); str = "unclosed group" case(token_kind%whitespace); str = "whitespace" case(token_kind%comment); str = "comment" case(token_kind%newline); str = "newline" case(token_kind%dot); str = "dot" case(token_kind%comma); str = "comma" case(token_kind%equal); str = "equal" case(token_kind%lbrace); str = "opening brace" case(token_kind%rbrace); str = "closing brace" case(token_kind%lbracket); str = "opening bracket" case(token_kind%rbracket); str = "closing bracket" case(token_kind%string); str = "string" case(token_kind%mstring); str = "multiline string" case(token_kind%literal); str = "literal" case(token_kind%mliteral); str = "multiline-literal" case(token_kind%keypath); str = "keypath" case(token_kind%int); str = "integer" case(token_kind%float); str = "float" case(token_kind%bool); str = "bool" case(token_kind%datetime); str = "datetime" end select end function stringify