// 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;

/**
 * Base interface for application resources.
 *
 * <p>Resources are inputs to the compilation that are provided from outside sources, e.g., the
 * command-line interface or API clients such as gradle. Each resource has an associated {@link
 * Origin} which is some opaque description of where the resource comes from. The D8/R8 compiler
 * does not assume any particular structure of origin and does not rely on it for compilation. The
 * origin will be provided to diagnostics handlers so that they may detail what resource was cause
 * of some particular error.
 *
 * <p>The D8/R8 compilers uses default implementations for various file-system resources, but the
 * client is free to provide their own.
 */
@KeepForApi
public interface Resource {
  /**
   * Get the origin of the resource.
   *
   * The origin is a description of where the resource originates from. The client is free to define
   * what that means for a particular resource.
   */
  Origin getOrigin();
}
