org.jetbrains.kotlin.resolve
Class BindingTraceContext

java.lang.Object
  extended by org.jetbrains.kotlin.resolve.BindingTraceContext
All Implemented Interfaces:
DiagnosticSink, BindingTrace

public class BindingTraceContext
extends java.lang.Object
implements BindingTrace


Field Summary
 
Fields inherited from interface org.jetbrains.kotlin.diagnostics.DiagnosticSink
DO_NOTHING, THROW_EXCEPTION
 
Constructor Summary
BindingTraceContext()
           
 
Method Summary
 void clearDiagnostics()
           
static BindingTraceContext createTraceableBindingTrace()
           
<K,V> V
get(ReadOnlySlice<K,V> slice, K key)
           
 BindingContext getBindingContext()
           
<K,V> java.util.Collection<K>
getKeys(WritableSlice<K,V> slice)
           
 KotlinType getType(KtExpression expression)
          Expression type should be taken from EXPRESSION_TYPE_INFO slice
<K> void
record(WritableSlice<K,java.lang.Boolean> slice, K key)
           
<K,V> void
record(WritableSlice<K,V> slice, K key, V value)
           
 void recordType(KtExpression expression, KotlinType type)
          Expression type should be recorded into EXPRESSION_TYPE_INFO slice (either updated old or a new one)
 void report(Diagnostic diagnostic)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BindingTraceContext

public BindingTraceContext()
Method Detail

createTraceableBindingTrace

@TestOnly
public static BindingTraceContext createTraceableBindingTrace()

report

public void report(@NotNull
                   Diagnostic diagnostic)
Specified by:
report in interface DiagnosticSink

clearDiagnostics

public void clearDiagnostics()

getBindingContext

@NotNull
public BindingContext getBindingContext()
Specified by:
getBindingContext in interface BindingTrace

record

public <K,V> void record(WritableSlice<K,V> slice,
                         K key,
                         V value)
Specified by:
record in interface BindingTrace

record

public <K> void record(WritableSlice<K,java.lang.Boolean> slice,
                       K key)
Specified by:
record in interface BindingTrace

get

public <K,V> V get(ReadOnlySlice<K,V> slice,
                   K key)
Specified by:
get in interface BindingTrace

getKeys

@NotNull
public <K,V> java.util.Collection<K> getKeys(WritableSlice<K,V> slice)
Specified by:
getKeys in interface BindingTrace

getType

@Nullable
public KotlinType getType(@NotNull
                                   KtExpression expression)
Description copied from interface: BindingTrace
Expression type should be taken from EXPRESSION_TYPE_INFO slice

Specified by:
getType in interface BindingTrace

recordType

public void recordType(@NotNull
                       KtExpression expression,
                       @Nullable
                       KotlinType type)
Description copied from interface: BindingTrace
Expression type should be recorded into EXPRESSION_TYPE_INFO slice (either updated old or a new one)

Specified by:
recordType in interface BindingTrace