Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
import com.sun.tools.javac.tree.EndPosTable;
import com.sun.tools.javac.tree.JCTree;
import com.sun.tools.javac.util.JCDiagnostic;
import com.sun.tools.javac.util.List;
import com.sun.tools.javac.util.Position;
import com.sourcegraph.semanticdb_javac.Semanticdb.SymbolOccurrence.Role;

Expand Down Expand Up @@ -53,7 +54,6 @@ public SemanticdbVisitor(
}

public Semanticdb.TextDocument buildTextDocument(CompilationUnitTree tree) {

this.scan(tree, null); // Trigger recursive AST traversal to collect SemanticDB information.

return Semanticdb.TextDocument.newBuilder()
Expand Down Expand Up @@ -100,6 +100,17 @@ public Void visitClass(ClassTree node, Void unused) {
JCTree.JCClassDecl cls = (JCTree.JCClassDecl) node;
emitSymbolOccurrence(
cls.sym, cls, Role.DEFINITION, CompilerRange.FROM_POINT_WITH_TEXT_SEARCH);

List<JCTree.JCTypeParameter> typeParameters = cls.getTypeParameters();
int i = 0;
for (Symbol.TypeVariableSymbol typeSym : cls.sym.getTypeParameters()) {
emitSymbolOccurrence(
typeSym,
typeParameters.get(i),
Role.DEFINITION,
CompilerRange.FROM_POINT_TO_SYMBOL_NAME);
i++;
}
}
return super.visitClass(node, unused);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

interface BaseEpoxyTouchCallback<T extends EpoxyModel> {
// ^^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/BaseEpoxyTouchCallback#
// ^ definition com/airbnb/epoxy/BaseEpoxyTouchCallback#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
public abstract class ControllerHelper<T extends EpoxyController> {
// ^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/ControllerHelper#
// ^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/ControllerHelper#`<init>`().
// ^ definition com/airbnb/epoxy/ControllerHelper#[T]
// ^^^^^^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyController#
public abstract void resetAutoModels();
// ^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/ControllerHelper#resetAutoModels().
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
*/
public interface EpoxyDragCallback<T extends EpoxyModel> extends BaseEpoxyTouchCallback<T> {
// ^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyDragCallback#
// ^ definition com/airbnb/epoxy/EpoxyDragCallback#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^^^^^^^^^^^^^^^^^^^^^^ reference com/airbnb/epoxy/BaseEpoxyTouchCallback#
// ^ reference com/airbnb/epoxy/EpoxyDragCallback#[T]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@
*/
public abstract class EpoxyModel<T> {
// ^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyModel#
// ^ definition com/airbnb/epoxy/EpoxyModel#[T]

/**
* Counts how many of these objects are created, so that each new object can have a unique id .
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
*/
public abstract class EpoxyModelTouchCallback<T extends EpoxyModel>
// ^^^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyModelTouchCallback#
// ^ definition com/airbnb/epoxy/EpoxyModelTouchCallback#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
extends EpoxyTouchHelperCallback implements EpoxyDragCallback<T>, EpoxySwipeCallback<T> {
// ^^^^^^^^^^^^^^^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyTouchHelperCallback#
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
*/
public abstract class EpoxyModelWithHolder<T extends EpoxyHolder> extends EpoxyModel<T> {
// ^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyModelWithHolder#
// ^ definition com/airbnb/epoxy/EpoxyModelWithHolder#[T]
// ^^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyHolder#
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^ reference com/airbnb/epoxy/EpoxyModelWithHolder#[T]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
public abstract class EpoxyModelWithView<T extends View> extends EpoxyModel<T> {
// ^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyModelWithView#
// ^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyModelWithView#`<init>`().
// ^ definition com/airbnb/epoxy/EpoxyModelWithView#[T]
// ^^^^ reference _root_/
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^ reference com/airbnb/epoxy/EpoxyModelWithView#[T]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
*/
public interface EpoxySwipeCallback<T extends EpoxyModel> extends BaseEpoxyTouchCallback<T> {
// ^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxySwipeCallback#
// ^ definition com/airbnb/epoxy/EpoxySwipeCallback#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^^^^^^^^^^^^^^^^^^^^^^ reference com/airbnb/epoxy/BaseEpoxyTouchCallback#
// ^ reference com/airbnb/epoxy/EpoxySwipeCallback#[T]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -323,6 +323,7 @@ public DragBuilder4<EpoxyModel> forAllModels() {

public static class DragBuilder4<U extends EpoxyModel> {
// ^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyTouchHelper#DragBuilder4#
// ^ definition com/airbnb/epoxy/EpoxyTouchHelper#DragBuilder4#[U]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#

private final EpoxyController controller;
Expand Down Expand Up @@ -544,6 +545,7 @@ public void clearView(U model, View itemView) {
public abstract static class DragCallbacks<T extends EpoxyModel>
// ^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyTouchHelper#DragCallbacks#
// ^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyTouchHelper#DragCallbacks#`<init>`().
// ^ definition com/airbnb/epoxy/EpoxyTouchHelper#DragCallbacks#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
implements EpoxyDragCallback<T> {
// ^^^^^^^^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyDragCallback#
Expand Down Expand Up @@ -810,6 +812,7 @@ public SwipeBuilder3<EpoxyModel> forAllModels() {

public static class SwipeBuilder3<U extends EpoxyModel> {
// ^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyTouchHelper#SwipeBuilder3#
// ^ definition com/airbnb/epoxy/EpoxyTouchHelper#SwipeBuilder3#[U]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#

private final RecyclerView recyclerView;
Expand Down Expand Up @@ -1040,6 +1043,7 @@ public void clearView(U model, View itemView) {
public abstract static class SwipeCallbacks<T extends EpoxyModel>
// ^^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyTouchHelper#SwipeCallbacks#
// ^^^^^^^^^^^^^^ definition com/airbnb/epoxy/EpoxyTouchHelper#SwipeCallbacks#`<init>`().
// ^ definition com/airbnb/epoxy/EpoxyTouchHelper#SwipeCallbacks#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
implements EpoxySwipeCallback<T> {
// ^^^^^^^^^^^^^^^^^^ reference com/airbnb/epoxy/EpoxySwipeCallback#
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
/** Interface applied to generated models to allow the base adapter to interact with them. */
public interface GeneratedModel<T> {
// ^^^^^^^^^^^^^^ definition com/airbnb/epoxy/GeneratedModel#
// ^ definition com/airbnb/epoxy/GeneratedModel#[T]
/**
* Called on the generated model immediately before the main model onBind method has been called.
* This let's the generated model handle binding setup of its own
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@
/** Used to register an onBind callback with a generated model. */
public interface OnModelBoundListener<T extends EpoxyModel<?>, V> {
// ^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/OnModelBoundListener#
// ^ definition com/airbnb/epoxy/OnModelBoundListener#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^ definition com/airbnb/epoxy/OnModelBoundListener#[V]
/**
* This will be called immediately after a model was bound, with the model and view that were
* bound together.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@

public interface OnModelCheckedChangeListener<T extends EpoxyModel<?>, V> {
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/OnModelCheckedChangeListener#
// ^ definition com/airbnb/epoxy/OnModelCheckedChangeListener#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^ definition com/airbnb/epoxy/OnModelCheckedChangeListener#[V]
/**
* Called when the view bound to the model is checked.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@
/** Used to register a click listener on a generated model. */
public interface OnModelClickListener<T extends EpoxyModel<?>, V> {
// ^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/OnModelClickListener#
// ^ definition com/airbnb/epoxy/OnModelClickListener#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^ definition com/airbnb/epoxy/OnModelClickListener#[V]
/**
* Called when the view bound to the model is clicked.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@

public interface OnModelLongClickListener<T extends EpoxyModel<?>, V> {
// ^^^^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/OnModelLongClickListener#
// ^ definition com/airbnb/epoxy/OnModelLongClickListener#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^ definition com/airbnb/epoxy/OnModelLongClickListener#[V]
/**
* Called when the view bound to the model is clicked.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@
/** Used to register an onUnbind callback with a generated model. */
public interface OnModelUnboundListener<T extends EpoxyModel<?>, V> {
// ^^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/OnModelUnboundListener#
// ^ definition com/airbnb/epoxy/OnModelUnboundListener#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^ definition com/airbnb/epoxy/OnModelUnboundListener#[V]
/**
* This will be called immediately after a model is unbound from a view, with the view and model
* that were unbound.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,10 @@
/** Used to register an onVisibilityChanged callback with a generated model. */
public interface OnModelVisibilityChangedListener<T extends EpoxyModel<V>, V> {
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/OnModelVisibilityChangedListener#
// ^ definition com/airbnb/epoxy/OnModelVisibilityChangedListener#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^ reference com/airbnb/epoxy/OnModelVisibilityChangedListener#[V]
// ^ definition com/airbnb/epoxy/OnModelVisibilityChangedListener#[V]

/**
* This will be called once the view visible part changes.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,10 @@
/** Used to register an onVisibilityChanged callback with a generated model. */
public interface OnModelVisibilityStateChangedListener<T extends EpoxyModel<V>, V> {
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/OnModelVisibilityStateChangedListener#
// ^ definition com/airbnb/epoxy/OnModelVisibilityStateChangedListener#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^ reference com/airbnb/epoxy/OnModelVisibilityStateChangedListener#[V]
// ^ definition com/airbnb/epoxy/OnModelVisibilityStateChangedListener#[V]

/**
* This will be called once the visibility changed.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
*/
public interface StyleBuilderCallback<T> {
// ^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/StyleBuilderCallback#
// ^ definition com/airbnb/epoxy/StyleBuilderCallback#[T]
void buildStyle(T builder);
// ^^^^^^^^^^ definition com/airbnb/epoxy/StyleBuilderCallback#buildStyle().
// ^ reference com/airbnb/epoxy/StyleBuilderCallback#[T]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
*/
public abstract class Typed2EpoxyController<T, U> extends EpoxyController {
// ^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/Typed2EpoxyController#
// ^ definition com/airbnb/epoxy/Typed2EpoxyController#[T]
// ^ definition com/airbnb/epoxy/Typed2EpoxyController#[U]
// ^^^^^^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyController#

private T data1;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@
*/
public abstract class Typed3EpoxyController<T, U, V> extends EpoxyController {
// ^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/Typed3EpoxyController#
// ^ definition com/airbnb/epoxy/Typed3EpoxyController#[T]
// ^ definition com/airbnb/epoxy/Typed3EpoxyController#[U]
// ^ definition com/airbnb/epoxy/Typed3EpoxyController#[V]
// ^^^^^^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyController#

private T data1;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@
*/
public abstract class Typed4EpoxyController<T, U, V, W> extends EpoxyController {
// ^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/Typed4EpoxyController#
// ^ definition com/airbnb/epoxy/Typed4EpoxyController#[T]
// ^ definition com/airbnb/epoxy/Typed4EpoxyController#[U]
// ^ definition com/airbnb/epoxy/Typed4EpoxyController#[V]
// ^ definition com/airbnb/epoxy/Typed4EpoxyController#[W]
// ^^^^^^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyController#

private T data1;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
*/
public abstract class TypedEpoxyController<T> extends EpoxyController {
// ^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/TypedEpoxyController#
// ^ definition com/airbnb/epoxy/TypedEpoxyController#[T]
// ^^^^^^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyController#
private T currentData;
// ^ reference com/airbnb/epoxy/TypedEpoxyController#[T]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,9 @@
*/
public class WrappedEpoxyModelCheckedChangeListener<T extends EpoxyModel<?>, V>
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ definition com/airbnb/epoxy/WrappedEpoxyModelCheckedChangeListener#
// ^ definition com/airbnb/epoxy/WrappedEpoxyModelCheckedChangeListener#[T]
// ^^^^^^^^^^ reference com/airbnb/epoxy/EpoxyModel#
// ^ definition com/airbnb/epoxy/WrappedEpoxyModelCheckedChangeListener#[V]
implements OnCheckedChangeListener {
// ^^^^^^^^^^^^^^^^^^^^^^^ reference _root_/

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ public enum InnerEnum {

public interface InnerInterface<A, B> {
// ^^^^^^^^^^^^^^ definition minimized/InnerClasses#InnerInterface#
// ^ definition minimized/InnerClasses#InnerInterface#[A]
// ^ definition minimized/InnerClasses#InnerInterface#[B]
B apply(A a);
// ^ reference minimized/InnerClasses#InnerInterface#[B]
// ^^^^^ definition minimized/InnerClasses#InnerInterface#apply().
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
public class ParameterizedTypes<A, B> {
// ^^^^^^^^^^^^^^^^^^ definition minimized/ParameterizedTypes#
// ^^^^^^^^^^^^^^^^^^ definition minimized/ParameterizedTypes#`<init>`().
// ^ definition minimized/ParameterizedTypes#[A]
// ^ definition minimized/ParameterizedTypes#[B]
public String app(A a, B b) {
// ^^^^^^ reference java/lang/String#
// ^^^ definition minimized/ParameterizedTypes#app().
Expand Down