org.jetbrains.kotlin.descriptors
Class Visibilities

java.lang.Object
  extended by org.jetbrains.kotlin.descriptors.Visibilities

public class Visibilities
extends java.lang.Object


Field Summary
static Visibility DEFAULT_VISIBILITY
           
static Visibility INHERITED
           
static Visibility INTERNAL
           
static Visibility INVISIBLE_FAKE
           
static java.util.Set<Visibility> INVISIBLE_FROM_OTHER_MODULES
           
static Visibility LOCAL
           
static Visibility PRIVATE
           
static Visibility PRIVATE_TO_THIS
          This visibility is needed for the next case: class A(t: T) { private val t: T = t // visibility for t is PRIVATE_TO_THIS fun test() { val x: T = t // correct val y: T = this.t // also correct } fun foo(a: A) { val x: String = a.t // incorrect, because a.t can be Any } }
static Visibility PROTECTED
           
static Visibility PUBLIC
           
static Visibility UNKNOWN
           
 
Method Summary
static java.lang.Integer compare(Visibility first, Visibility second)
           
static DeclarationDescriptorWithVisibility findInvisibleMember(ReceiverValue receiver, DeclarationDescriptorWithVisibility what, DeclarationDescriptor from)
           
static boolean isPrivate(Visibility visibility)
           
static boolean isVisible(ReceiverValue receiver, DeclarationDescriptorWithVisibility what, DeclarationDescriptor from)
           
static boolean isVisibleWithIrrelevantReceiver(DeclarationDescriptorWithVisibility what, DeclarationDescriptor from)
          Receiver used only for visibility PRIVATE_TO_THIS.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PRIVATE

public static final Visibility PRIVATE

PRIVATE_TO_THIS

public static final Visibility PRIVATE_TO_THIS
This visibility is needed for the next case: class A(t: T) { private val t: T = t // visibility for t is PRIVATE_TO_THIS fun test() { val x: T = t // correct val y: T = this.t // also correct } fun foo(a: A) { val x: String = a.t // incorrect, because a.t can be Any } }


PROTECTED

public static final Visibility PROTECTED

INTERNAL

public static final Visibility INTERNAL

PUBLIC

public static final Visibility PUBLIC

LOCAL

public static final Visibility LOCAL

INHERITED

public static final Visibility INHERITED

INVISIBLE_FAKE

public static final Visibility INVISIBLE_FAKE

UNKNOWN

public static final Visibility UNKNOWN

INVISIBLE_FROM_OTHER_MODULES

public static final java.util.Set<Visibility> INVISIBLE_FROM_OTHER_MODULES

DEFAULT_VISIBILITY

public static final Visibility DEFAULT_VISIBILITY
Method Detail

isVisible

public static boolean isVisible(@Nullable
                                ReceiverValue receiver,
                                @NotNull
                                DeclarationDescriptorWithVisibility what,
                                @NotNull
                                DeclarationDescriptor from)

isVisibleWithIrrelevantReceiver

public static boolean isVisibleWithIrrelevantReceiver(@NotNull
                                                      DeclarationDescriptorWithVisibility what,
                                                      @NotNull
                                                      DeclarationDescriptor from)
Receiver used only for visibility PRIVATE_TO_THIS. For all other visibilities this method give correct result.


findInvisibleMember

@Nullable
public static DeclarationDescriptorWithVisibility findInvisibleMember(@Nullable
                                                                               ReceiverValue receiver,
                                                                               @NotNull
                                                                               DeclarationDescriptorWithVisibility what,
                                                                               @NotNull
                                                                               DeclarationDescriptor from)

compare

@Nullable
public static java.lang.Integer compare(@NotNull
                                                 Visibility first,
                                                 @NotNull
                                                 Visibility second)

isPrivate

public static boolean isPrivate(@NotNull
                                Visibility visibility)