Source information collected at parse time.
| Name | Type | Description | Notes |
|---|---|---|---|
| syntaxVersion | String | The syntax version of the source, e.g. `cel1`. | [optional] |
| location | String | The location name. All position information attached to an expression is relative to this location. The location could be a file, UI element, or similar. For example, `acme/app/AnvilPolicy.cel`. | [optional] |
| lineOffsets | List<Integer> | Monotonically increasing list of code point offsets where newlines `\n` appear. The line number of a given position is the index `i` where for a given `id` the `line_offsets[i] < id_positions[id] < line_offsets[i+1]`. The column may be derivd from `id_positions[id] - line_offsets[i]`. | [optional] |
| positions | Map<String, Integer> | A map from the parse node id (e.g. `Expr.id`) to the code point offset within the source. | [optional] |
| macroCalls | Map<String, Expr> | A map from the parse node id where a macro replacement was made to the call `Expr` that resulted in a macro expansion. For example, `has(value.field)` is a function call that is replaced by a `test_only` field selection in the AST. Likewise, the call `list.exists(e, e > 10)` translates to a comprehension expression. The key in the map corresponds to the expression id of the expanded macro, and the value is the call `Expr` that was replaced. | [optional] |
| extensions | List<Extension> | A list of tags for extensions that were used while parsing or type checking the source expression. For example, optimizations that require special runtime support may be specified. These are used to check feature support between components in separate implementations. This can be used to either skip redundant work or report an error if the extension is unsupported. | [optional] |