The Android Developer Challenge is back! Submit your idea before December 2.

RestrictTo.Scope

public static final enum RestrictTo.Scope
extends Enum<RestrictTo.Scope>

java.lang.Object
   ↳ java.lang.Enum<androidx.annotation.RestrictTo.Scope>
     ↳ androidx.annotation.RestrictTo.Scope


Summary

Enum values

RestrictTo.Scope  GROUP_ID

This field is deprecated. Use LIBRARY_GROUP_PREFIX instead  

RestrictTo.Scope  LIBRARY

Restrict usage to code within the same library (e.g. 

RestrictTo.Scope  LIBRARY_GROUP

Restrict usage to code within the same group of libraries. 

RestrictTo.Scope  LIBRARY_GROUP_PREFIX

Restrict usage to code within packages whose groups share the same library group prefix up to the last ".", so for example libraries foo.bar:lib1 amd foo.baz:lib2 share the prefix "foo." and so they can use each other's apis that are restricted to this scope. 

RestrictTo.Scope  SUBCLASSES

Restrict usage to subclasses of the enclosing class. 

RestrictTo.Scope  TESTS

Restrict usage to tests. 

Public methods

static RestrictTo.Scope valueOf(String name)
static final Scope[] values()

Inherited methods

Enum values

GROUP_ID

public static final RestrictTo.Scope GROUP_ID

This field is deprecated.
Use LIBRARY_GROUP_PREFIX instead

Restrict usage to code within the same group ID (based on gradle group ID). This is an alias for LIBRARY_GROUP_PREFIX.

LIBRARY

public static final RestrictTo.Scope LIBRARY

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

LIBRARY_GROUP

public static final RestrictTo.Scope LIBRARY_GROUP

Restrict usage to code within the same group of libraries. This corresponds to the gradle group ID.

LIBRARY_GROUP_PREFIX

public static final RestrictTo.Scope LIBRARY_GROUP_PREFIX

Restrict usage to code within packages whose groups share the same library group prefix up to the last ".", so for example libraries foo.bar:lib1 amd foo.baz:lib2 share the prefix "foo." and so they can use each other's apis that are restricted to this scope. Similarly for com.foo.bar:lib1 and com.foo.baz:lib2 where they share "com.foo.". 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 ".".

SUBCLASSES

public static final RestrictTo.Scope SUBCLASSES

Restrict usage to subclasses of the enclosing class.

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

TESTS

public static final RestrictTo.Scope TESTS

Restrict usage to tests.

Public methods

valueOf

public static RestrictTo.Scope valueOf (String name)

Parameters
name String

Returns
RestrictTo.Scope

values

public static final Scope[] values ()

Returns
Scope[]