RestrictTo.Scope

public enum RestrictTo.Scope extends Enum


Summary

Enum Values

GROUP_ID

This enum value is deprecated. Use @RestrictTo(LIBRARY_GROUP_PREFIX) instead

LIBRARY

Restrict usage to code within the same library (e.g. the same Gradle group ID and artifact ID).

LIBRARY_GROUP

Restrict usage to code within the same group of libraries.

LIBRARY_GROUP_PREFIX

Restrict usage to code within packages whose Gradle group IDs share the same prefix up to the last .

SUBCLASSES

Restrict usage to subclasses of the enclosing class.

TESTS

Restrict usage to test source sets or code annotated with the TESTS restriction scope.

Public methods

final @NonNull RestrictTo.Scope

Returns the enum constant of this type with the specified name.

final @NonNull RestrictTo.Scope

Returns the enum constant of this type with the specified name.

final @NonNull RestrictTo.Scope[]

Returns an array containing the constants of this enum type, in the order they're declared.

final @NonNull RestrictTo.Scope[]

Returns an array containing the constants of this enum type, in the order they're declared.

Enum Values

GROUP_ID

RestrictTo.Scope RestrictTo.Scope.GROUP_ID

Restrict usage to code within the same group ID (based on Gradle group ID).

This is an alias for LIBRARY_GROUP_PREFIX.

LIBRARY

RestrictTo.Scope RestrictTo.Scope.LIBRARY

Restrict usage to code within the same library (e.g. the same Gradle group ID and artifact ID).

LIBRARY_GROUP

RestrictTo.Scope RestrictTo.Scope.LIBRARY_GROUP

Restrict usage to code within the same group of libraries.

This corresponds to the Gradle group ID.

LIBRARY_GROUP_PREFIX

RestrictTo.Scope RestrictTo.Scope.LIBRARY_GROUP_PREFIX

Restrict usage to code within packages whose Gradle group IDs share the same prefix up to the last . separator.

For example, libraries foo.bar:lib1 and foo.baz:lib2 share the foo. prefix and can therefore use each other's APIs that are restricted to this scope. Similar applies to libraries com.foo.bar:lib1 and com.foo.baz:lib2, which share the com.foo. prefix.

Library com.bar.qux:lib3, however, will not be able to use the restricted API because it only shares the prefix com. and not all the way until the last . separator.

SUBCLASSES

RestrictTo.Scope RestrictTo.Scope.SUBCLASSES

Restrict usage to subclasses of the enclosing class.

Note: This scope should not be used to annotate packages.

TESTS

RestrictTo.Scope RestrictTo.Scope.TESTS

Restrict usage to test source sets or code annotated with the TESTS restriction scope.

This is equivalent to @VisibleForTesting(NONE).

Public methods

valueOf

Added in 1.0.0
public final @NonNull RestrictTo.Scope valueOf(@NonNull String value)

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Throws
kotlin.IllegalArgumentException

if this enum type has no constant with the specified name

valueOf

Added in 1.0.0
public final @NonNull RestrictTo.Scope valueOf(@NonNull String value)

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Throws
kotlin.IllegalArgumentException

if this enum type has no constant with the specified name

values

Added in 1.0.0
public final @NonNull RestrictTo.Scope[] values()

Returns an array containing the constants of this enum type, in the order they're declared.

This method may be used to iterate over the constants.

values

Added in 1.0.0
public final @NonNull RestrictTo.Scope[] values()

Returns an array containing the constants of this enum type, in the order they're declared.

This method may be used to iterate over the constants.