org.jetbrains.jet.lang.resolve
Class ObservableBindingTrace

java.lang.Object
  extended by org.jetbrains.jet.lang.resolve.ObservableBindingTrace
All Implemented Interfaces:
DiagnosticHolder, BindingTrace

public class ObservableBindingTrace
extends java.lang.Object
implements BindingTrace


Nested Class Summary
static interface ObservableBindingTrace.RecordHandler<K,V>
           
 
Field Summary
 
Fields inherited from interface org.jetbrains.jet.lang.diagnostics.DiagnosticHolder
DO_NOTHING, THROW_EXCEPTION
 
Constructor Summary
ObservableBindingTrace(BindingTrace originalTrace)
           
 
Method Summary
<K,V> ObservableBindingTrace
addHandler(WritableSlice<K,V> slice, ObservableBindingTrace.RecordHandler<K,V> handler)
           
<K,V> V
get(ReadOnlySlice<K,V> slice, K key)
           
 BindingContext getBindingContext()
           
<K,V> java.util.Collection<K>
getKeys(WritableSlice<K,V> 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 report(Diagnostic diagnostic)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ObservableBindingTrace

public ObservableBindingTrace(BindingTrace originalTrace)
Method Detail

report

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

getBindingContext

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

addHandler

public <K,V> ObservableBindingTrace addHandler(@NotNull
                                               WritableSlice<K,V> slice,
                                               @NotNull
                                               ObservableBindingTrace.RecordHandler<K,V> handler)