1   /*
2    * SPDX-FileCopyrightText: none
3    * SPDX-License-Identifier: CC0-1.0
4    */
5   
6   package gov.nist.secauto.metaschema.core.model;
7   
8   /**
9    * Represents a location within a resource.
10   */
11  public interface IResourceLocation {
12    /**
13     * Get the line for a location within a resource.
14     *
15     * @return the line number or {@code -1} if unknown
16     */
17    int getLine();
18  
19    /**
20     * Get the line column for a location within a resource.
21     *
22     * @return the column number or {@code -1} if unknown
23     */
24    int getColumn();
25  
26    /**
27     * Get the zero-based character offset for a location within a resource.
28     *
29     * @return the character offset or {@code -1} if unknown
30     */
31    long getCharOffset();
32  
33    /**
34     * Get the zero-based byte offset for a location within a resource.
35     *
36     * @return the byte offset or {@code -1} if unknown
37     */
38    long getByteOffset();
39  }