# Functions

MarshalFeatureFlagToJSONWriter attempts to convert a FeatureFlag to JSON using the jsonstream API.
MarshalSegmentToJSONWriter attempts to convert a Segment to JSON using the jsonstream API.
NewJSONDataModelSerialization provides the default JSON encoding for SDK data model objects.
PreprocessFlag precomputes internal data structures based on the flag configuration, to speed up evaluations.
PreprocessSegment precomputes internal data structures based on the segment configuration, to speed up evaluations.
UnmarshalFeatureFlagFromJSONReader attempts to convert a FeatureFlag from JSON using the jsonstream API.
UnmarshalSegmentFromJSONReader attempts to convert a Segment from JSON using the jsonstream API.

# Constants

OperatorAfter matches a user value and clause value if they are both timestamps and the former > the latter.
OperatorBefore matches a user value and clause value if they are both timestamps and the former < the latter.
OperatorContains matches a user value and clause value if they are both strings and the former contains the latter.
OperatorEndsWith matches a user value and clause value if they are both strings and the former ends with the latter.
OperatorGreaterThan matches a user value and clause value if they are both numbers and the former > the latter.
OperatorGreaterThanOrEqual matches a user value and clause value if they are both numbers and the former >= the latter.
OperatorIn matches a user value and clause value if the two values are equal (including their type).
OperatorLessThan matches a user value and clause value if they are both numbers and the former < the latter.
OperatorLessThanOrEqual matches a user value and clause value if they are both numbers and the former <= the latter.
OperatorMatches matches a user value and clause value if they are both strings and the latter is a valid regular expression that matches the former.
OperatorSegmentMatch matches a user if the user is included in the user segment whose key is the clause value.
OperatorSemVerEqual matches a user value and clause value if they are both semantic versions and they are equal.
OperatorSemVerGreaterThan matches a user value and clause value if they are both semantic versions and the former > the latter.
OperatorSemVerLessThan matches a user value and clause value if they are both semantic versions and the former < the latter.
OperatorStartsWith matches a user value and clause value if they are both strings and the former starts with the latter.
RolloutKindExperiment represents an experiment.
RolloutKindRollout represents a simple percentage rollout.

# Variables

nolint:gochecknoglobals.
nolint:gochecknoglobals.

# Structs

Clause describes an individual clause within a FlagRule or SegmentRule.
ClientSideAvailability describes whether a flag is available to client-side SDKs.
EvaluatorAccessorMethods contains functions that are used by the evaluation engine in the parent package to perform certain lookup operations on data model structs.
FeatureFlag describes an individual feature flag.
FlagRule describes a single rule within a feature flag.
Prerequisite describes a requirement that another feature flag return a specific variation.
Rollout describes how users will be bucketed into variations during a percentage rollout.
Segment describes a group of contexts based on context keys and/or matching rules.
SegmentRule describes a single rule within a segment.
SegmentTarget describes a target list within a segment, for a specific context kind.
Target describes a set of users who will receive a specific variation.
TypeConversionMethods contains type conversion functions that are used by the evaluation engine in the parent package.
VariationOrRollout desscribes either a fixed variation or a percentage rollout.
WeightedVariation describes a fraction of users who will receive a specific variation.

# Interfaces

DataModelSerialization is an abstraction of an encoding for SDK data model objects.

# Type aliases

Operator describes an operator for a clause.
RolloutKind describes whether a rollout is a simple percentage rollout or represents an experiment.