Match

class Match<T>(val input: MvtExpression<*>, val branches: List<MvtExpression.Match.Branch<T>>, val default: MvtExpression<T>) : MvtExpression<T>

["match", input, label, value, label, value, …, default] — first label that equals the input wins. Labels can be a single value or a list (the latter is the variadic-label Mapbox extension).

Constructors

Link copied to clipboard
constructor(input: MvtExpression<*>, branches: List<MvtExpression.Match.Branch<T>>, default: MvtExpression<T>)

Types

Link copied to clipboard
class Branch<T>(val labels: List<Any?>, val value: MvtExpression<T>)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
open override fun evaluate(ctx: MvtExpression.EvalContext): T?
Link copied to clipboard

True when this expression (or any sub-expression) reads per-feature data — i.e. its result can differ between two features in the same tile at the same zoom. That means a reference to a feature property (Get / Has), the feature's dynamic state (FeatureState), its geometry type (GeometryType), or its line-progress parameter (LineProgress).