IntFlagMapping

public final class IntFlagMapping
extends Object

java.lang.Object
   ↳ android.view.inspector.IntFlagMapping


Maps the values of an int property to sets of string for properties that encode flags. An InspectionCompanion may provide an instance of this class to a PropertyMapper for flag values packed into primitive int properties. Each flag has a mask and a target value, for non-exclusive flags, the target can also be used as the mask. A given integer value is compared against each flag to find what flags are active for it by bitwise anding it with the mask and comparing the result against the target, that is, (value & mask) == target.

Summary

Public constructors

IntFlagMapping()

Public methods

void add(int mask, int target, String name)

Add a mutually exclusive flag to the map.

Set<String> get(int value)

Get a set of the names of enabled flags for a given property value.

Inherited methods

Public constructors

IntFlagMapping

public IntFlagMapping ()

Public methods

add

Added in API level 29
public void add (int mask, 
                int target, 
                String name)

Add a mutually exclusive flag to the map.

Parameters
mask int: The bit mask to compare to and with a value

target int: The target value to compare the masked value with

name String: The name of the flag to include if enabled This value cannot be null.

get

Added in API level 29
public Set<String> get (int value)

Get a set of the names of enabled flags for a given property value.

Parameters
value int: The value of the property

Returns
Set<String> The names of the enabled flags, empty if no flags enabled This value cannot be null.