blob: bf05be12399a96c7be2a85123442ffcc33fe1353 [file] [log] [blame]
// Copyright (c) 2017, the R8 project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
package com.android.tools.r8;
import com.android.tools.r8.keepanno.annotations.KeepForApi;
import com.android.tools.r8.origin.Origin;
import com.android.tools.r8.position.Position;
/** Interface for all diagnostic message produced by D8 and R8. */
@KeepForApi
public interface Diagnostic {
/**
* Origin of the resource causing the problem.
* @return Origin.unknown() when origin is not available.
*/
Origin getOrigin();
/**
* Position of the problem in the origin.
* @return {@link Position#UNKNOWN} when position is not available.
*/
Position getPosition();
/**
* User friendly description of the problem.
*/
String getDiagnosticMessage();
}