| enterRule(ParseTreeListener) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| GRANT() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| ON() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| TO() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| GROUP() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| VAULT() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| accept(ParseTreeVisitor) |   | 66% |   | 50% | 1 | 2 | 1 | 2 | 0 | 1 |
| exitRule(ParseTreeListener) |  | 100% |   | 50% | 1 | 2 | 0 | 2 | 0 | 1 |
| privilegeList() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| identifierOrTextOrAsterisk() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| userIdentify() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| identifierOrText() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| DorisParser.GrantResourcePrivilegeContext(DorisParser.SupportedGrantRevokeStatementContext) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| RESOURCE() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| CLUSTER() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| COMPUTE() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| STAGE() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| STORAGE() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| WORKLOAD() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| ROLE() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |