Files
Adam Jeniski 3f669b422a Initial commit: SCIP indexer for Clojure
Features:
- Generate SCIP index from clojure-lsp dump
- Namespace definitions and usages
- Var definitions and usages
- Namespace alias definitions and usage references
- External symbol documentation for hover

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 16:49:10 -05:00

22175 lines
741 KiB
Java

// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: proto/scip.proto
package scip;
public final class Scip {
private Scip() {}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistryLite registry) {
}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistry registry) {
registerAllExtensions(
(com.google.protobuf.ExtensionRegistryLite) registry);
}
/**
* Protobuf enum {@code scip.ProtocolVersion}
*/
public enum ProtocolVersion
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <code>UnspecifiedProtocolVersion = 0;</code>
*/
UnspecifiedProtocolVersion(0),
UNRECOGNIZED(-1),
;
/**
* <code>UnspecifiedProtocolVersion = 0;</code>
*/
public static final int UnspecifiedProtocolVersion_VALUE = 0;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static ProtocolVersion valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static ProtocolVersion forNumber(int value) {
switch (value) {
case 0: return UnspecifiedProtocolVersion;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<ProtocolVersion>
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
ProtocolVersion> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<ProtocolVersion>() {
public ProtocolVersion findValueByNumber(int number) {
return ProtocolVersion.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return scip.Scip.getDescriptor().getEnumTypes().get(0);
}
private static final ProtocolVersion[] VALUES = values();
public static ProtocolVersion valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private ProtocolVersion(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:scip.ProtocolVersion)
}
/**
* Protobuf enum {@code scip.TextEncoding}
*/
public enum TextEncoding
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <code>UnspecifiedTextEncoding = 0;</code>
*/
UnspecifiedTextEncoding(0),
/**
* <code>UTF8 = 1;</code>
*/
UTF8(1),
/**
* <code>UTF16 = 2;</code>
*/
UTF16(2),
UNRECOGNIZED(-1),
;
/**
* <code>UnspecifiedTextEncoding = 0;</code>
*/
public static final int UnspecifiedTextEncoding_VALUE = 0;
/**
* <code>UTF8 = 1;</code>
*/
public static final int UTF8_VALUE = 1;
/**
* <code>UTF16 = 2;</code>
*/
public static final int UTF16_VALUE = 2;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static TextEncoding valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static TextEncoding forNumber(int value) {
switch (value) {
case 0: return UnspecifiedTextEncoding;
case 1: return UTF8;
case 2: return UTF16;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<TextEncoding>
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
TextEncoding> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<TextEncoding>() {
public TextEncoding findValueByNumber(int number) {
return TextEncoding.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return scip.Scip.getDescriptor().getEnumTypes().get(1);
}
private static final TextEncoding[] VALUES = values();
public static TextEncoding valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private TextEncoding(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:scip.TextEncoding)
}
/**
* <pre>
* Encoding used to interpret the 'character' value in source ranges.
* </pre>
*
* Protobuf enum {@code scip.PositionEncoding}
*/
public enum PositionEncoding
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <pre>
* Default value. This value should not be used by new SCIP indexers
* so that a consumer can process the SCIP index without ambiguity.
* </pre>
*
* <code>UnspecifiedPositionEncoding = 0;</code>
*/
UnspecifiedPositionEncoding(0),
/**
* <pre>
* The 'character' value is interpreted as an offset in terms
* of UTF-8 code units (i.e. bytes).
* Example: For the string "🚀 Woo" in UTF-8, the bytes are
* [240, 159, 154, 128, 32, 87, 111, 111], so the offset for 'W'
* would be 5.
* </pre>
*
* <code>UTF8CodeUnitOffsetFromLineStart = 1;</code>
*/
UTF8CodeUnitOffsetFromLineStart(1),
/**
* <pre>
* The 'character' value is interpreted as an offset in terms
* of UTF-16 code units (each is 2 bytes).
* Example: For the string "🚀 Woo", the UTF-16 code units are
* ['&#92;ud83d', '&#92;ude80', ' ', 'W', 'o', 'o'], so the offset for 'W'
* would be 3.
* </pre>
*
* <code>UTF16CodeUnitOffsetFromLineStart = 2;</code>
*/
UTF16CodeUnitOffsetFromLineStart(2),
/**
* <pre>
* The 'character' value is interpreted as an offset in terms
* of UTF-32 code units (each is 4 bytes).
* Example: For the string "🚀 Woo", the UTF-32 code units are
* ['🚀', ' ', 'W', 'o', 'o'], so the offset for 'W' would be 2.
* </pre>
*
* <code>UTF32CodeUnitOffsetFromLineStart = 3;</code>
*/
UTF32CodeUnitOffsetFromLineStart(3),
UNRECOGNIZED(-1),
;
/**
* <pre>
* Default value. This value should not be used by new SCIP indexers
* so that a consumer can process the SCIP index without ambiguity.
* </pre>
*
* <code>UnspecifiedPositionEncoding = 0;</code>
*/
public static final int UnspecifiedPositionEncoding_VALUE = 0;
/**
* <pre>
* The 'character' value is interpreted as an offset in terms
* of UTF-8 code units (i.e. bytes).
* Example: For the string "🚀 Woo" in UTF-8, the bytes are
* [240, 159, 154, 128, 32, 87, 111, 111], so the offset for 'W'
* would be 5.
* </pre>
*
* <code>UTF8CodeUnitOffsetFromLineStart = 1;</code>
*/
public static final int UTF8CodeUnitOffsetFromLineStart_VALUE = 1;
/**
* <pre>
* The 'character' value is interpreted as an offset in terms
* of UTF-16 code units (each is 2 bytes).
* Example: For the string "🚀 Woo", the UTF-16 code units are
* ['&#92;ud83d', '&#92;ude80', ' ', 'W', 'o', 'o'], so the offset for 'W'
* would be 3.
* </pre>
*
* <code>UTF16CodeUnitOffsetFromLineStart = 2;</code>
*/
public static final int UTF16CodeUnitOffsetFromLineStart_VALUE = 2;
/**
* <pre>
* The 'character' value is interpreted as an offset in terms
* of UTF-32 code units (each is 4 bytes).
* Example: For the string "🚀 Woo", the UTF-32 code units are
* ['🚀', ' ', 'W', 'o', 'o'], so the offset for 'W' would be 2.
* </pre>
*
* <code>UTF32CodeUnitOffsetFromLineStart = 3;</code>
*/
public static final int UTF32CodeUnitOffsetFromLineStart_VALUE = 3;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static PositionEncoding valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static PositionEncoding forNumber(int value) {
switch (value) {
case 0: return UnspecifiedPositionEncoding;
case 1: return UTF8CodeUnitOffsetFromLineStart;
case 2: return UTF16CodeUnitOffsetFromLineStart;
case 3: return UTF32CodeUnitOffsetFromLineStart;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<PositionEncoding>
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
PositionEncoding> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<PositionEncoding>() {
public PositionEncoding findValueByNumber(int number) {
return PositionEncoding.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return scip.Scip.getDescriptor().getEnumTypes().get(2);
}
private static final PositionEncoding[] VALUES = values();
public static PositionEncoding valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private PositionEncoding(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:scip.PositionEncoding)
}
/**
* <pre>
* SymbolRole declares what "role" a symbol has in an occurrence. A role is
* encoded as a bitset where each bit represents a different role. For example,
* to determine if the `Import` role is set, test whether the second bit of the
* enum value is defined. In pseudocode, this can be implemented with the
* logic: `const isImportRole = (role.value &amp; SymbolRole.Import.value) &gt; 0`.
* </pre>
*
* Protobuf enum {@code scip.SymbolRole}
*/
public enum SymbolRole
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <pre>
* This case is not meant to be used; it only exists to avoid an error
* from the Protobuf code generator.
* </pre>
*
* <code>UnspecifiedSymbolRole = 0;</code>
*/
UnspecifiedSymbolRole(0),
/**
* <pre>
* Is the symbol defined here? If not, then this is a symbol reference.
* </pre>
*
* <code>Definition = 1;</code>
*/
Definition(1),
/**
* <pre>
* Is the symbol imported here?
* </pre>
*
* <code>Import = 2;</code>
*/
Import(2),
/**
* <pre>
* Is the symbol written here?
* </pre>
*
* <code>WriteAccess = 4;</code>
*/
WriteAccess(4),
/**
* <pre>
* Is the symbol read here?
* </pre>
*
* <code>ReadAccess = 8;</code>
*/
ReadAccess(8),
/**
* <pre>
* Is the symbol in generated code?
* </pre>
*
* <code>Generated = 16;</code>
*/
Generated(16),
/**
* <pre>
* Is the symbol in test code?
* </pre>
*
* <code>Test = 32;</code>
*/
Test(32),
/**
* <pre>
* Is this a signature for a symbol that is defined elsewhere?
* Applies to forward declarations for languages like C, C++
* and Objective-C, as well as `val` declarations in interface
* files in languages like SML and OCaml.
* </pre>
*
* <code>ForwardDefinition = 64;</code>
*/
ForwardDefinition(64),
UNRECOGNIZED(-1),
;
/**
* <pre>
* This case is not meant to be used; it only exists to avoid an error
* from the Protobuf code generator.
* </pre>
*
* <code>UnspecifiedSymbolRole = 0;</code>
*/
public static final int UnspecifiedSymbolRole_VALUE = 0;
/**
* <pre>
* Is the symbol defined here? If not, then this is a symbol reference.
* </pre>
*
* <code>Definition = 1;</code>
*/
public static final int Definition_VALUE = 1;
/**
* <pre>
* Is the symbol imported here?
* </pre>
*
* <code>Import = 2;</code>
*/
public static final int Import_VALUE = 2;
/**
* <pre>
* Is the symbol written here?
* </pre>
*
* <code>WriteAccess = 4;</code>
*/
public static final int WriteAccess_VALUE = 4;
/**
* <pre>
* Is the symbol read here?
* </pre>
*
* <code>ReadAccess = 8;</code>
*/
public static final int ReadAccess_VALUE = 8;
/**
* <pre>
* Is the symbol in generated code?
* </pre>
*
* <code>Generated = 16;</code>
*/
public static final int Generated_VALUE = 16;
/**
* <pre>
* Is the symbol in test code?
* </pre>
*
* <code>Test = 32;</code>
*/
public static final int Test_VALUE = 32;
/**
* <pre>
* Is this a signature for a symbol that is defined elsewhere?
* Applies to forward declarations for languages like C, C++
* and Objective-C, as well as `val` declarations in interface
* files in languages like SML and OCaml.
* </pre>
*
* <code>ForwardDefinition = 64;</code>
*/
public static final int ForwardDefinition_VALUE = 64;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static SymbolRole valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static SymbolRole forNumber(int value) {
switch (value) {
case 0: return UnspecifiedSymbolRole;
case 1: return Definition;
case 2: return Import;
case 4: return WriteAccess;
case 8: return ReadAccess;
case 16: return Generated;
case 32: return Test;
case 64: return ForwardDefinition;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<SymbolRole>
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
SymbolRole> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<SymbolRole>() {
public SymbolRole findValueByNumber(int number) {
return SymbolRole.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return scip.Scip.getDescriptor().getEnumTypes().get(3);
}
private static final SymbolRole[] VALUES = values();
public static SymbolRole valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private SymbolRole(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:scip.SymbolRole)
}
/**
* Protobuf enum {@code scip.SyntaxKind}
*/
public enum SyntaxKind
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <code>UnspecifiedSyntaxKind = 0;</code>
*/
UnspecifiedSyntaxKind(0, 0),
/**
* <pre>
* Comment, including comment markers and text
* </pre>
*
* <code>Comment = 1;</code>
*/
Comment(1, 1),
/**
* <pre>
* `;` `.` `,`
* </pre>
*
* <code>PunctuationDelimiter = 2;</code>
*/
PunctuationDelimiter(2, 2),
/**
* <pre>
* (), {}, [] when used syntactically
* </pre>
*
* <code>PunctuationBracket = 3;</code>
*/
PunctuationBracket(3, 3),
/**
* <pre>
* `if`, `else`, `return`, `class`, etc.
* </pre>
*
* <code>Keyword = 4;</code>
*/
Keyword(4, 4),
/**
* <pre>
* `+`, `*`, etc.
* </pre>
*
* <code>IdentifierOperator = 5;</code>
*/
IdentifierOperator(6, 5),
/**
* <pre>
* non-specific catch-all for any identifier not better described elsewhere
* </pre>
*
* <code>Identifier = 6;</code>
*/
Identifier(7, 6),
/**
* <pre>
* Identifiers builtin to the language: `min`, `print` in Python.
* </pre>
*
* <code>IdentifierBuiltin = 7;</code>
*/
IdentifierBuiltin(8, 7),
/**
* <pre>
* Identifiers representing `null`-like values: `None` in Python, `nil` in Go.
* </pre>
*
* <code>IdentifierNull = 8;</code>
*/
IdentifierNull(9, 8),
/**
* <pre>
* `xyz` in `const xyz = "hello"`
* </pre>
*
* <code>IdentifierConstant = 9;</code>
*/
IdentifierConstant(10, 9),
/**
* <pre>
* `var X = "hello"` in Go
* </pre>
*
* <code>IdentifierMutableGlobal = 10;</code>
*/
IdentifierMutableGlobal(11, 10),
/**
* <pre>
* Parameter definition and references
* </pre>
*
* <code>IdentifierParameter = 11;</code>
*/
IdentifierParameter(12, 11),
/**
* <pre>
* Identifiers for variable definitions and references within a local scope
* </pre>
*
* <code>IdentifierLocal = 12;</code>
*/
IdentifierLocal(13, 12),
/**
* <pre>
* Identifiers that shadow other identifiers in an outer scope
* </pre>
*
* <code>IdentifierShadowed = 13;</code>
*/
IdentifierShadowed(14, 13),
/**
* <pre>
* Identifier representing a unit of code abstraction and/or namespacing.
* NOTE: This corresponds to a package in Go and JVM languages,
* and a module in languages like Python and JavaScript.
* </pre>
*
* <code>IdentifierNamespace = 14;</code>
*/
IdentifierNamespace(15, 14),
/**
* <pre>
* Function references, including calls
* </pre>
*
* <code>IdentifierFunction = 15;</code>
*/
IdentifierFunction(17, 15),
/**
* <pre>
* Function definition only
* </pre>
*
* <code>IdentifierFunctionDefinition = 16;</code>
*/
IdentifierFunctionDefinition(18, 16),
/**
* <pre>
* Macro references, including invocations
* </pre>
*
* <code>IdentifierMacro = 17;</code>
*/
IdentifierMacro(19, 17),
/**
* <pre>
* Macro definition only
* </pre>
*
* <code>IdentifierMacroDefinition = 18;</code>
*/
IdentifierMacroDefinition(20, 18),
/**
* <pre>
* non-builtin types
* </pre>
*
* <code>IdentifierType = 19;</code>
*/
IdentifierType(21, 19),
/**
* <pre>
* builtin types only, such as `str` for Python or `int` in Go
* </pre>
*
* <code>IdentifierBuiltinType = 20;</code>
*/
IdentifierBuiltinType(22, 20),
/**
* <pre>
* Python decorators, c-like __attribute__
* </pre>
*
* <code>IdentifierAttribute = 21;</code>
*/
IdentifierAttribute(23, 21),
/**
* <pre>
* `&#92;b`
* </pre>
*
* <code>RegexEscape = 22;</code>
*/
RegexEscape(24, 22),
/**
* <pre>
* `*`, `+`
* </pre>
*
* <code>RegexRepeated = 23;</code>
*/
RegexRepeated(25, 23),
/**
* <pre>
* `.`
* </pre>
*
* <code>RegexWildcard = 24;</code>
*/
RegexWildcard(26, 24),
/**
* <pre>
* `(`, `)`, `[`, `]`
* </pre>
*
* <code>RegexDelimiter = 25;</code>
*/
RegexDelimiter(27, 25),
/**
* <pre>
* `|`, `-`
* </pre>
*
* <code>RegexJoin = 26;</code>
*/
RegexJoin(28, 26),
/**
* <pre>
* Literal strings: "Hello, world!"
* </pre>
*
* <code>StringLiteral = 27;</code>
*/
StringLiteral(29, 27),
/**
* <pre>
* non-regex escapes: "&#92;t", "&#92;n"
* </pre>
*
* <code>StringLiteralEscape = 28;</code>
*/
StringLiteralEscape(30, 28),
/**
* <pre>
* datetimes within strings, special words within a string, `{}` in format strings
* </pre>
*
* <code>StringLiteralSpecial = 29;</code>
*/
StringLiteralSpecial(31, 29),
/**
* <pre>
* "key" in { "key": "value" }, useful for example in JSON
* </pre>
*
* <code>StringLiteralKey = 30;</code>
*/
StringLiteralKey(32, 30),
/**
* <pre>
* 'c' or similar, in languages that differentiate strings and characters
* </pre>
*
* <code>CharacterLiteral = 31;</code>
*/
CharacterLiteral(33, 31),
/**
* <pre>
* Literal numbers, both floats and integers
* </pre>
*
* <code>NumericLiteral = 32;</code>
*/
NumericLiteral(34, 32),
/**
* <pre>
* `true`, `false`
* </pre>
*
* <code>BooleanLiteral = 33;</code>
*/
BooleanLiteral(35, 33),
/**
* <pre>
* Used for XML-like tags
* </pre>
*
* <code>Tag = 34;</code>
*/
Tag(36, 34),
/**
* <pre>
* Attribute name in XML-like tags
* </pre>
*
* <code>TagAttribute = 35;</code>
*/
TagAttribute(37, 35),
/**
* <pre>
* Delimiters for XML-like tags
* </pre>
*
* <code>TagDelimiter = 36;</code>
*/
TagDelimiter(38, 36),
UNRECOGNIZED(-1, -1),
;
/**
* <code>IdentifierKeyword = 4 [deprecated = true];</code>
*/
public static final SyntaxKind IdentifierKeyword = Keyword;
/**
* <code>IdentifierModule = 14 [deprecated = true];</code>
*/
public static final SyntaxKind IdentifierModule = IdentifierNamespace;
/**
* <code>UnspecifiedSyntaxKind = 0;</code>
*/
public static final int UnspecifiedSyntaxKind_VALUE = 0;
/**
* <pre>
* Comment, including comment markers and text
* </pre>
*
* <code>Comment = 1;</code>
*/
public static final int Comment_VALUE = 1;
/**
* <pre>
* `;` `.` `,`
* </pre>
*
* <code>PunctuationDelimiter = 2;</code>
*/
public static final int PunctuationDelimiter_VALUE = 2;
/**
* <pre>
* (), {}, [] when used syntactically
* </pre>
*
* <code>PunctuationBracket = 3;</code>
*/
public static final int PunctuationBracket_VALUE = 3;
/**
* <pre>
* `if`, `else`, `return`, `class`, etc.
* </pre>
*
* <code>Keyword = 4;</code>
*/
public static final int Keyword_VALUE = 4;
/**
* <code>IdentifierKeyword = 4 [deprecated = true];</code>
*/
@java.lang.Deprecated public static final int IdentifierKeyword_VALUE = 4;
/**
* <pre>
* `+`, `*`, etc.
* </pre>
*
* <code>IdentifierOperator = 5;</code>
*/
public static final int IdentifierOperator_VALUE = 5;
/**
* <pre>
* non-specific catch-all for any identifier not better described elsewhere
* </pre>
*
* <code>Identifier = 6;</code>
*/
public static final int Identifier_VALUE = 6;
/**
* <pre>
* Identifiers builtin to the language: `min`, `print` in Python.
* </pre>
*
* <code>IdentifierBuiltin = 7;</code>
*/
public static final int IdentifierBuiltin_VALUE = 7;
/**
* <pre>
* Identifiers representing `null`-like values: `None` in Python, `nil` in Go.
* </pre>
*
* <code>IdentifierNull = 8;</code>
*/
public static final int IdentifierNull_VALUE = 8;
/**
* <pre>
* `xyz` in `const xyz = "hello"`
* </pre>
*
* <code>IdentifierConstant = 9;</code>
*/
public static final int IdentifierConstant_VALUE = 9;
/**
* <pre>
* `var X = "hello"` in Go
* </pre>
*
* <code>IdentifierMutableGlobal = 10;</code>
*/
public static final int IdentifierMutableGlobal_VALUE = 10;
/**
* <pre>
* Parameter definition and references
* </pre>
*
* <code>IdentifierParameter = 11;</code>
*/
public static final int IdentifierParameter_VALUE = 11;
/**
* <pre>
* Identifiers for variable definitions and references within a local scope
* </pre>
*
* <code>IdentifierLocal = 12;</code>
*/
public static final int IdentifierLocal_VALUE = 12;
/**
* <pre>
* Identifiers that shadow other identifiers in an outer scope
* </pre>
*
* <code>IdentifierShadowed = 13;</code>
*/
public static final int IdentifierShadowed_VALUE = 13;
/**
* <pre>
* Identifier representing a unit of code abstraction and/or namespacing.
* NOTE: This corresponds to a package in Go and JVM languages,
* and a module in languages like Python and JavaScript.
* </pre>
*
* <code>IdentifierNamespace = 14;</code>
*/
public static final int IdentifierNamespace_VALUE = 14;
/**
* <code>IdentifierModule = 14 [deprecated = true];</code>
*/
@java.lang.Deprecated public static final int IdentifierModule_VALUE = 14;
/**
* <pre>
* Function references, including calls
* </pre>
*
* <code>IdentifierFunction = 15;</code>
*/
public static final int IdentifierFunction_VALUE = 15;
/**
* <pre>
* Function definition only
* </pre>
*
* <code>IdentifierFunctionDefinition = 16;</code>
*/
public static final int IdentifierFunctionDefinition_VALUE = 16;
/**
* <pre>
* Macro references, including invocations
* </pre>
*
* <code>IdentifierMacro = 17;</code>
*/
public static final int IdentifierMacro_VALUE = 17;
/**
* <pre>
* Macro definition only
* </pre>
*
* <code>IdentifierMacroDefinition = 18;</code>
*/
public static final int IdentifierMacroDefinition_VALUE = 18;
/**
* <pre>
* non-builtin types
* </pre>
*
* <code>IdentifierType = 19;</code>
*/
public static final int IdentifierType_VALUE = 19;
/**
* <pre>
* builtin types only, such as `str` for Python or `int` in Go
* </pre>
*
* <code>IdentifierBuiltinType = 20;</code>
*/
public static final int IdentifierBuiltinType_VALUE = 20;
/**
* <pre>
* Python decorators, c-like __attribute__
* </pre>
*
* <code>IdentifierAttribute = 21;</code>
*/
public static final int IdentifierAttribute_VALUE = 21;
/**
* <pre>
* `&#92;b`
* </pre>
*
* <code>RegexEscape = 22;</code>
*/
public static final int RegexEscape_VALUE = 22;
/**
* <pre>
* `*`, `+`
* </pre>
*
* <code>RegexRepeated = 23;</code>
*/
public static final int RegexRepeated_VALUE = 23;
/**
* <pre>
* `.`
* </pre>
*
* <code>RegexWildcard = 24;</code>
*/
public static final int RegexWildcard_VALUE = 24;
/**
* <pre>
* `(`, `)`, `[`, `]`
* </pre>
*
* <code>RegexDelimiter = 25;</code>
*/
public static final int RegexDelimiter_VALUE = 25;
/**
* <pre>
* `|`, `-`
* </pre>
*
* <code>RegexJoin = 26;</code>
*/
public static final int RegexJoin_VALUE = 26;
/**
* <pre>
* Literal strings: "Hello, world!"
* </pre>
*
* <code>StringLiteral = 27;</code>
*/
public static final int StringLiteral_VALUE = 27;
/**
* <pre>
* non-regex escapes: "&#92;t", "&#92;n"
* </pre>
*
* <code>StringLiteralEscape = 28;</code>
*/
public static final int StringLiteralEscape_VALUE = 28;
/**
* <pre>
* datetimes within strings, special words within a string, `{}` in format strings
* </pre>
*
* <code>StringLiteralSpecial = 29;</code>
*/
public static final int StringLiteralSpecial_VALUE = 29;
/**
* <pre>
* "key" in { "key": "value" }, useful for example in JSON
* </pre>
*
* <code>StringLiteralKey = 30;</code>
*/
public static final int StringLiteralKey_VALUE = 30;
/**
* <pre>
* 'c' or similar, in languages that differentiate strings and characters
* </pre>
*
* <code>CharacterLiteral = 31;</code>
*/
public static final int CharacterLiteral_VALUE = 31;
/**
* <pre>
* Literal numbers, both floats and integers
* </pre>
*
* <code>NumericLiteral = 32;</code>
*/
public static final int NumericLiteral_VALUE = 32;
/**
* <pre>
* `true`, `false`
* </pre>
*
* <code>BooleanLiteral = 33;</code>
*/
public static final int BooleanLiteral_VALUE = 33;
/**
* <pre>
* Used for XML-like tags
* </pre>
*
* <code>Tag = 34;</code>
*/
public static final int Tag_VALUE = 34;
/**
* <pre>
* Attribute name in XML-like tags
* </pre>
*
* <code>TagAttribute = 35;</code>
*/
public static final int TagAttribute_VALUE = 35;
/**
* <pre>
* Delimiters for XML-like tags
* </pre>
*
* <code>TagDelimiter = 36;</code>
*/
public static final int TagDelimiter_VALUE = 36;
public final int getNumber() {
if (index == -1) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static SyntaxKind valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static SyntaxKind forNumber(int value) {
switch (value) {
case 0: return UnspecifiedSyntaxKind;
case 1: return Comment;
case 2: return PunctuationDelimiter;
case 3: return PunctuationBracket;
case 4: return Keyword;
case 5: return IdentifierOperator;
case 6: return Identifier;
case 7: return IdentifierBuiltin;
case 8: return IdentifierNull;
case 9: return IdentifierConstant;
case 10: return IdentifierMutableGlobal;
case 11: return IdentifierParameter;
case 12: return IdentifierLocal;
case 13: return IdentifierShadowed;
case 14: return IdentifierNamespace;
case 15: return IdentifierFunction;
case 16: return IdentifierFunctionDefinition;
case 17: return IdentifierMacro;
case 18: return IdentifierMacroDefinition;
case 19: return IdentifierType;
case 20: return IdentifierBuiltinType;
case 21: return IdentifierAttribute;
case 22: return RegexEscape;
case 23: return RegexRepeated;
case 24: return RegexWildcard;
case 25: return RegexDelimiter;
case 26: return RegexJoin;
case 27: return StringLiteral;
case 28: return StringLiteralEscape;
case 29: return StringLiteralSpecial;
case 30: return StringLiteralKey;
case 31: return CharacterLiteral;
case 32: return NumericLiteral;
case 33: return BooleanLiteral;
case 34: return Tag;
case 35: return TagAttribute;
case 36: return TagDelimiter;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<SyntaxKind>
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
SyntaxKind> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<SyntaxKind>() {
public SyntaxKind findValueByNumber(int number) {
return SyntaxKind.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (index == -1) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(index);
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return scip.Scip.getDescriptor().getEnumTypes().get(4);
}
private static final SyntaxKind[] VALUES = getStaticValuesArray();
private static SyntaxKind[] getStaticValuesArray() {
return new SyntaxKind[] {
UnspecifiedSyntaxKind, Comment, PunctuationDelimiter, PunctuationBracket, Keyword, IdentifierKeyword, IdentifierOperator, Identifier, IdentifierBuiltin, IdentifierNull, IdentifierConstant, IdentifierMutableGlobal, IdentifierParameter, IdentifierLocal, IdentifierShadowed, IdentifierNamespace, IdentifierModule, IdentifierFunction, IdentifierFunctionDefinition, IdentifierMacro, IdentifierMacroDefinition, IdentifierType, IdentifierBuiltinType, IdentifierAttribute, RegexEscape, RegexRepeated, RegexWildcard, RegexDelimiter, RegexJoin, StringLiteral, StringLiteralEscape, StringLiteralSpecial, StringLiteralKey, CharacterLiteral, NumericLiteral, BooleanLiteral, Tag, TagAttribute, TagDelimiter,
};
}
public static SyntaxKind valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int index;
private final int value;
private SyntaxKind(int index, int value) {
this.index = index;
this.value = value;
}
// @@protoc_insertion_point(enum_scope:scip.SyntaxKind)
}
/**
* Protobuf enum {@code scip.Severity}
*/
public enum Severity
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <code>UnspecifiedSeverity = 0;</code>
*/
UnspecifiedSeverity(0),
/**
* <code>Error = 1;</code>
*/
Error(1),
/**
* <code>Warning = 2;</code>
*/
Warning(2),
/**
* <code>Information = 3;</code>
*/
Information(3),
/**
* <code>Hint = 4;</code>
*/
Hint(4),
UNRECOGNIZED(-1),
;
/**
* <code>UnspecifiedSeverity = 0;</code>
*/
public static final int UnspecifiedSeverity_VALUE = 0;
/**
* <code>Error = 1;</code>
*/
public static final int Error_VALUE = 1;
/**
* <code>Warning = 2;</code>
*/
public static final int Warning_VALUE = 2;
/**
* <code>Information = 3;</code>
*/
public static final int Information_VALUE = 3;
/**
* <code>Hint = 4;</code>
*/
public static final int Hint_VALUE = 4;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static Severity valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static Severity forNumber(int value) {
switch (value) {
case 0: return UnspecifiedSeverity;
case 1: return Error;
case 2: return Warning;
case 3: return Information;
case 4: return Hint;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<Severity>
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
Severity> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<Severity>() {
public Severity findValueByNumber(int number) {
return Severity.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return scip.Scip.getDescriptor().getEnumTypes().get(5);
}
private static final Severity[] VALUES = values();
public static Severity valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private Severity(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:scip.Severity)
}
/**
* Protobuf enum {@code scip.DiagnosticTag}
*/
public enum DiagnosticTag
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <code>UnspecifiedDiagnosticTag = 0;</code>
*/
UnspecifiedDiagnosticTag(0),
/**
* <code>Unnecessary = 1;</code>
*/
Unnecessary(1),
/**
* <code>Deprecated = 2;</code>
*/
Deprecated(2),
UNRECOGNIZED(-1),
;
/**
* <code>UnspecifiedDiagnosticTag = 0;</code>
*/
public static final int UnspecifiedDiagnosticTag_VALUE = 0;
/**
* <code>Unnecessary = 1;</code>
*/
public static final int Unnecessary_VALUE = 1;
/**
* <code>Deprecated = 2;</code>
*/
public static final int Deprecated_VALUE = 2;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static DiagnosticTag valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static DiagnosticTag forNumber(int value) {
switch (value) {
case 0: return UnspecifiedDiagnosticTag;
case 1: return Unnecessary;
case 2: return Deprecated;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<DiagnosticTag>
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
DiagnosticTag> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<DiagnosticTag>() {
public DiagnosticTag findValueByNumber(int number) {
return DiagnosticTag.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return scip.Scip.getDescriptor().getEnumTypes().get(6);
}
private static final DiagnosticTag[] VALUES = values();
public static DiagnosticTag valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private DiagnosticTag(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:scip.DiagnosticTag)
}
/**
* <pre>
* Language standardises names of common programming languages that can be used
* for the `Document.language` field. The primary purpose of this enum is to
* prevent a situation where we have a single programming language ends up with
* multiple string representations. For example, the C++ language uses the name
* "CPP" in this enum and other names such as "cpp" are incompatible.
* Feel free to send a pull-request to add missing programming languages.
* </pre>
*
* Protobuf enum {@code scip.Language}
*/
public enum Language
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <code>UnspecifiedLanguage = 0;</code>
*/
UnspecifiedLanguage(0),
/**
* <code>ABAP = 60;</code>
*/
ABAP(60),
/**
* <code>Apex = 96;</code>
*/
Apex(96),
/**
* <code>APL = 49;</code>
*/
APL(49),
/**
* <code>Ada = 39;</code>
*/
Ada(39),
/**
* <code>Agda = 45;</code>
*/
Agda(45),
/**
* <code>AsciiDoc = 86;</code>
*/
AsciiDoc(86),
/**
* <code>Assembly = 58;</code>
*/
Assembly(58),
/**
* <code>Awk = 66;</code>
*/
Awk(66),
/**
* <code>Bat = 68;</code>
*/
Bat(68),
/**
* <code>BibTeX = 81;</code>
*/
BibTeX(81),
/**
* <code>C = 34;</code>
*/
C(34),
/**
* <code>COBOL = 59;</code>
*/
COBOL(59),
/**
* <pre>
* C++ (the name "CPP" was chosen for consistency with LSP)
* </pre>
*
* <code>CPP = 35;</code>
*/
CPP(35),
/**
* <code>CSS = 26;</code>
*/
CSS(26),
/**
* <code>CSharp = 1;</code>
*/
CSharp(1),
/**
* <code>Clojure = 8;</code>
*/
Clojure(8),
/**
* <code>Coffeescript = 21;</code>
*/
Coffeescript(21),
/**
* <code>CommonLisp = 9;</code>
*/
CommonLisp(9),
/**
* <code>Coq = 47;</code>
*/
Coq(47),
/**
* <code>CUDA = 97;</code>
*/
CUDA(97),
/**
* <code>Dart = 3;</code>
*/
Dart(3),
/**
* <code>Delphi = 57;</code>
*/
Delphi(57),
/**
* <code>Diff = 88;</code>
*/
Diff(88),
/**
* <code>Dockerfile = 80;</code>
*/
Dockerfile(80),
/**
* <code>Dyalog = 50;</code>
*/
Dyalog(50),
/**
* <code>Elixir = 17;</code>
*/
Elixir(17),
/**
* <code>Erlang = 18;</code>
*/
Erlang(18),
/**
* <code>FSharp = 42;</code>
*/
FSharp(42),
/**
* <code>Fish = 65;</code>
*/
Fish(65),
/**
* <code>Flow = 24;</code>
*/
Flow(24),
/**
* <code>Fortran = 56;</code>
*/
Fortran(56),
/**
* <code>Git_Commit = 91;</code>
*/
Git_Commit(91),
/**
* <code>Git_Config = 89;</code>
*/
Git_Config(89),
/**
* <code>Git_Rebase = 92;</code>
*/
Git_Rebase(92),
/**
* <code>Go = 33;</code>
*/
Go(33),
/**
* <code>GraphQL = 98;</code>
*/
GraphQL(98),
/**
* <code>Groovy = 7;</code>
*/
Groovy(7),
/**
* <code>HTML = 30;</code>
*/
HTML(30),
/**
* <code>Hack = 20;</code>
*/
Hack(20),
/**
* <code>Handlebars = 90;</code>
*/
Handlebars(90),
/**
* <code>Haskell = 44;</code>
*/
Haskell(44),
/**
* <code>Idris = 46;</code>
*/
Idris(46),
/**
* <code>Ini = 72;</code>
*/
Ini(72),
/**
* <code>J = 51;</code>
*/
J(51),
/**
* <code>JSON = 75;</code>
*/
JSON(75),
/**
* <code>Java = 6;</code>
*/
Java(6),
/**
* <code>JavaScript = 22;</code>
*/
JavaScript(22),
/**
* <code>JavaScriptReact = 93;</code>
*/
JavaScriptReact(93),
/**
* <code>Jsonnet = 76;</code>
*/
Jsonnet(76),
/**
* <code>Julia = 55;</code>
*/
Julia(55),
/**
* <code>Justfile = 109;</code>
*/
Justfile(109),
/**
* <code>Kotlin = 4;</code>
*/
Kotlin(4),
/**
* <code>LaTeX = 83;</code>
*/
LaTeX(83),
/**
* <code>Lean = 48;</code>
*/
Lean(48),
/**
* <code>Less = 27;</code>
*/
Less(27),
/**
* <code>Lua = 12;</code>
*/
Lua(12),
/**
* <code>Luau = 108;</code>
*/
Luau(108),
/**
* <code>Makefile = 79;</code>
*/
Makefile(79),
/**
* <code>Markdown = 84;</code>
*/
Markdown(84),
/**
* <code>Matlab = 52;</code>
*/
Matlab(52),
/**
* <pre>
* https://nickel-lang.org/
* </pre>
*
* <code>Nickel = 110;</code>
*/
Nickel(110),
/**
* <code>Nix = 77;</code>
*/
Nix(77),
/**
* <code>OCaml = 41;</code>
*/
OCaml(41),
/**
* <code>Objective_C = 36;</code>
*/
Objective_C(36),
/**
* <code>Objective_CPP = 37;</code>
*/
Objective_CPP(37),
/**
* <code>Pascal = 99;</code>
*/
Pascal(99),
/**
* <code>PHP = 19;</code>
*/
PHP(19),
/**
* <code>PLSQL = 70;</code>
*/
PLSQL(70),
/**
* <code>Perl = 13;</code>
*/
Perl(13),
/**
* <code>PowerShell = 67;</code>
*/
PowerShell(67),
/**
* <code>Prolog = 71;</code>
*/
Prolog(71),
/**
* <code>Protobuf = 100;</code>
*/
Protobuf(100),
/**
* <code>Python = 15;</code>
*/
Python(15),
/**
* <code>R = 54;</code>
*/
R(54),
/**
* <code>Racket = 11;</code>
*/
Racket(11),
/**
* <code>Raku = 14;</code>
*/
Raku(14),
/**
* <code>Razor = 62;</code>
*/
Razor(62),
/**
* <pre>
* Internal language for testing SCIP
* </pre>
*
* <code>Repro = 102;</code>
*/
Repro(102),
/**
* <code>ReST = 85;</code>
*/
ReST(85),
/**
* <code>Ruby = 16;</code>
*/
Ruby(16),
/**
* <code>Rust = 40;</code>
*/
Rust(40),
/**
* <code>SAS = 61;</code>
*/
SAS(61),
/**
* <code>SCSS = 29;</code>
*/
SCSS(29),
/**
* <code>SML = 43;</code>
*/
SML(43),
/**
* <code>SQL = 69;</code>
*/
SQL(69),
/**
* <code>Sass = 28;</code>
*/
Sass(28),
/**
* <code>Scala = 5;</code>
*/
Scala(5),
/**
* <code>Scheme = 10;</code>
*/
Scheme(10),
/**
* <pre>
* Bash
* </pre>
*
* <code>ShellScript = 64;</code>
*/
ShellScript(64),
/**
* <code>Skylark = 78;</code>
*/
Skylark(78),
/**
* <code>Slang = 107;</code>
*/
Slang(107),
/**
* <code>Solidity = 95;</code>
*/
Solidity(95),
/**
* <code>Svelte = 106;</code>
*/
Svelte(106),
/**
* <code>Swift = 2;</code>
*/
Swift(2),
/**
* <code>Tcl = 101;</code>
*/
Tcl(101),
/**
* <code>TOML = 73;</code>
*/
TOML(73),
/**
* <code>TeX = 82;</code>
*/
TeX(82),
/**
* <code>Thrift = 103;</code>
*/
Thrift(103),
/**
* <code>TypeScript = 23;</code>
*/
TypeScript(23),
/**
* <code>TypeScriptReact = 94;</code>
*/
TypeScriptReact(94),
/**
* <code>Verilog = 104;</code>
*/
Verilog(104),
/**
* <code>VHDL = 105;</code>
*/
VHDL(105),
/**
* <code>VisualBasic = 63;</code>
*/
VisualBasic(63),
/**
* <code>Vue = 25;</code>
*/
Vue(25),
/**
* <code>Wolfram = 53;</code>
*/
Wolfram(53),
/**
* <code>XML = 31;</code>
*/
XML(31),
/**
* <code>XSL = 32;</code>
*/
XSL(32),
/**
* <code>YAML = 74;</code>
*/
YAML(74),
/**
* <pre>
* NextLanguage = 111;
* Steps add a new language:
* 1. Copy-paste the "NextLanguage = N" line above
* 2. Increment "NextLanguage = N" to "NextLanguage = N+1"
* 3. Replace "NextLanguage = N" with the name of the new language.
* 4. Move the new language to the correct line above using alphabetical order
* 5. (optional) Add a brief comment behind the language if the name is not self-explanatory
* </pre>
*
* <code>Zig = 38;</code>
*/
Zig(38),
UNRECOGNIZED(-1),
;
/**
* <code>UnspecifiedLanguage = 0;</code>
*/
public static final int UnspecifiedLanguage_VALUE = 0;
/**
* <code>ABAP = 60;</code>
*/
public static final int ABAP_VALUE = 60;
/**
* <code>Apex = 96;</code>
*/
public static final int Apex_VALUE = 96;
/**
* <code>APL = 49;</code>
*/
public static final int APL_VALUE = 49;
/**
* <code>Ada = 39;</code>
*/
public static final int Ada_VALUE = 39;
/**
* <code>Agda = 45;</code>
*/
public static final int Agda_VALUE = 45;
/**
* <code>AsciiDoc = 86;</code>
*/
public static final int AsciiDoc_VALUE = 86;
/**
* <code>Assembly = 58;</code>
*/
public static final int Assembly_VALUE = 58;
/**
* <code>Awk = 66;</code>
*/
public static final int Awk_VALUE = 66;
/**
* <code>Bat = 68;</code>
*/
public static final int Bat_VALUE = 68;
/**
* <code>BibTeX = 81;</code>
*/
public static final int BibTeX_VALUE = 81;
/**
* <code>C = 34;</code>
*/
public static final int C_VALUE = 34;
/**
* <code>COBOL = 59;</code>
*/
public static final int COBOL_VALUE = 59;
/**
* <pre>
* C++ (the name "CPP" was chosen for consistency with LSP)
* </pre>
*
* <code>CPP = 35;</code>
*/
public static final int CPP_VALUE = 35;
/**
* <code>CSS = 26;</code>
*/
public static final int CSS_VALUE = 26;
/**
* <code>CSharp = 1;</code>
*/
public static final int CSharp_VALUE = 1;
/**
* <code>Clojure = 8;</code>
*/
public static final int Clojure_VALUE = 8;
/**
* <code>Coffeescript = 21;</code>
*/
public static final int Coffeescript_VALUE = 21;
/**
* <code>CommonLisp = 9;</code>
*/
public static final int CommonLisp_VALUE = 9;
/**
* <code>Coq = 47;</code>
*/
public static final int Coq_VALUE = 47;
/**
* <code>CUDA = 97;</code>
*/
public static final int CUDA_VALUE = 97;
/**
* <code>Dart = 3;</code>
*/
public static final int Dart_VALUE = 3;
/**
* <code>Delphi = 57;</code>
*/
public static final int Delphi_VALUE = 57;
/**
* <code>Diff = 88;</code>
*/
public static final int Diff_VALUE = 88;
/**
* <code>Dockerfile = 80;</code>
*/
public static final int Dockerfile_VALUE = 80;
/**
* <code>Dyalog = 50;</code>
*/
public static final int Dyalog_VALUE = 50;
/**
* <code>Elixir = 17;</code>
*/
public static final int Elixir_VALUE = 17;
/**
* <code>Erlang = 18;</code>
*/
public static final int Erlang_VALUE = 18;
/**
* <code>FSharp = 42;</code>
*/
public static final int FSharp_VALUE = 42;
/**
* <code>Fish = 65;</code>
*/
public static final int Fish_VALUE = 65;
/**
* <code>Flow = 24;</code>
*/
public static final int Flow_VALUE = 24;
/**
* <code>Fortran = 56;</code>
*/
public static final int Fortran_VALUE = 56;
/**
* <code>Git_Commit = 91;</code>
*/
public static final int Git_Commit_VALUE = 91;
/**
* <code>Git_Config = 89;</code>
*/
public static final int Git_Config_VALUE = 89;
/**
* <code>Git_Rebase = 92;</code>
*/
public static final int Git_Rebase_VALUE = 92;
/**
* <code>Go = 33;</code>
*/
public static final int Go_VALUE = 33;
/**
* <code>GraphQL = 98;</code>
*/
public static final int GraphQL_VALUE = 98;
/**
* <code>Groovy = 7;</code>
*/
public static final int Groovy_VALUE = 7;
/**
* <code>HTML = 30;</code>
*/
public static final int HTML_VALUE = 30;
/**
* <code>Hack = 20;</code>
*/
public static final int Hack_VALUE = 20;
/**
* <code>Handlebars = 90;</code>
*/
public static final int Handlebars_VALUE = 90;
/**
* <code>Haskell = 44;</code>
*/
public static final int Haskell_VALUE = 44;
/**
* <code>Idris = 46;</code>
*/
public static final int Idris_VALUE = 46;
/**
* <code>Ini = 72;</code>
*/
public static final int Ini_VALUE = 72;
/**
* <code>J = 51;</code>
*/
public static final int J_VALUE = 51;
/**
* <code>JSON = 75;</code>
*/
public static final int JSON_VALUE = 75;
/**
* <code>Java = 6;</code>
*/
public static final int Java_VALUE = 6;
/**
* <code>JavaScript = 22;</code>
*/
public static final int JavaScript_VALUE = 22;
/**
* <code>JavaScriptReact = 93;</code>
*/
public static final int JavaScriptReact_VALUE = 93;
/**
* <code>Jsonnet = 76;</code>
*/
public static final int Jsonnet_VALUE = 76;
/**
* <code>Julia = 55;</code>
*/
public static final int Julia_VALUE = 55;
/**
* <code>Justfile = 109;</code>
*/
public static final int Justfile_VALUE = 109;
/**
* <code>Kotlin = 4;</code>
*/
public static final int Kotlin_VALUE = 4;
/**
* <code>LaTeX = 83;</code>
*/
public static final int LaTeX_VALUE = 83;
/**
* <code>Lean = 48;</code>
*/
public static final int Lean_VALUE = 48;
/**
* <code>Less = 27;</code>
*/
public static final int Less_VALUE = 27;
/**
* <code>Lua = 12;</code>
*/
public static final int Lua_VALUE = 12;
/**
* <code>Luau = 108;</code>
*/
public static final int Luau_VALUE = 108;
/**
* <code>Makefile = 79;</code>
*/
public static final int Makefile_VALUE = 79;
/**
* <code>Markdown = 84;</code>
*/
public static final int Markdown_VALUE = 84;
/**
* <code>Matlab = 52;</code>
*/
public static final int Matlab_VALUE = 52;
/**
* <pre>
* https://nickel-lang.org/
* </pre>
*
* <code>Nickel = 110;</code>
*/
public static final int Nickel_VALUE = 110;
/**
* <code>Nix = 77;</code>
*/
public static final int Nix_VALUE = 77;
/**
* <code>OCaml = 41;</code>
*/
public static final int OCaml_VALUE = 41;
/**
* <code>Objective_C = 36;</code>
*/
public static final int Objective_C_VALUE = 36;
/**
* <code>Objective_CPP = 37;</code>
*/
public static final int Objective_CPP_VALUE = 37;
/**
* <code>Pascal = 99;</code>
*/
public static final int Pascal_VALUE = 99;
/**
* <code>PHP = 19;</code>
*/
public static final int PHP_VALUE = 19;
/**
* <code>PLSQL = 70;</code>
*/
public static final int PLSQL_VALUE = 70;
/**
* <code>Perl = 13;</code>
*/
public static final int Perl_VALUE = 13;
/**
* <code>PowerShell = 67;</code>
*/
public static final int PowerShell_VALUE = 67;
/**
* <code>Prolog = 71;</code>
*/
public static final int Prolog_VALUE = 71;
/**
* <code>Protobuf = 100;</code>
*/
public static final int Protobuf_VALUE = 100;
/**
* <code>Python = 15;</code>
*/
public static final int Python_VALUE = 15;
/**
* <code>R = 54;</code>
*/
public static final int R_VALUE = 54;
/**
* <code>Racket = 11;</code>
*/
public static final int Racket_VALUE = 11;
/**
* <code>Raku = 14;</code>
*/
public static final int Raku_VALUE = 14;
/**
* <code>Razor = 62;</code>
*/
public static final int Razor_VALUE = 62;
/**
* <pre>
* Internal language for testing SCIP
* </pre>
*
* <code>Repro = 102;</code>
*/
public static final int Repro_VALUE = 102;
/**
* <code>ReST = 85;</code>
*/
public static final int ReST_VALUE = 85;
/**
* <code>Ruby = 16;</code>
*/
public static final int Ruby_VALUE = 16;
/**
* <code>Rust = 40;</code>
*/
public static final int Rust_VALUE = 40;
/**
* <code>SAS = 61;</code>
*/
public static final int SAS_VALUE = 61;
/**
* <code>SCSS = 29;</code>
*/
public static final int SCSS_VALUE = 29;
/**
* <code>SML = 43;</code>
*/
public static final int SML_VALUE = 43;
/**
* <code>SQL = 69;</code>
*/
public static final int SQL_VALUE = 69;
/**
* <code>Sass = 28;</code>
*/
public static final int Sass_VALUE = 28;
/**
* <code>Scala = 5;</code>
*/
public static final int Scala_VALUE = 5;
/**
* <code>Scheme = 10;</code>
*/
public static final int Scheme_VALUE = 10;
/**
* <pre>
* Bash
* </pre>
*
* <code>ShellScript = 64;</code>
*/
public static final int ShellScript_VALUE = 64;
/**
* <code>Skylark = 78;</code>
*/
public static final int Skylark_VALUE = 78;
/**
* <code>Slang = 107;</code>
*/
public static final int Slang_VALUE = 107;
/**
* <code>Solidity = 95;</code>
*/
public static final int Solidity_VALUE = 95;
/**
* <code>Svelte = 106;</code>
*/
public static final int Svelte_VALUE = 106;
/**
* <code>Swift = 2;</code>
*/
public static final int Swift_VALUE = 2;
/**
* <code>Tcl = 101;</code>
*/
public static final int Tcl_VALUE = 101;
/**
* <code>TOML = 73;</code>
*/
public static final int TOML_VALUE = 73;
/**
* <code>TeX = 82;</code>
*/
public static final int TeX_VALUE = 82;
/**
* <code>Thrift = 103;</code>
*/
public static final int Thrift_VALUE = 103;
/**
* <code>TypeScript = 23;</code>
*/
public static final int TypeScript_VALUE = 23;
/**
* <code>TypeScriptReact = 94;</code>
*/
public static final int TypeScriptReact_VALUE = 94;
/**
* <code>Verilog = 104;</code>
*/
public static final int Verilog_VALUE = 104;
/**
* <code>VHDL = 105;</code>
*/
public static final int VHDL_VALUE = 105;
/**
* <code>VisualBasic = 63;</code>
*/
public static final int VisualBasic_VALUE = 63;
/**
* <code>Vue = 25;</code>
*/
public static final int Vue_VALUE = 25;
/**
* <code>Wolfram = 53;</code>
*/
public static final int Wolfram_VALUE = 53;
/**
* <code>XML = 31;</code>
*/
public static final int XML_VALUE = 31;
/**
* <code>XSL = 32;</code>
*/
public static final int XSL_VALUE = 32;
/**
* <code>YAML = 74;</code>
*/
public static final int YAML_VALUE = 74;
/**
* <pre>
* NextLanguage = 111;
* Steps add a new language:
* 1. Copy-paste the "NextLanguage = N" line above
* 2. Increment "NextLanguage = N" to "NextLanguage = N+1"
* 3. Replace "NextLanguage = N" with the name of the new language.
* 4. Move the new language to the correct line above using alphabetical order
* 5. (optional) Add a brief comment behind the language if the name is not self-explanatory
* </pre>
*
* <code>Zig = 38;</code>
*/
public static final int Zig_VALUE = 38;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static Language valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static Language forNumber(int value) {
switch (value) {
case 0: return UnspecifiedLanguage;
case 60: return ABAP;
case 96: return Apex;
case 49: return APL;
case 39: return Ada;
case 45: return Agda;
case 86: return AsciiDoc;
case 58: return Assembly;
case 66: return Awk;
case 68: return Bat;
case 81: return BibTeX;
case 34: return C;
case 59: return COBOL;
case 35: return CPP;
case 26: return CSS;
case 1: return CSharp;
case 8: return Clojure;
case 21: return Coffeescript;
case 9: return CommonLisp;
case 47: return Coq;
case 97: return CUDA;
case 3: return Dart;
case 57: return Delphi;
case 88: return Diff;
case 80: return Dockerfile;
case 50: return Dyalog;
case 17: return Elixir;
case 18: return Erlang;
case 42: return FSharp;
case 65: return Fish;
case 24: return Flow;
case 56: return Fortran;
case 91: return Git_Commit;
case 89: return Git_Config;
case 92: return Git_Rebase;
case 33: return Go;
case 98: return GraphQL;
case 7: return Groovy;
case 30: return HTML;
case 20: return Hack;
case 90: return Handlebars;
case 44: return Haskell;
case 46: return Idris;
case 72: return Ini;
case 51: return J;
case 75: return JSON;
case 6: return Java;
case 22: return JavaScript;
case 93: return JavaScriptReact;
case 76: return Jsonnet;
case 55: return Julia;
case 109: return Justfile;
case 4: return Kotlin;
case 83: return LaTeX;
case 48: return Lean;
case 27: return Less;
case 12: return Lua;
case 108: return Luau;
case 79: return Makefile;
case 84: return Markdown;
case 52: return Matlab;
case 110: return Nickel;
case 77: return Nix;
case 41: return OCaml;
case 36: return Objective_C;
case 37: return Objective_CPP;
case 99: return Pascal;
case 19: return PHP;
case 70: return PLSQL;
case 13: return Perl;
case 67: return PowerShell;
case 71: return Prolog;
case 100: return Protobuf;
case 15: return Python;
case 54: return R;
case 11: return Racket;
case 14: return Raku;
case 62: return Razor;
case 102: return Repro;
case 85: return ReST;
case 16: return Ruby;
case 40: return Rust;
case 61: return SAS;
case 29: return SCSS;
case 43: return SML;
case 69: return SQL;
case 28: return Sass;
case 5: return Scala;
case 10: return Scheme;
case 64: return ShellScript;
case 78: return Skylark;
case 107: return Slang;
case 95: return Solidity;
case 106: return Svelte;
case 2: return Swift;
case 101: return Tcl;
case 73: return TOML;
case 82: return TeX;
case 103: return Thrift;
case 23: return TypeScript;
case 94: return TypeScriptReact;
case 104: return Verilog;
case 105: return VHDL;
case 63: return VisualBasic;
case 25: return Vue;
case 53: return Wolfram;
case 31: return XML;
case 32: return XSL;
case 74: return YAML;
case 38: return Zig;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<Language>
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
Language> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<Language>() {
public Language findValueByNumber(int number) {
return Language.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return scip.Scip.getDescriptor().getEnumTypes().get(7);
}
private static final Language[] VALUES = values();
public static Language valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private Language(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:scip.Language)
}
public interface IndexOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.Index)
com.google.protobuf.MessageOrBuilder {
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
* @return Whether the metadata field is set.
*/
boolean hasMetadata();
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
* @return The metadata.
*/
scip.Scip.Metadata getMetadata();
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
*/
scip.Scip.MetadataOrBuilder getMetadataOrBuilder();
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
java.util.List<scip.Scip.Document>
getDocumentsList();
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
scip.Scip.Document getDocuments(int index);
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
int getDocumentsCount();
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
java.util.List<? extends scip.Scip.DocumentOrBuilder>
getDocumentsOrBuilderList();
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
scip.Scip.DocumentOrBuilder getDocumentsOrBuilder(
int index);
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
java.util.List<scip.Scip.SymbolInformation>
getExternalSymbolsList();
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
scip.Scip.SymbolInformation getExternalSymbols(int index);
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
int getExternalSymbolsCount();
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
java.util.List<? extends scip.Scip.SymbolInformationOrBuilder>
getExternalSymbolsOrBuilderList();
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
scip.Scip.SymbolInformationOrBuilder getExternalSymbolsOrBuilder(
int index);
}
/**
* <pre>
* Index represents a complete SCIP index for a workspace this is rooted at a
* single directory. An Index message payload can have a large memory footprint
* and it's therefore recommended to emit and consume an Index payload one field
* value at a time. To permit streaming consumption of an Index payload, the
* `metadata` field must appear at the start of the stream and must only appear
* once in the stream. Other field values may appear in any order.
* </pre>
*
* Protobuf type {@code scip.Index}
*/
public static final class Index extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.Index)
IndexOrBuilder {
private static final long serialVersionUID = 0L;
// Use Index.newBuilder() to construct.
private Index(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private Index() {
documents_ = java.util.Collections.emptyList();
externalSymbols_ = java.util.Collections.emptyList();
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Index();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Index(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 10: {
scip.Scip.Metadata.Builder subBuilder = null;
if (metadata_ != null) {
subBuilder = metadata_.toBuilder();
}
metadata_ = input.readMessage(scip.Scip.Metadata.parser(), extensionRegistry);
if (subBuilder != null) {
subBuilder.mergeFrom(metadata_);
metadata_ = subBuilder.buildPartial();
}
break;
}
case 18: {
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
documents_ = new java.util.ArrayList<scip.Scip.Document>();
mutable_bitField0_ |= 0x00000001;
}
documents_.add(
input.readMessage(scip.Scip.Document.parser(), extensionRegistry));
break;
}
case 26: {
if (!((mutable_bitField0_ & 0x00000002) != 0)) {
externalSymbols_ = new java.util.ArrayList<scip.Scip.SymbolInformation>();
mutable_bitField0_ |= 0x00000002;
}
externalSymbols_.add(
input.readMessage(scip.Scip.SymbolInformation.parser(), extensionRegistry));
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000001) != 0)) {
documents_ = java.util.Collections.unmodifiableList(documents_);
}
if (((mutable_bitField0_ & 0x00000002) != 0)) {
externalSymbols_ = java.util.Collections.unmodifiableList(externalSymbols_);
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Index_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Index_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Index.class, scip.Scip.Index.Builder.class);
}
public static final int METADATA_FIELD_NUMBER = 1;
private scip.Scip.Metadata metadata_;
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
* @return Whether the metadata field is set.
*/
@java.lang.Override
public boolean hasMetadata() {
return metadata_ != null;
}
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
* @return The metadata.
*/
@java.lang.Override
public scip.Scip.Metadata getMetadata() {
return metadata_ == null ? scip.Scip.Metadata.getDefaultInstance() : metadata_;
}
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
*/
@java.lang.Override
public scip.Scip.MetadataOrBuilder getMetadataOrBuilder() {
return getMetadata();
}
public static final int DOCUMENTS_FIELD_NUMBER = 2;
private java.util.List<scip.Scip.Document> documents_;
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
@java.lang.Override
public java.util.List<scip.Scip.Document> getDocumentsList() {
return documents_;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
@java.lang.Override
public java.util.List<? extends scip.Scip.DocumentOrBuilder>
getDocumentsOrBuilderList() {
return documents_;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
@java.lang.Override
public int getDocumentsCount() {
return documents_.size();
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
@java.lang.Override
public scip.Scip.Document getDocuments(int index) {
return documents_.get(index);
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
@java.lang.Override
public scip.Scip.DocumentOrBuilder getDocumentsOrBuilder(
int index) {
return documents_.get(index);
}
public static final int EXTERNAL_SYMBOLS_FIELD_NUMBER = 3;
private java.util.List<scip.Scip.SymbolInformation> externalSymbols_;
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
@java.lang.Override
public java.util.List<scip.Scip.SymbolInformation> getExternalSymbolsList() {
return externalSymbols_;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
@java.lang.Override
public java.util.List<? extends scip.Scip.SymbolInformationOrBuilder>
getExternalSymbolsOrBuilderList() {
return externalSymbols_;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
@java.lang.Override
public int getExternalSymbolsCount() {
return externalSymbols_.size();
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
@java.lang.Override
public scip.Scip.SymbolInformation getExternalSymbols(int index) {
return externalSymbols_.get(index);
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
@java.lang.Override
public scip.Scip.SymbolInformationOrBuilder getExternalSymbolsOrBuilder(
int index) {
return externalSymbols_.get(index);
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (metadata_ != null) {
output.writeMessage(1, getMetadata());
}
for (int i = 0; i < documents_.size(); i++) {
output.writeMessage(2, documents_.get(i));
}
for (int i = 0; i < externalSymbols_.size(); i++) {
output.writeMessage(3, externalSymbols_.get(i));
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (metadata_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(1, getMetadata());
}
for (int i = 0; i < documents_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(2, documents_.get(i));
}
for (int i = 0; i < externalSymbols_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(3, externalSymbols_.get(i));
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.Index)) {
return super.equals(obj);
}
scip.Scip.Index other = (scip.Scip.Index) obj;
if (hasMetadata() != other.hasMetadata()) return false;
if (hasMetadata()) {
if (!getMetadata()
.equals(other.getMetadata())) return false;
}
if (!getDocumentsList()
.equals(other.getDocumentsList())) return false;
if (!getExternalSymbolsList()
.equals(other.getExternalSymbolsList())) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
if (hasMetadata()) {
hash = (37 * hash) + METADATA_FIELD_NUMBER;
hash = (53 * hash) + getMetadata().hashCode();
}
if (getDocumentsCount() > 0) {
hash = (37 * hash) + DOCUMENTS_FIELD_NUMBER;
hash = (53 * hash) + getDocumentsList().hashCode();
}
if (getExternalSymbolsCount() > 0) {
hash = (37 * hash) + EXTERNAL_SYMBOLS_FIELD_NUMBER;
hash = (53 * hash) + getExternalSymbolsList().hashCode();
}
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.Index parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Index parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Index parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Index parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Index parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Index parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Index parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Index parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Index parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.Index parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Index parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Index parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.Index prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* <pre>
* Index represents a complete SCIP index for a workspace this is rooted at a
* single directory. An Index message payload can have a large memory footprint
* and it's therefore recommended to emit and consume an Index payload one field
* value at a time. To permit streaming consumption of an Index payload, the
* `metadata` field must appear at the start of the stream and must only appear
* once in the stream. Other field values may appear in any order.
* </pre>
*
* Protobuf type {@code scip.Index}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.Index)
scip.Scip.IndexOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Index_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Index_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Index.class, scip.Scip.Index.Builder.class);
}
// Construct using scip.Scip.Index.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
getDocumentsFieldBuilder();
getExternalSymbolsFieldBuilder();
}
}
@java.lang.Override
public Builder clear() {
super.clear();
if (metadataBuilder_ == null) {
metadata_ = null;
} else {
metadata_ = null;
metadataBuilder_ = null;
}
if (documentsBuilder_ == null) {
documents_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
} else {
documentsBuilder_.clear();
}
if (externalSymbolsBuilder_ == null) {
externalSymbols_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
} else {
externalSymbolsBuilder_.clear();
}
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_Index_descriptor;
}
@java.lang.Override
public scip.Scip.Index getDefaultInstanceForType() {
return scip.Scip.Index.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.Index build() {
scip.Scip.Index result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.Index buildPartial() {
scip.Scip.Index result = new scip.Scip.Index(this);
int from_bitField0_ = bitField0_;
if (metadataBuilder_ == null) {
result.metadata_ = metadata_;
} else {
result.metadata_ = metadataBuilder_.build();
}
if (documentsBuilder_ == null) {
if (((bitField0_ & 0x00000001) != 0)) {
documents_ = java.util.Collections.unmodifiableList(documents_);
bitField0_ = (bitField0_ & ~0x00000001);
}
result.documents_ = documents_;
} else {
result.documents_ = documentsBuilder_.build();
}
if (externalSymbolsBuilder_ == null) {
if (((bitField0_ & 0x00000002) != 0)) {
externalSymbols_ = java.util.Collections.unmodifiableList(externalSymbols_);
bitField0_ = (bitField0_ & ~0x00000002);
}
result.externalSymbols_ = externalSymbols_;
} else {
result.externalSymbols_ = externalSymbolsBuilder_.build();
}
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.Index) {
return mergeFrom((scip.Scip.Index)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.Index other) {
if (other == scip.Scip.Index.getDefaultInstance()) return this;
if (other.hasMetadata()) {
mergeMetadata(other.getMetadata());
}
if (documentsBuilder_ == null) {
if (!other.documents_.isEmpty()) {
if (documents_.isEmpty()) {
documents_ = other.documents_;
bitField0_ = (bitField0_ & ~0x00000001);
} else {
ensureDocumentsIsMutable();
documents_.addAll(other.documents_);
}
onChanged();
}
} else {
if (!other.documents_.isEmpty()) {
if (documentsBuilder_.isEmpty()) {
documentsBuilder_.dispose();
documentsBuilder_ = null;
documents_ = other.documents_;
bitField0_ = (bitField0_ & ~0x00000001);
documentsBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getDocumentsFieldBuilder() : null;
} else {
documentsBuilder_.addAllMessages(other.documents_);
}
}
}
if (externalSymbolsBuilder_ == null) {
if (!other.externalSymbols_.isEmpty()) {
if (externalSymbols_.isEmpty()) {
externalSymbols_ = other.externalSymbols_;
bitField0_ = (bitField0_ & ~0x00000002);
} else {
ensureExternalSymbolsIsMutable();
externalSymbols_.addAll(other.externalSymbols_);
}
onChanged();
}
} else {
if (!other.externalSymbols_.isEmpty()) {
if (externalSymbolsBuilder_.isEmpty()) {
externalSymbolsBuilder_.dispose();
externalSymbolsBuilder_ = null;
externalSymbols_ = other.externalSymbols_;
bitField0_ = (bitField0_ & ~0x00000002);
externalSymbolsBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getExternalSymbolsFieldBuilder() : null;
} else {
externalSymbolsBuilder_.addAllMessages(other.externalSymbols_);
}
}
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.Index parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.Index) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private scip.Scip.Metadata metadata_;
private com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.Metadata, scip.Scip.Metadata.Builder, scip.Scip.MetadataOrBuilder> metadataBuilder_;
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
* @return Whether the metadata field is set.
*/
public boolean hasMetadata() {
return metadataBuilder_ != null || metadata_ != null;
}
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
* @return The metadata.
*/
public scip.Scip.Metadata getMetadata() {
if (metadataBuilder_ == null) {
return metadata_ == null ? scip.Scip.Metadata.getDefaultInstance() : metadata_;
} else {
return metadataBuilder_.getMessage();
}
}
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
*/
public Builder setMetadata(scip.Scip.Metadata value) {
if (metadataBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
metadata_ = value;
onChanged();
} else {
metadataBuilder_.setMessage(value);
}
return this;
}
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
*/
public Builder setMetadata(
scip.Scip.Metadata.Builder builderForValue) {
if (metadataBuilder_ == null) {
metadata_ = builderForValue.build();
onChanged();
} else {
metadataBuilder_.setMessage(builderForValue.build());
}
return this;
}
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
*/
public Builder mergeMetadata(scip.Scip.Metadata value) {
if (metadataBuilder_ == null) {
if (metadata_ != null) {
metadata_ =
scip.Scip.Metadata.newBuilder(metadata_).mergeFrom(value).buildPartial();
} else {
metadata_ = value;
}
onChanged();
} else {
metadataBuilder_.mergeFrom(value);
}
return this;
}
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
*/
public Builder clearMetadata() {
if (metadataBuilder_ == null) {
metadata_ = null;
onChanged();
} else {
metadata_ = null;
metadataBuilder_ = null;
}
return this;
}
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
*/
public scip.Scip.Metadata.Builder getMetadataBuilder() {
onChanged();
return getMetadataFieldBuilder().getBuilder();
}
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
*/
public scip.Scip.MetadataOrBuilder getMetadataOrBuilder() {
if (metadataBuilder_ != null) {
return metadataBuilder_.getMessageOrBuilder();
} else {
return metadata_ == null ?
scip.Scip.Metadata.getDefaultInstance() : metadata_;
}
}
/**
* <pre>
* Metadata about this index.
* </pre>
*
* <code>.scip.Metadata metadata = 1;</code>
*/
private com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.Metadata, scip.Scip.Metadata.Builder, scip.Scip.MetadataOrBuilder>
getMetadataFieldBuilder() {
if (metadataBuilder_ == null) {
metadataBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.Metadata, scip.Scip.Metadata.Builder, scip.Scip.MetadataOrBuilder>(
getMetadata(),
getParentForChildren(),
isClean());
metadata_ = null;
}
return metadataBuilder_;
}
private java.util.List<scip.Scip.Document> documents_ =
java.util.Collections.emptyList();
private void ensureDocumentsIsMutable() {
if (!((bitField0_ & 0x00000001) != 0)) {
documents_ = new java.util.ArrayList<scip.Scip.Document>(documents_);
bitField0_ |= 0x00000001;
}
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Document, scip.Scip.Document.Builder, scip.Scip.DocumentOrBuilder> documentsBuilder_;
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public java.util.List<scip.Scip.Document> getDocumentsList() {
if (documentsBuilder_ == null) {
return java.util.Collections.unmodifiableList(documents_);
} else {
return documentsBuilder_.getMessageList();
}
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public int getDocumentsCount() {
if (documentsBuilder_ == null) {
return documents_.size();
} else {
return documentsBuilder_.getCount();
}
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public scip.Scip.Document getDocuments(int index) {
if (documentsBuilder_ == null) {
return documents_.get(index);
} else {
return documentsBuilder_.getMessage(index);
}
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public Builder setDocuments(
int index, scip.Scip.Document value) {
if (documentsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDocumentsIsMutable();
documents_.set(index, value);
onChanged();
} else {
documentsBuilder_.setMessage(index, value);
}
return this;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public Builder setDocuments(
int index, scip.Scip.Document.Builder builderForValue) {
if (documentsBuilder_ == null) {
ensureDocumentsIsMutable();
documents_.set(index, builderForValue.build());
onChanged();
} else {
documentsBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public Builder addDocuments(scip.Scip.Document value) {
if (documentsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDocumentsIsMutable();
documents_.add(value);
onChanged();
} else {
documentsBuilder_.addMessage(value);
}
return this;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public Builder addDocuments(
int index, scip.Scip.Document value) {
if (documentsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDocumentsIsMutable();
documents_.add(index, value);
onChanged();
} else {
documentsBuilder_.addMessage(index, value);
}
return this;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public Builder addDocuments(
scip.Scip.Document.Builder builderForValue) {
if (documentsBuilder_ == null) {
ensureDocumentsIsMutable();
documents_.add(builderForValue.build());
onChanged();
} else {
documentsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public Builder addDocuments(
int index, scip.Scip.Document.Builder builderForValue) {
if (documentsBuilder_ == null) {
ensureDocumentsIsMutable();
documents_.add(index, builderForValue.build());
onChanged();
} else {
documentsBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public Builder addAllDocuments(
java.lang.Iterable<? extends scip.Scip.Document> values) {
if (documentsBuilder_ == null) {
ensureDocumentsIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, documents_);
onChanged();
} else {
documentsBuilder_.addAllMessages(values);
}
return this;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public Builder clearDocuments() {
if (documentsBuilder_ == null) {
documents_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
} else {
documentsBuilder_.clear();
}
return this;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public Builder removeDocuments(int index) {
if (documentsBuilder_ == null) {
ensureDocumentsIsMutable();
documents_.remove(index);
onChanged();
} else {
documentsBuilder_.remove(index);
}
return this;
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public scip.Scip.Document.Builder getDocumentsBuilder(
int index) {
return getDocumentsFieldBuilder().getBuilder(index);
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public scip.Scip.DocumentOrBuilder getDocumentsOrBuilder(
int index) {
if (documentsBuilder_ == null) {
return documents_.get(index); } else {
return documentsBuilder_.getMessageOrBuilder(index);
}
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public java.util.List<? extends scip.Scip.DocumentOrBuilder>
getDocumentsOrBuilderList() {
if (documentsBuilder_ != null) {
return documentsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(documents_);
}
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public scip.Scip.Document.Builder addDocumentsBuilder() {
return getDocumentsFieldBuilder().addBuilder(
scip.Scip.Document.getDefaultInstance());
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public scip.Scip.Document.Builder addDocumentsBuilder(
int index) {
return getDocumentsFieldBuilder().addBuilder(
index, scip.Scip.Document.getDefaultInstance());
}
/**
* <pre>
* Documents that belong to this index.
* </pre>
*
* <code>repeated .scip.Document documents = 2;</code>
*/
public java.util.List<scip.Scip.Document.Builder>
getDocumentsBuilderList() {
return getDocumentsFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Document, scip.Scip.Document.Builder, scip.Scip.DocumentOrBuilder>
getDocumentsFieldBuilder() {
if (documentsBuilder_ == null) {
documentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Document, scip.Scip.Document.Builder, scip.Scip.DocumentOrBuilder>(
documents_,
((bitField0_ & 0x00000001) != 0),
getParentForChildren(),
isClean());
documents_ = null;
}
return documentsBuilder_;
}
private java.util.List<scip.Scip.SymbolInformation> externalSymbols_ =
java.util.Collections.emptyList();
private void ensureExternalSymbolsIsMutable() {
if (!((bitField0_ & 0x00000002) != 0)) {
externalSymbols_ = new java.util.ArrayList<scip.Scip.SymbolInformation>(externalSymbols_);
bitField0_ |= 0x00000002;
}
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.SymbolInformation, scip.Scip.SymbolInformation.Builder, scip.Scip.SymbolInformationOrBuilder> externalSymbolsBuilder_;
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public java.util.List<scip.Scip.SymbolInformation> getExternalSymbolsList() {
if (externalSymbolsBuilder_ == null) {
return java.util.Collections.unmodifiableList(externalSymbols_);
} else {
return externalSymbolsBuilder_.getMessageList();
}
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public int getExternalSymbolsCount() {
if (externalSymbolsBuilder_ == null) {
return externalSymbols_.size();
} else {
return externalSymbolsBuilder_.getCount();
}
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public scip.Scip.SymbolInformation getExternalSymbols(int index) {
if (externalSymbolsBuilder_ == null) {
return externalSymbols_.get(index);
} else {
return externalSymbolsBuilder_.getMessage(index);
}
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public Builder setExternalSymbols(
int index, scip.Scip.SymbolInformation value) {
if (externalSymbolsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureExternalSymbolsIsMutable();
externalSymbols_.set(index, value);
onChanged();
} else {
externalSymbolsBuilder_.setMessage(index, value);
}
return this;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public Builder setExternalSymbols(
int index, scip.Scip.SymbolInformation.Builder builderForValue) {
if (externalSymbolsBuilder_ == null) {
ensureExternalSymbolsIsMutable();
externalSymbols_.set(index, builderForValue.build());
onChanged();
} else {
externalSymbolsBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public Builder addExternalSymbols(scip.Scip.SymbolInformation value) {
if (externalSymbolsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureExternalSymbolsIsMutable();
externalSymbols_.add(value);
onChanged();
} else {
externalSymbolsBuilder_.addMessage(value);
}
return this;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public Builder addExternalSymbols(
int index, scip.Scip.SymbolInformation value) {
if (externalSymbolsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureExternalSymbolsIsMutable();
externalSymbols_.add(index, value);
onChanged();
} else {
externalSymbolsBuilder_.addMessage(index, value);
}
return this;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public Builder addExternalSymbols(
scip.Scip.SymbolInformation.Builder builderForValue) {
if (externalSymbolsBuilder_ == null) {
ensureExternalSymbolsIsMutable();
externalSymbols_.add(builderForValue.build());
onChanged();
} else {
externalSymbolsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public Builder addExternalSymbols(
int index, scip.Scip.SymbolInformation.Builder builderForValue) {
if (externalSymbolsBuilder_ == null) {
ensureExternalSymbolsIsMutable();
externalSymbols_.add(index, builderForValue.build());
onChanged();
} else {
externalSymbolsBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public Builder addAllExternalSymbols(
java.lang.Iterable<? extends scip.Scip.SymbolInformation> values) {
if (externalSymbolsBuilder_ == null) {
ensureExternalSymbolsIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, externalSymbols_);
onChanged();
} else {
externalSymbolsBuilder_.addAllMessages(values);
}
return this;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public Builder clearExternalSymbols() {
if (externalSymbolsBuilder_ == null) {
externalSymbols_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
onChanged();
} else {
externalSymbolsBuilder_.clear();
}
return this;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public Builder removeExternalSymbols(int index) {
if (externalSymbolsBuilder_ == null) {
ensureExternalSymbolsIsMutable();
externalSymbols_.remove(index);
onChanged();
} else {
externalSymbolsBuilder_.remove(index);
}
return this;
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public scip.Scip.SymbolInformation.Builder getExternalSymbolsBuilder(
int index) {
return getExternalSymbolsFieldBuilder().getBuilder(index);
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public scip.Scip.SymbolInformationOrBuilder getExternalSymbolsOrBuilder(
int index) {
if (externalSymbolsBuilder_ == null) {
return externalSymbols_.get(index); } else {
return externalSymbolsBuilder_.getMessageOrBuilder(index);
}
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public java.util.List<? extends scip.Scip.SymbolInformationOrBuilder>
getExternalSymbolsOrBuilderList() {
if (externalSymbolsBuilder_ != null) {
return externalSymbolsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(externalSymbols_);
}
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public scip.Scip.SymbolInformation.Builder addExternalSymbolsBuilder() {
return getExternalSymbolsFieldBuilder().addBuilder(
scip.Scip.SymbolInformation.getDefaultInstance());
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public scip.Scip.SymbolInformation.Builder addExternalSymbolsBuilder(
int index) {
return getExternalSymbolsFieldBuilder().addBuilder(
index, scip.Scip.SymbolInformation.getDefaultInstance());
}
/**
* <pre>
* (optional) Symbols that are referenced from this index but are defined in
* an external package (a separate `Index` message). Leave this field empty
* if you assume the external package will get indexed separately. If the
* external package won't get indexed for some reason then you can use this
* field to provide hover documentation for those external symbols.
* </pre>
*
* <code>repeated .scip.SymbolInformation external_symbols = 3;</code>
*/
public java.util.List<scip.Scip.SymbolInformation.Builder>
getExternalSymbolsBuilderList() {
return getExternalSymbolsFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.SymbolInformation, scip.Scip.SymbolInformation.Builder, scip.Scip.SymbolInformationOrBuilder>
getExternalSymbolsFieldBuilder() {
if (externalSymbolsBuilder_ == null) {
externalSymbolsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.SymbolInformation, scip.Scip.SymbolInformation.Builder, scip.Scip.SymbolInformationOrBuilder>(
externalSymbols_,
((bitField0_ & 0x00000002) != 0),
getParentForChildren(),
isClean());
externalSymbols_ = null;
}
return externalSymbolsBuilder_;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.Index)
}
// @@protoc_insertion_point(class_scope:scip.Index)
private static final scip.Scip.Index DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.Index();
}
public static scip.Scip.Index getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<Index>
PARSER = new com.google.protobuf.AbstractParser<Index>() {
@java.lang.Override
public Index parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Index(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<Index> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<Index> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.Index getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface MetadataOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.Metadata)
com.google.protobuf.MessageOrBuilder {
/**
* <pre>
* Which version of this protocol was used to generate this index?
* </pre>
*
* <code>.scip.ProtocolVersion version = 1;</code>
* @return The enum numeric value on the wire for version.
*/
int getVersionValue();
/**
* <pre>
* Which version of this protocol was used to generate this index?
* </pre>
*
* <code>.scip.ProtocolVersion version = 1;</code>
* @return The version.
*/
scip.Scip.ProtocolVersion getVersion();
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
* @return Whether the toolInfo field is set.
*/
boolean hasToolInfo();
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
* @return The toolInfo.
*/
scip.Scip.ToolInfo getToolInfo();
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
*/
scip.Scip.ToolInfoOrBuilder getToolInfoOrBuilder();
/**
* <pre>
* URI-encoded absolute path to the root directory of this index. All
* documents in this index must appear in a subdirectory of this root
* directory.
* </pre>
*
* <code>string project_root = 3;</code>
* @return The projectRoot.
*/
java.lang.String getProjectRoot();
/**
* <pre>
* URI-encoded absolute path to the root directory of this index. All
* documents in this index must appear in a subdirectory of this root
* directory.
* </pre>
*
* <code>string project_root = 3;</code>
* @return The bytes for projectRoot.
*/
com.google.protobuf.ByteString
getProjectRootBytes();
/**
* <pre>
* Text encoding of the source files on disk that are referenced from
* `Document.relative_path`. This value is unrelated to the `Document.text`
* field, which is a Protobuf string and hence must be UTF-8 encoded.
* </pre>
*
* <code>.scip.TextEncoding text_document_encoding = 4;</code>
* @return The enum numeric value on the wire for textDocumentEncoding.
*/
int getTextDocumentEncodingValue();
/**
* <pre>
* Text encoding of the source files on disk that are referenced from
* `Document.relative_path`. This value is unrelated to the `Document.text`
* field, which is a Protobuf string and hence must be UTF-8 encoded.
* </pre>
*
* <code>.scip.TextEncoding text_document_encoding = 4;</code>
* @return The textDocumentEncoding.
*/
scip.Scip.TextEncoding getTextDocumentEncoding();
}
/**
* Protobuf type {@code scip.Metadata}
*/
public static final class Metadata extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.Metadata)
MetadataOrBuilder {
private static final long serialVersionUID = 0L;
// Use Metadata.newBuilder() to construct.
private Metadata(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private Metadata() {
version_ = 0;
projectRoot_ = "";
textDocumentEncoding_ = 0;
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Metadata();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Metadata(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 8: {
int rawValue = input.readEnum();
version_ = rawValue;
break;
}
case 18: {
scip.Scip.ToolInfo.Builder subBuilder = null;
if (toolInfo_ != null) {
subBuilder = toolInfo_.toBuilder();
}
toolInfo_ = input.readMessage(scip.Scip.ToolInfo.parser(), extensionRegistry);
if (subBuilder != null) {
subBuilder.mergeFrom(toolInfo_);
toolInfo_ = subBuilder.buildPartial();
}
break;
}
case 26: {
java.lang.String s = input.readStringRequireUtf8();
projectRoot_ = s;
break;
}
case 32: {
int rawValue = input.readEnum();
textDocumentEncoding_ = rawValue;
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Metadata_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Metadata_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Metadata.class, scip.Scip.Metadata.Builder.class);
}
public static final int VERSION_FIELD_NUMBER = 1;
private int version_;
/**
* <pre>
* Which version of this protocol was used to generate this index?
* </pre>
*
* <code>.scip.ProtocolVersion version = 1;</code>
* @return The enum numeric value on the wire for version.
*/
@java.lang.Override public int getVersionValue() {
return version_;
}
/**
* <pre>
* Which version of this protocol was used to generate this index?
* </pre>
*
* <code>.scip.ProtocolVersion version = 1;</code>
* @return The version.
*/
@java.lang.Override public scip.Scip.ProtocolVersion getVersion() {
@SuppressWarnings("deprecation")
scip.Scip.ProtocolVersion result = scip.Scip.ProtocolVersion.valueOf(version_);
return result == null ? scip.Scip.ProtocolVersion.UNRECOGNIZED : result;
}
public static final int TOOL_INFO_FIELD_NUMBER = 2;
private scip.Scip.ToolInfo toolInfo_;
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
* @return Whether the toolInfo field is set.
*/
@java.lang.Override
public boolean hasToolInfo() {
return toolInfo_ != null;
}
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
* @return The toolInfo.
*/
@java.lang.Override
public scip.Scip.ToolInfo getToolInfo() {
return toolInfo_ == null ? scip.Scip.ToolInfo.getDefaultInstance() : toolInfo_;
}
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
*/
@java.lang.Override
public scip.Scip.ToolInfoOrBuilder getToolInfoOrBuilder() {
return getToolInfo();
}
public static final int PROJECT_ROOT_FIELD_NUMBER = 3;
private volatile java.lang.Object projectRoot_;
/**
* <pre>
* URI-encoded absolute path to the root directory of this index. All
* documents in this index must appear in a subdirectory of this root
* directory.
* </pre>
*
* <code>string project_root = 3;</code>
* @return The projectRoot.
*/
@java.lang.Override
public java.lang.String getProjectRoot() {
java.lang.Object ref = projectRoot_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
projectRoot_ = s;
return s;
}
}
/**
* <pre>
* URI-encoded absolute path to the root directory of this index. All
* documents in this index must appear in a subdirectory of this root
* directory.
* </pre>
*
* <code>string project_root = 3;</code>
* @return The bytes for projectRoot.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getProjectRootBytes() {
java.lang.Object ref = projectRoot_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
projectRoot_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int TEXT_DOCUMENT_ENCODING_FIELD_NUMBER = 4;
private int textDocumentEncoding_;
/**
* <pre>
* Text encoding of the source files on disk that are referenced from
* `Document.relative_path`. This value is unrelated to the `Document.text`
* field, which is a Protobuf string and hence must be UTF-8 encoded.
* </pre>
*
* <code>.scip.TextEncoding text_document_encoding = 4;</code>
* @return The enum numeric value on the wire for textDocumentEncoding.
*/
@java.lang.Override public int getTextDocumentEncodingValue() {
return textDocumentEncoding_;
}
/**
* <pre>
* Text encoding of the source files on disk that are referenced from
* `Document.relative_path`. This value is unrelated to the `Document.text`
* field, which is a Protobuf string and hence must be UTF-8 encoded.
* </pre>
*
* <code>.scip.TextEncoding text_document_encoding = 4;</code>
* @return The textDocumentEncoding.
*/
@java.lang.Override public scip.Scip.TextEncoding getTextDocumentEncoding() {
@SuppressWarnings("deprecation")
scip.Scip.TextEncoding result = scip.Scip.TextEncoding.valueOf(textDocumentEncoding_);
return result == null ? scip.Scip.TextEncoding.UNRECOGNIZED : result;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (version_ != scip.Scip.ProtocolVersion.UnspecifiedProtocolVersion.getNumber()) {
output.writeEnum(1, version_);
}
if (toolInfo_ != null) {
output.writeMessage(2, getToolInfo());
}
if (!getProjectRootBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 3, projectRoot_);
}
if (textDocumentEncoding_ != scip.Scip.TextEncoding.UnspecifiedTextEncoding.getNumber()) {
output.writeEnum(4, textDocumentEncoding_);
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (version_ != scip.Scip.ProtocolVersion.UnspecifiedProtocolVersion.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(1, version_);
}
if (toolInfo_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(2, getToolInfo());
}
if (!getProjectRootBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, projectRoot_);
}
if (textDocumentEncoding_ != scip.Scip.TextEncoding.UnspecifiedTextEncoding.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(4, textDocumentEncoding_);
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.Metadata)) {
return super.equals(obj);
}
scip.Scip.Metadata other = (scip.Scip.Metadata) obj;
if (version_ != other.version_) return false;
if (hasToolInfo() != other.hasToolInfo()) return false;
if (hasToolInfo()) {
if (!getToolInfo()
.equals(other.getToolInfo())) return false;
}
if (!getProjectRoot()
.equals(other.getProjectRoot())) return false;
if (textDocumentEncoding_ != other.textDocumentEncoding_) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + VERSION_FIELD_NUMBER;
hash = (53 * hash) + version_;
if (hasToolInfo()) {
hash = (37 * hash) + TOOL_INFO_FIELD_NUMBER;
hash = (53 * hash) + getToolInfo().hashCode();
}
hash = (37 * hash) + PROJECT_ROOT_FIELD_NUMBER;
hash = (53 * hash) + getProjectRoot().hashCode();
hash = (37 * hash) + TEXT_DOCUMENT_ENCODING_FIELD_NUMBER;
hash = (53 * hash) + textDocumentEncoding_;
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.Metadata parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Metadata parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Metadata parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Metadata parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Metadata parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Metadata parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Metadata parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Metadata parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Metadata parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.Metadata parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Metadata parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Metadata parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.Metadata prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* Protobuf type {@code scip.Metadata}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.Metadata)
scip.Scip.MetadataOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Metadata_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Metadata_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Metadata.class, scip.Scip.Metadata.Builder.class);
}
// Construct using scip.Scip.Metadata.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
@java.lang.Override
public Builder clear() {
super.clear();
version_ = 0;
if (toolInfoBuilder_ == null) {
toolInfo_ = null;
} else {
toolInfo_ = null;
toolInfoBuilder_ = null;
}
projectRoot_ = "";
textDocumentEncoding_ = 0;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_Metadata_descriptor;
}
@java.lang.Override
public scip.Scip.Metadata getDefaultInstanceForType() {
return scip.Scip.Metadata.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.Metadata build() {
scip.Scip.Metadata result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.Metadata buildPartial() {
scip.Scip.Metadata result = new scip.Scip.Metadata(this);
result.version_ = version_;
if (toolInfoBuilder_ == null) {
result.toolInfo_ = toolInfo_;
} else {
result.toolInfo_ = toolInfoBuilder_.build();
}
result.projectRoot_ = projectRoot_;
result.textDocumentEncoding_ = textDocumentEncoding_;
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.Metadata) {
return mergeFrom((scip.Scip.Metadata)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.Metadata other) {
if (other == scip.Scip.Metadata.getDefaultInstance()) return this;
if (other.version_ != 0) {
setVersionValue(other.getVersionValue());
}
if (other.hasToolInfo()) {
mergeToolInfo(other.getToolInfo());
}
if (!other.getProjectRoot().isEmpty()) {
projectRoot_ = other.projectRoot_;
onChanged();
}
if (other.textDocumentEncoding_ != 0) {
setTextDocumentEncodingValue(other.getTextDocumentEncodingValue());
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.Metadata parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.Metadata) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int version_ = 0;
/**
* <pre>
* Which version of this protocol was used to generate this index?
* </pre>
*
* <code>.scip.ProtocolVersion version = 1;</code>
* @return The enum numeric value on the wire for version.
*/
@java.lang.Override public int getVersionValue() {
return version_;
}
/**
* <pre>
* Which version of this protocol was used to generate this index?
* </pre>
*
* <code>.scip.ProtocolVersion version = 1;</code>
* @param value The enum numeric value on the wire for version to set.
* @return This builder for chaining.
*/
public Builder setVersionValue(int value) {
version_ = value;
onChanged();
return this;
}
/**
* <pre>
* Which version of this protocol was used to generate this index?
* </pre>
*
* <code>.scip.ProtocolVersion version = 1;</code>
* @return The version.
*/
@java.lang.Override
public scip.Scip.ProtocolVersion getVersion() {
@SuppressWarnings("deprecation")
scip.Scip.ProtocolVersion result = scip.Scip.ProtocolVersion.valueOf(version_);
return result == null ? scip.Scip.ProtocolVersion.UNRECOGNIZED : result;
}
/**
* <pre>
* Which version of this protocol was used to generate this index?
* </pre>
*
* <code>.scip.ProtocolVersion version = 1;</code>
* @param value The version to set.
* @return This builder for chaining.
*/
public Builder setVersion(scip.Scip.ProtocolVersion value) {
if (value == null) {
throw new NullPointerException();
}
version_ = value.getNumber();
onChanged();
return this;
}
/**
* <pre>
* Which version of this protocol was used to generate this index?
* </pre>
*
* <code>.scip.ProtocolVersion version = 1;</code>
* @return This builder for chaining.
*/
public Builder clearVersion() {
version_ = 0;
onChanged();
return this;
}
private scip.Scip.ToolInfo toolInfo_;
private com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.ToolInfo, scip.Scip.ToolInfo.Builder, scip.Scip.ToolInfoOrBuilder> toolInfoBuilder_;
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
* @return Whether the toolInfo field is set.
*/
public boolean hasToolInfo() {
return toolInfoBuilder_ != null || toolInfo_ != null;
}
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
* @return The toolInfo.
*/
public scip.Scip.ToolInfo getToolInfo() {
if (toolInfoBuilder_ == null) {
return toolInfo_ == null ? scip.Scip.ToolInfo.getDefaultInstance() : toolInfo_;
} else {
return toolInfoBuilder_.getMessage();
}
}
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
*/
public Builder setToolInfo(scip.Scip.ToolInfo value) {
if (toolInfoBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
toolInfo_ = value;
onChanged();
} else {
toolInfoBuilder_.setMessage(value);
}
return this;
}
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
*/
public Builder setToolInfo(
scip.Scip.ToolInfo.Builder builderForValue) {
if (toolInfoBuilder_ == null) {
toolInfo_ = builderForValue.build();
onChanged();
} else {
toolInfoBuilder_.setMessage(builderForValue.build());
}
return this;
}
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
*/
public Builder mergeToolInfo(scip.Scip.ToolInfo value) {
if (toolInfoBuilder_ == null) {
if (toolInfo_ != null) {
toolInfo_ =
scip.Scip.ToolInfo.newBuilder(toolInfo_).mergeFrom(value).buildPartial();
} else {
toolInfo_ = value;
}
onChanged();
} else {
toolInfoBuilder_.mergeFrom(value);
}
return this;
}
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
*/
public Builder clearToolInfo() {
if (toolInfoBuilder_ == null) {
toolInfo_ = null;
onChanged();
} else {
toolInfo_ = null;
toolInfoBuilder_ = null;
}
return this;
}
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
*/
public scip.Scip.ToolInfo.Builder getToolInfoBuilder() {
onChanged();
return getToolInfoFieldBuilder().getBuilder();
}
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
*/
public scip.Scip.ToolInfoOrBuilder getToolInfoOrBuilder() {
if (toolInfoBuilder_ != null) {
return toolInfoBuilder_.getMessageOrBuilder();
} else {
return toolInfo_ == null ?
scip.Scip.ToolInfo.getDefaultInstance() : toolInfo_;
}
}
/**
* <pre>
* Information about the tool that produced this index.
* </pre>
*
* <code>.scip.ToolInfo tool_info = 2;</code>
*/
private com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.ToolInfo, scip.Scip.ToolInfo.Builder, scip.Scip.ToolInfoOrBuilder>
getToolInfoFieldBuilder() {
if (toolInfoBuilder_ == null) {
toolInfoBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.ToolInfo, scip.Scip.ToolInfo.Builder, scip.Scip.ToolInfoOrBuilder>(
getToolInfo(),
getParentForChildren(),
isClean());
toolInfo_ = null;
}
return toolInfoBuilder_;
}
private java.lang.Object projectRoot_ = "";
/**
* <pre>
* URI-encoded absolute path to the root directory of this index. All
* documents in this index must appear in a subdirectory of this root
* directory.
* </pre>
*
* <code>string project_root = 3;</code>
* @return The projectRoot.
*/
public java.lang.String getProjectRoot() {
java.lang.Object ref = projectRoot_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
projectRoot_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* URI-encoded absolute path to the root directory of this index. All
* documents in this index must appear in a subdirectory of this root
* directory.
* </pre>
*
* <code>string project_root = 3;</code>
* @return The bytes for projectRoot.
*/
public com.google.protobuf.ByteString
getProjectRootBytes() {
java.lang.Object ref = projectRoot_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
projectRoot_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* URI-encoded absolute path to the root directory of this index. All
* documents in this index must appear in a subdirectory of this root
* directory.
* </pre>
*
* <code>string project_root = 3;</code>
* @param value The projectRoot to set.
* @return This builder for chaining.
*/
public Builder setProjectRoot(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
projectRoot_ = value;
onChanged();
return this;
}
/**
* <pre>
* URI-encoded absolute path to the root directory of this index. All
* documents in this index must appear in a subdirectory of this root
* directory.
* </pre>
*
* <code>string project_root = 3;</code>
* @return This builder for chaining.
*/
public Builder clearProjectRoot() {
projectRoot_ = getDefaultInstance().getProjectRoot();
onChanged();
return this;
}
/**
* <pre>
* URI-encoded absolute path to the root directory of this index. All
* documents in this index must appear in a subdirectory of this root
* directory.
* </pre>
*
* <code>string project_root = 3;</code>
* @param value The bytes for projectRoot to set.
* @return This builder for chaining.
*/
public Builder setProjectRootBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
projectRoot_ = value;
onChanged();
return this;
}
private int textDocumentEncoding_ = 0;
/**
* <pre>
* Text encoding of the source files on disk that are referenced from
* `Document.relative_path`. This value is unrelated to the `Document.text`
* field, which is a Protobuf string and hence must be UTF-8 encoded.
* </pre>
*
* <code>.scip.TextEncoding text_document_encoding = 4;</code>
* @return The enum numeric value on the wire for textDocumentEncoding.
*/
@java.lang.Override public int getTextDocumentEncodingValue() {
return textDocumentEncoding_;
}
/**
* <pre>
* Text encoding of the source files on disk that are referenced from
* `Document.relative_path`. This value is unrelated to the `Document.text`
* field, which is a Protobuf string and hence must be UTF-8 encoded.
* </pre>
*
* <code>.scip.TextEncoding text_document_encoding = 4;</code>
* @param value The enum numeric value on the wire for textDocumentEncoding to set.
* @return This builder for chaining.
*/
public Builder setTextDocumentEncodingValue(int value) {
textDocumentEncoding_ = value;
onChanged();
return this;
}
/**
* <pre>
* Text encoding of the source files on disk that are referenced from
* `Document.relative_path`. This value is unrelated to the `Document.text`
* field, which is a Protobuf string and hence must be UTF-8 encoded.
* </pre>
*
* <code>.scip.TextEncoding text_document_encoding = 4;</code>
* @return The textDocumentEncoding.
*/
@java.lang.Override
public scip.Scip.TextEncoding getTextDocumentEncoding() {
@SuppressWarnings("deprecation")
scip.Scip.TextEncoding result = scip.Scip.TextEncoding.valueOf(textDocumentEncoding_);
return result == null ? scip.Scip.TextEncoding.UNRECOGNIZED : result;
}
/**
* <pre>
* Text encoding of the source files on disk that are referenced from
* `Document.relative_path`. This value is unrelated to the `Document.text`
* field, which is a Protobuf string and hence must be UTF-8 encoded.
* </pre>
*
* <code>.scip.TextEncoding text_document_encoding = 4;</code>
* @param value The textDocumentEncoding to set.
* @return This builder for chaining.
*/
public Builder setTextDocumentEncoding(scip.Scip.TextEncoding value) {
if (value == null) {
throw new NullPointerException();
}
textDocumentEncoding_ = value.getNumber();
onChanged();
return this;
}
/**
* <pre>
* Text encoding of the source files on disk that are referenced from
* `Document.relative_path`. This value is unrelated to the `Document.text`
* field, which is a Protobuf string and hence must be UTF-8 encoded.
* </pre>
*
* <code>.scip.TextEncoding text_document_encoding = 4;</code>
* @return This builder for chaining.
*/
public Builder clearTextDocumentEncoding() {
textDocumentEncoding_ = 0;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.Metadata)
}
// @@protoc_insertion_point(class_scope:scip.Metadata)
private static final scip.Scip.Metadata DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.Metadata();
}
public static scip.Scip.Metadata getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<Metadata>
PARSER = new com.google.protobuf.AbstractParser<Metadata>() {
@java.lang.Override
public Metadata parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Metadata(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<Metadata> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<Metadata> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.Metadata getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface ToolInfoOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.ToolInfo)
com.google.protobuf.MessageOrBuilder {
/**
* <pre>
* Name of the indexer that produced this index.
* </pre>
*
* <code>string name = 1;</code>
* @return The name.
*/
java.lang.String getName();
/**
* <pre>
* Name of the indexer that produced this index.
* </pre>
*
* <code>string name = 1;</code>
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
/**
* <pre>
* Version of the indexer that produced this index.
* </pre>
*
* <code>string version = 2;</code>
* @return The version.
*/
java.lang.String getVersion();
/**
* <pre>
* Version of the indexer that produced this index.
* </pre>
*
* <code>string version = 2;</code>
* @return The bytes for version.
*/
com.google.protobuf.ByteString
getVersionBytes();
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @return A list containing the arguments.
*/
java.util.List<java.lang.String>
getArgumentsList();
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @return The count of arguments.
*/
int getArgumentsCount();
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @param index The index of the element to return.
* @return The arguments at the given index.
*/
java.lang.String getArguments(int index);
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @param index The index of the value to return.
* @return The bytes of the arguments at the given index.
*/
com.google.protobuf.ByteString
getArgumentsBytes(int index);
}
/**
* Protobuf type {@code scip.ToolInfo}
*/
public static final class ToolInfo extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.ToolInfo)
ToolInfoOrBuilder {
private static final long serialVersionUID = 0L;
// Use ToolInfo.newBuilder() to construct.
private ToolInfo(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private ToolInfo() {
name_ = "";
version_ = "";
arguments_ = com.google.protobuf.LazyStringArrayList.EMPTY;
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new ToolInfo();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private ToolInfo(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 10: {
java.lang.String s = input.readStringRequireUtf8();
name_ = s;
break;
}
case 18: {
java.lang.String s = input.readStringRequireUtf8();
version_ = s;
break;
}
case 26: {
java.lang.String s = input.readStringRequireUtf8();
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
arguments_ = new com.google.protobuf.LazyStringArrayList();
mutable_bitField0_ |= 0x00000001;
}
arguments_.add(s);
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000001) != 0)) {
arguments_ = arguments_.getUnmodifiableView();
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_ToolInfo_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_ToolInfo_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.ToolInfo.class, scip.Scip.ToolInfo.Builder.class);
}
public static final int NAME_FIELD_NUMBER = 1;
private volatile java.lang.Object name_;
/**
* <pre>
* Name of the indexer that produced this index.
* </pre>
*
* <code>string name = 1;</code>
* @return The name.
*/
@java.lang.Override
public java.lang.String getName() {
java.lang.Object ref = name_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
name_ = s;
return s;
}
}
/**
* <pre>
* Name of the indexer that produced this index.
* </pre>
*
* <code>string name = 1;</code>
* @return The bytes for name.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getNameBytes() {
java.lang.Object ref = name_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
name_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int VERSION_FIELD_NUMBER = 2;
private volatile java.lang.Object version_;
/**
* <pre>
* Version of the indexer that produced this index.
* </pre>
*
* <code>string version = 2;</code>
* @return The version.
*/
@java.lang.Override
public java.lang.String getVersion() {
java.lang.Object ref = version_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
version_ = s;
return s;
}
}
/**
* <pre>
* Version of the indexer that produced this index.
* </pre>
*
* <code>string version = 2;</code>
* @return The bytes for version.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getVersionBytes() {
java.lang.Object ref = version_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
version_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int ARGUMENTS_FIELD_NUMBER = 3;
private com.google.protobuf.LazyStringList arguments_;
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @return A list containing the arguments.
*/
public com.google.protobuf.ProtocolStringList
getArgumentsList() {
return arguments_;
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @return The count of arguments.
*/
public int getArgumentsCount() {
return arguments_.size();
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @param index The index of the element to return.
* @return The arguments at the given index.
*/
public java.lang.String getArguments(int index) {
return arguments_.get(index);
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @param index The index of the value to return.
* @return The bytes of the arguments at the given index.
*/
public com.google.protobuf.ByteString
getArgumentsBytes(int index) {
return arguments_.getByteString(index);
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (!getNameBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
}
if (!getVersionBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 2, version_);
}
for (int i = 0; i < arguments_.size(); i++) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 3, arguments_.getRaw(i));
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (!getNameBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
}
if (!getVersionBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, version_);
}
{
int dataSize = 0;
for (int i = 0; i < arguments_.size(); i++) {
dataSize += computeStringSizeNoTag(arguments_.getRaw(i));
}
size += dataSize;
size += 1 * getArgumentsList().size();
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.ToolInfo)) {
return super.equals(obj);
}
scip.Scip.ToolInfo other = (scip.Scip.ToolInfo) obj;
if (!getName()
.equals(other.getName())) return false;
if (!getVersion()
.equals(other.getVersion())) return false;
if (!getArgumentsList()
.equals(other.getArgumentsList())) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + NAME_FIELD_NUMBER;
hash = (53 * hash) + getName().hashCode();
hash = (37 * hash) + VERSION_FIELD_NUMBER;
hash = (53 * hash) + getVersion().hashCode();
if (getArgumentsCount() > 0) {
hash = (37 * hash) + ARGUMENTS_FIELD_NUMBER;
hash = (53 * hash) + getArgumentsList().hashCode();
}
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.ToolInfo parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.ToolInfo parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.ToolInfo parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.ToolInfo parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.ToolInfo parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.ToolInfo parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.ToolInfo parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.ToolInfo parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.ToolInfo parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.ToolInfo parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.ToolInfo parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.ToolInfo parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.ToolInfo prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* Protobuf type {@code scip.ToolInfo}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.ToolInfo)
scip.Scip.ToolInfoOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_ToolInfo_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_ToolInfo_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.ToolInfo.class, scip.Scip.ToolInfo.Builder.class);
}
// Construct using scip.Scip.ToolInfo.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
@java.lang.Override
public Builder clear() {
super.clear();
name_ = "";
version_ = "";
arguments_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000001);
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_ToolInfo_descriptor;
}
@java.lang.Override
public scip.Scip.ToolInfo getDefaultInstanceForType() {
return scip.Scip.ToolInfo.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.ToolInfo build() {
scip.Scip.ToolInfo result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.ToolInfo buildPartial() {
scip.Scip.ToolInfo result = new scip.Scip.ToolInfo(this);
int from_bitField0_ = bitField0_;
result.name_ = name_;
result.version_ = version_;
if (((bitField0_ & 0x00000001) != 0)) {
arguments_ = arguments_.getUnmodifiableView();
bitField0_ = (bitField0_ & ~0x00000001);
}
result.arguments_ = arguments_;
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.ToolInfo) {
return mergeFrom((scip.Scip.ToolInfo)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.ToolInfo other) {
if (other == scip.Scip.ToolInfo.getDefaultInstance()) return this;
if (!other.getName().isEmpty()) {
name_ = other.name_;
onChanged();
}
if (!other.getVersion().isEmpty()) {
version_ = other.version_;
onChanged();
}
if (!other.arguments_.isEmpty()) {
if (arguments_.isEmpty()) {
arguments_ = other.arguments_;
bitField0_ = (bitField0_ & ~0x00000001);
} else {
ensureArgumentsIsMutable();
arguments_.addAll(other.arguments_);
}
onChanged();
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.ToolInfo parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.ToolInfo) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private java.lang.Object name_ = "";
/**
* <pre>
* Name of the indexer that produced this index.
* </pre>
*
* <code>string name = 1;</code>
* @return The name.
*/
public java.lang.String getName() {
java.lang.Object ref = name_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
name_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* Name of the indexer that produced this index.
* </pre>
*
* <code>string name = 1;</code>
* @return The bytes for name.
*/
public com.google.protobuf.ByteString
getNameBytes() {
java.lang.Object ref = name_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
name_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* Name of the indexer that produced this index.
* </pre>
*
* <code>string name = 1;</code>
* @param value The name to set.
* @return This builder for chaining.
*/
public Builder setName(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
name_ = value;
onChanged();
return this;
}
/**
* <pre>
* Name of the indexer that produced this index.
* </pre>
*
* <code>string name = 1;</code>
* @return This builder for chaining.
*/
public Builder clearName() {
name_ = getDefaultInstance().getName();
onChanged();
return this;
}
/**
* <pre>
* Name of the indexer that produced this index.
* </pre>
*
* <code>string name = 1;</code>
* @param value The bytes for name to set.
* @return This builder for chaining.
*/
public Builder setNameBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
name_ = value;
onChanged();
return this;
}
private java.lang.Object version_ = "";
/**
* <pre>
* Version of the indexer that produced this index.
* </pre>
*
* <code>string version = 2;</code>
* @return The version.
*/
public java.lang.String getVersion() {
java.lang.Object ref = version_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
version_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* Version of the indexer that produced this index.
* </pre>
*
* <code>string version = 2;</code>
* @return The bytes for version.
*/
public com.google.protobuf.ByteString
getVersionBytes() {
java.lang.Object ref = version_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
version_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* Version of the indexer that produced this index.
* </pre>
*
* <code>string version = 2;</code>
* @param value The version to set.
* @return This builder for chaining.
*/
public Builder setVersion(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
version_ = value;
onChanged();
return this;
}
/**
* <pre>
* Version of the indexer that produced this index.
* </pre>
*
* <code>string version = 2;</code>
* @return This builder for chaining.
*/
public Builder clearVersion() {
version_ = getDefaultInstance().getVersion();
onChanged();
return this;
}
/**
* <pre>
* Version of the indexer that produced this index.
* </pre>
*
* <code>string version = 2;</code>
* @param value The bytes for version to set.
* @return This builder for chaining.
*/
public Builder setVersionBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
version_ = value;
onChanged();
return this;
}
private com.google.protobuf.LazyStringList arguments_ = com.google.protobuf.LazyStringArrayList.EMPTY;
private void ensureArgumentsIsMutable() {
if (!((bitField0_ & 0x00000001) != 0)) {
arguments_ = new com.google.protobuf.LazyStringArrayList(arguments_);
bitField0_ |= 0x00000001;
}
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @return A list containing the arguments.
*/
public com.google.protobuf.ProtocolStringList
getArgumentsList() {
return arguments_.getUnmodifiableView();
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @return The count of arguments.
*/
public int getArgumentsCount() {
return arguments_.size();
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @param index The index of the element to return.
* @return The arguments at the given index.
*/
public java.lang.String getArguments(int index) {
return arguments_.get(index);
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @param index The index of the value to return.
* @return The bytes of the arguments at the given index.
*/
public com.google.protobuf.ByteString
getArgumentsBytes(int index) {
return arguments_.getByteString(index);
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @param index The index to set the value at.
* @param value The arguments to set.
* @return This builder for chaining.
*/
public Builder setArguments(
int index, java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureArgumentsIsMutable();
arguments_.set(index, value);
onChanged();
return this;
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @param value The arguments to add.
* @return This builder for chaining.
*/
public Builder addArguments(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureArgumentsIsMutable();
arguments_.add(value);
onChanged();
return this;
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @param values The arguments to add.
* @return This builder for chaining.
*/
public Builder addAllArguments(
java.lang.Iterable<java.lang.String> values) {
ensureArgumentsIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, arguments_);
onChanged();
return this;
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @return This builder for chaining.
*/
public Builder clearArguments() {
arguments_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
return this;
}
/**
* <pre>
* Command-line arguments that were used to invoke this indexer.
* </pre>
*
* <code>repeated string arguments = 3;</code>
* @param value The bytes of the arguments to add.
* @return This builder for chaining.
*/
public Builder addArgumentsBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
ensureArgumentsIsMutable();
arguments_.add(value);
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.ToolInfo)
}
// @@protoc_insertion_point(class_scope:scip.ToolInfo)
private static final scip.Scip.ToolInfo DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.ToolInfo();
}
public static scip.Scip.ToolInfo getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<ToolInfo>
PARSER = new com.google.protobuf.AbstractParser<ToolInfo>() {
@java.lang.Override
public ToolInfo parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new ToolInfo(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<ToolInfo> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<ToolInfo> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.ToolInfo getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface DocumentOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.Document)
com.google.protobuf.MessageOrBuilder {
/**
* <pre>
* The string ID for the programming language this file is written in.
* The `Language` enum contains the names of most common programming languages.
* This field is typed as a string to permit any programming language, including
* ones that are not specified by the `Language` enum.
* </pre>
*
* <code>string language = 4;</code>
* @return The language.
*/
java.lang.String getLanguage();
/**
* <pre>
* The string ID for the programming language this file is written in.
* The `Language` enum contains the names of most common programming languages.
* This field is typed as a string to permit any programming language, including
* ones that are not specified by the `Language` enum.
* </pre>
*
* <code>string language = 4;</code>
* @return The bytes for language.
*/
com.google.protobuf.ByteString
getLanguageBytes();
/**
* <pre>
* (Required) Unique path to the text document.
* 1. The path must be relative to the directory supplied in the associated
* `Metadata.project_root`.
* 2. The path must not begin with a leading '/'.
* 3. The path must point to a regular file, not a symbolic link.
* 4. The path must use '/' as the separator, including on Windows.
* 5. The path must be canonical; it cannot include empty components ('//'),
* or '.' or '..'.
* </pre>
*
* <code>string relative_path = 1;</code>
* @return The relativePath.
*/
java.lang.String getRelativePath();
/**
* <pre>
* (Required) Unique path to the text document.
* 1. The path must be relative to the directory supplied in the associated
* `Metadata.project_root`.
* 2. The path must not begin with a leading '/'.
* 3. The path must point to a regular file, not a symbolic link.
* 4. The path must use '/' as the separator, including on Windows.
* 5. The path must be canonical; it cannot include empty components ('//'),
* or '.' or '..'.
* </pre>
*
* <code>string relative_path = 1;</code>
* @return The bytes for relativePath.
*/
com.google.protobuf.ByteString
getRelativePathBytes();
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
java.util.List<scip.Scip.Occurrence>
getOccurrencesList();
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
scip.Scip.Occurrence getOccurrences(int index);
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
int getOccurrencesCount();
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
java.util.List<? extends scip.Scip.OccurrenceOrBuilder>
getOccurrencesOrBuilderList();
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
scip.Scip.OccurrenceOrBuilder getOccurrencesOrBuilder(
int index);
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
java.util.List<scip.Scip.SymbolInformation>
getSymbolsList();
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
scip.Scip.SymbolInformation getSymbols(int index);
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
int getSymbolsCount();
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
java.util.List<? extends scip.Scip.SymbolInformationOrBuilder>
getSymbolsOrBuilderList();
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
scip.Scip.SymbolInformationOrBuilder getSymbolsOrBuilder(
int index);
/**
* <pre>
* (optional) Text contents of the this document. Indexers are not expected to
* include the text by default. It's preferrable that clients read the text
* contents from the file system by resolving the absolute path from joining
* `Index.metadata.project_root` and `Document.relative_path`. This field was
* introduced to support `SymbolInformation.signature_documentation`, but it
* can be used for other purposes as well, for example testing or when working
* with virtual/in-memory documents.
* </pre>
*
* <code>string text = 5;</code>
* @return The text.
*/
java.lang.String getText();
/**
* <pre>
* (optional) Text contents of the this document. Indexers are not expected to
* include the text by default. It's preferrable that clients read the text
* contents from the file system by resolving the absolute path from joining
* `Index.metadata.project_root` and `Document.relative_path`. This field was
* introduced to support `SymbolInformation.signature_documentation`, but it
* can be used for other purposes as well, for example testing or when working
* with virtual/in-memory documents.
* </pre>
*
* <code>string text = 5;</code>
* @return The bytes for text.
*/
com.google.protobuf.ByteString
getTextBytes();
/**
* <pre>
* Specifies the encoding used for source ranges in this Document.
* Usually, this will match the type used to index the string type
* in the indexer's implementation language in O(1) time.
* - For an indexer implemented in JVM/.NET language or JavaScript/TypeScript,
* use UTF16CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Python,
* use UTF32CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Go, Rust or C++,
* use UTF8ByteOffsetFromLineStart.
* </pre>
*
* <code>.scip.PositionEncoding position_encoding = 6;</code>
* @return The enum numeric value on the wire for positionEncoding.
*/
int getPositionEncodingValue();
/**
* <pre>
* Specifies the encoding used for source ranges in this Document.
* Usually, this will match the type used to index the string type
* in the indexer's implementation language in O(1) time.
* - For an indexer implemented in JVM/.NET language or JavaScript/TypeScript,
* use UTF16CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Python,
* use UTF32CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Go, Rust or C++,
* use UTF8ByteOffsetFromLineStart.
* </pre>
*
* <code>.scip.PositionEncoding position_encoding = 6;</code>
* @return The positionEncoding.
*/
scip.Scip.PositionEncoding getPositionEncoding();
}
/**
* <pre>
* Document defines the metadata about a source file on disk.
* </pre>
*
* Protobuf type {@code scip.Document}
*/
public static final class Document extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.Document)
DocumentOrBuilder {
private static final long serialVersionUID = 0L;
// Use Document.newBuilder() to construct.
private Document(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private Document() {
language_ = "";
relativePath_ = "";
occurrences_ = java.util.Collections.emptyList();
symbols_ = java.util.Collections.emptyList();
text_ = "";
positionEncoding_ = 0;
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Document();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Document(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 10: {
java.lang.String s = input.readStringRequireUtf8();
relativePath_ = s;
break;
}
case 18: {
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
occurrences_ = new java.util.ArrayList<scip.Scip.Occurrence>();
mutable_bitField0_ |= 0x00000001;
}
occurrences_.add(
input.readMessage(scip.Scip.Occurrence.parser(), extensionRegistry));
break;
}
case 26: {
if (!((mutable_bitField0_ & 0x00000002) != 0)) {
symbols_ = new java.util.ArrayList<scip.Scip.SymbolInformation>();
mutable_bitField0_ |= 0x00000002;
}
symbols_.add(
input.readMessage(scip.Scip.SymbolInformation.parser(), extensionRegistry));
break;
}
case 34: {
java.lang.String s = input.readStringRequireUtf8();
language_ = s;
break;
}
case 42: {
java.lang.String s = input.readStringRequireUtf8();
text_ = s;
break;
}
case 48: {
int rawValue = input.readEnum();
positionEncoding_ = rawValue;
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000001) != 0)) {
occurrences_ = java.util.Collections.unmodifiableList(occurrences_);
}
if (((mutable_bitField0_ & 0x00000002) != 0)) {
symbols_ = java.util.Collections.unmodifiableList(symbols_);
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Document_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Document_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Document.class, scip.Scip.Document.Builder.class);
}
public static final int LANGUAGE_FIELD_NUMBER = 4;
private volatile java.lang.Object language_;
/**
* <pre>
* The string ID for the programming language this file is written in.
* The `Language` enum contains the names of most common programming languages.
* This field is typed as a string to permit any programming language, including
* ones that are not specified by the `Language` enum.
* </pre>
*
* <code>string language = 4;</code>
* @return The language.
*/
@java.lang.Override
public java.lang.String getLanguage() {
java.lang.Object ref = language_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
language_ = s;
return s;
}
}
/**
* <pre>
* The string ID for the programming language this file is written in.
* The `Language` enum contains the names of most common programming languages.
* This field is typed as a string to permit any programming language, including
* ones that are not specified by the `Language` enum.
* </pre>
*
* <code>string language = 4;</code>
* @return The bytes for language.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getLanguageBytes() {
java.lang.Object ref = language_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
language_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int RELATIVE_PATH_FIELD_NUMBER = 1;
private volatile java.lang.Object relativePath_;
/**
* <pre>
* (Required) Unique path to the text document.
* 1. The path must be relative to the directory supplied in the associated
* `Metadata.project_root`.
* 2. The path must not begin with a leading '/'.
* 3. The path must point to a regular file, not a symbolic link.
* 4. The path must use '/' as the separator, including on Windows.
* 5. The path must be canonical; it cannot include empty components ('//'),
* or '.' or '..'.
* </pre>
*
* <code>string relative_path = 1;</code>
* @return The relativePath.
*/
@java.lang.Override
public java.lang.String getRelativePath() {
java.lang.Object ref = relativePath_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
relativePath_ = s;
return s;
}
}
/**
* <pre>
* (Required) Unique path to the text document.
* 1. The path must be relative to the directory supplied in the associated
* `Metadata.project_root`.
* 2. The path must not begin with a leading '/'.
* 3. The path must point to a regular file, not a symbolic link.
* 4. The path must use '/' as the separator, including on Windows.
* 5. The path must be canonical; it cannot include empty components ('//'),
* or '.' or '..'.
* </pre>
*
* <code>string relative_path = 1;</code>
* @return The bytes for relativePath.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getRelativePathBytes() {
java.lang.Object ref = relativePath_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
relativePath_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int OCCURRENCES_FIELD_NUMBER = 2;
private java.util.List<scip.Scip.Occurrence> occurrences_;
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
@java.lang.Override
public java.util.List<scip.Scip.Occurrence> getOccurrencesList() {
return occurrences_;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
@java.lang.Override
public java.util.List<? extends scip.Scip.OccurrenceOrBuilder>
getOccurrencesOrBuilderList() {
return occurrences_;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
@java.lang.Override
public int getOccurrencesCount() {
return occurrences_.size();
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
@java.lang.Override
public scip.Scip.Occurrence getOccurrences(int index) {
return occurrences_.get(index);
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
@java.lang.Override
public scip.Scip.OccurrenceOrBuilder getOccurrencesOrBuilder(
int index) {
return occurrences_.get(index);
}
public static final int SYMBOLS_FIELD_NUMBER = 3;
private java.util.List<scip.Scip.SymbolInformation> symbols_;
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
@java.lang.Override
public java.util.List<scip.Scip.SymbolInformation> getSymbolsList() {
return symbols_;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
@java.lang.Override
public java.util.List<? extends scip.Scip.SymbolInformationOrBuilder>
getSymbolsOrBuilderList() {
return symbols_;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
@java.lang.Override
public int getSymbolsCount() {
return symbols_.size();
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
@java.lang.Override
public scip.Scip.SymbolInformation getSymbols(int index) {
return symbols_.get(index);
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
@java.lang.Override
public scip.Scip.SymbolInformationOrBuilder getSymbolsOrBuilder(
int index) {
return symbols_.get(index);
}
public static final int TEXT_FIELD_NUMBER = 5;
private volatile java.lang.Object text_;
/**
* <pre>
* (optional) Text contents of the this document. Indexers are not expected to
* include the text by default. It's preferrable that clients read the text
* contents from the file system by resolving the absolute path from joining
* `Index.metadata.project_root` and `Document.relative_path`. This field was
* introduced to support `SymbolInformation.signature_documentation`, but it
* can be used for other purposes as well, for example testing or when working
* with virtual/in-memory documents.
* </pre>
*
* <code>string text = 5;</code>
* @return The text.
*/
@java.lang.Override
public java.lang.String getText() {
java.lang.Object ref = text_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
text_ = s;
return s;
}
}
/**
* <pre>
* (optional) Text contents of the this document. Indexers are not expected to
* include the text by default. It's preferrable that clients read the text
* contents from the file system by resolving the absolute path from joining
* `Index.metadata.project_root` and `Document.relative_path`. This field was
* introduced to support `SymbolInformation.signature_documentation`, but it
* can be used for other purposes as well, for example testing or when working
* with virtual/in-memory documents.
* </pre>
*
* <code>string text = 5;</code>
* @return The bytes for text.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getTextBytes() {
java.lang.Object ref = text_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
text_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int POSITION_ENCODING_FIELD_NUMBER = 6;
private int positionEncoding_;
/**
* <pre>
* Specifies the encoding used for source ranges in this Document.
* Usually, this will match the type used to index the string type
* in the indexer's implementation language in O(1) time.
* - For an indexer implemented in JVM/.NET language or JavaScript/TypeScript,
* use UTF16CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Python,
* use UTF32CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Go, Rust or C++,
* use UTF8ByteOffsetFromLineStart.
* </pre>
*
* <code>.scip.PositionEncoding position_encoding = 6;</code>
* @return The enum numeric value on the wire for positionEncoding.
*/
@java.lang.Override public int getPositionEncodingValue() {
return positionEncoding_;
}
/**
* <pre>
* Specifies the encoding used for source ranges in this Document.
* Usually, this will match the type used to index the string type
* in the indexer's implementation language in O(1) time.
* - For an indexer implemented in JVM/.NET language or JavaScript/TypeScript,
* use UTF16CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Python,
* use UTF32CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Go, Rust or C++,
* use UTF8ByteOffsetFromLineStart.
* </pre>
*
* <code>.scip.PositionEncoding position_encoding = 6;</code>
* @return The positionEncoding.
*/
@java.lang.Override public scip.Scip.PositionEncoding getPositionEncoding() {
@SuppressWarnings("deprecation")
scip.Scip.PositionEncoding result = scip.Scip.PositionEncoding.valueOf(positionEncoding_);
return result == null ? scip.Scip.PositionEncoding.UNRECOGNIZED : result;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (!getRelativePathBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 1, relativePath_);
}
for (int i = 0; i < occurrences_.size(); i++) {
output.writeMessage(2, occurrences_.get(i));
}
for (int i = 0; i < symbols_.size(); i++) {
output.writeMessage(3, symbols_.get(i));
}
if (!getLanguageBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 4, language_);
}
if (!getTextBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 5, text_);
}
if (positionEncoding_ != scip.Scip.PositionEncoding.UnspecifiedPositionEncoding.getNumber()) {
output.writeEnum(6, positionEncoding_);
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (!getRelativePathBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, relativePath_);
}
for (int i = 0; i < occurrences_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(2, occurrences_.get(i));
}
for (int i = 0; i < symbols_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(3, symbols_.get(i));
}
if (!getLanguageBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, language_);
}
if (!getTextBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, text_);
}
if (positionEncoding_ != scip.Scip.PositionEncoding.UnspecifiedPositionEncoding.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(6, positionEncoding_);
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.Document)) {
return super.equals(obj);
}
scip.Scip.Document other = (scip.Scip.Document) obj;
if (!getLanguage()
.equals(other.getLanguage())) return false;
if (!getRelativePath()
.equals(other.getRelativePath())) return false;
if (!getOccurrencesList()
.equals(other.getOccurrencesList())) return false;
if (!getSymbolsList()
.equals(other.getSymbolsList())) return false;
if (!getText()
.equals(other.getText())) return false;
if (positionEncoding_ != other.positionEncoding_) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + LANGUAGE_FIELD_NUMBER;
hash = (53 * hash) + getLanguage().hashCode();
hash = (37 * hash) + RELATIVE_PATH_FIELD_NUMBER;
hash = (53 * hash) + getRelativePath().hashCode();
if (getOccurrencesCount() > 0) {
hash = (37 * hash) + OCCURRENCES_FIELD_NUMBER;
hash = (53 * hash) + getOccurrencesList().hashCode();
}
if (getSymbolsCount() > 0) {
hash = (37 * hash) + SYMBOLS_FIELD_NUMBER;
hash = (53 * hash) + getSymbolsList().hashCode();
}
hash = (37 * hash) + TEXT_FIELD_NUMBER;
hash = (53 * hash) + getText().hashCode();
hash = (37 * hash) + POSITION_ENCODING_FIELD_NUMBER;
hash = (53 * hash) + positionEncoding_;
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.Document parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Document parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Document parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Document parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Document parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Document parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Document parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Document parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Document parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.Document parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Document parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Document parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.Document prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* <pre>
* Document defines the metadata about a source file on disk.
* </pre>
*
* Protobuf type {@code scip.Document}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.Document)
scip.Scip.DocumentOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Document_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Document_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Document.class, scip.Scip.Document.Builder.class);
}
// Construct using scip.Scip.Document.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
getOccurrencesFieldBuilder();
getSymbolsFieldBuilder();
}
}
@java.lang.Override
public Builder clear() {
super.clear();
language_ = "";
relativePath_ = "";
if (occurrencesBuilder_ == null) {
occurrences_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
} else {
occurrencesBuilder_.clear();
}
if (symbolsBuilder_ == null) {
symbols_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
} else {
symbolsBuilder_.clear();
}
text_ = "";
positionEncoding_ = 0;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_Document_descriptor;
}
@java.lang.Override
public scip.Scip.Document getDefaultInstanceForType() {
return scip.Scip.Document.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.Document build() {
scip.Scip.Document result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.Document buildPartial() {
scip.Scip.Document result = new scip.Scip.Document(this);
int from_bitField0_ = bitField0_;
result.language_ = language_;
result.relativePath_ = relativePath_;
if (occurrencesBuilder_ == null) {
if (((bitField0_ & 0x00000001) != 0)) {
occurrences_ = java.util.Collections.unmodifiableList(occurrences_);
bitField0_ = (bitField0_ & ~0x00000001);
}
result.occurrences_ = occurrences_;
} else {
result.occurrences_ = occurrencesBuilder_.build();
}
if (symbolsBuilder_ == null) {
if (((bitField0_ & 0x00000002) != 0)) {
symbols_ = java.util.Collections.unmodifiableList(symbols_);
bitField0_ = (bitField0_ & ~0x00000002);
}
result.symbols_ = symbols_;
} else {
result.symbols_ = symbolsBuilder_.build();
}
result.text_ = text_;
result.positionEncoding_ = positionEncoding_;
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.Document) {
return mergeFrom((scip.Scip.Document)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.Document other) {
if (other == scip.Scip.Document.getDefaultInstance()) return this;
if (!other.getLanguage().isEmpty()) {
language_ = other.language_;
onChanged();
}
if (!other.getRelativePath().isEmpty()) {
relativePath_ = other.relativePath_;
onChanged();
}
if (occurrencesBuilder_ == null) {
if (!other.occurrences_.isEmpty()) {
if (occurrences_.isEmpty()) {
occurrences_ = other.occurrences_;
bitField0_ = (bitField0_ & ~0x00000001);
} else {
ensureOccurrencesIsMutable();
occurrences_.addAll(other.occurrences_);
}
onChanged();
}
} else {
if (!other.occurrences_.isEmpty()) {
if (occurrencesBuilder_.isEmpty()) {
occurrencesBuilder_.dispose();
occurrencesBuilder_ = null;
occurrences_ = other.occurrences_;
bitField0_ = (bitField0_ & ~0x00000001);
occurrencesBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getOccurrencesFieldBuilder() : null;
} else {
occurrencesBuilder_.addAllMessages(other.occurrences_);
}
}
}
if (symbolsBuilder_ == null) {
if (!other.symbols_.isEmpty()) {
if (symbols_.isEmpty()) {
symbols_ = other.symbols_;
bitField0_ = (bitField0_ & ~0x00000002);
} else {
ensureSymbolsIsMutable();
symbols_.addAll(other.symbols_);
}
onChanged();
}
} else {
if (!other.symbols_.isEmpty()) {
if (symbolsBuilder_.isEmpty()) {
symbolsBuilder_.dispose();
symbolsBuilder_ = null;
symbols_ = other.symbols_;
bitField0_ = (bitField0_ & ~0x00000002);
symbolsBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getSymbolsFieldBuilder() : null;
} else {
symbolsBuilder_.addAllMessages(other.symbols_);
}
}
}
if (!other.getText().isEmpty()) {
text_ = other.text_;
onChanged();
}
if (other.positionEncoding_ != 0) {
setPositionEncodingValue(other.getPositionEncodingValue());
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.Document parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.Document) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private java.lang.Object language_ = "";
/**
* <pre>
* The string ID for the programming language this file is written in.
* The `Language` enum contains the names of most common programming languages.
* This field is typed as a string to permit any programming language, including
* ones that are not specified by the `Language` enum.
* </pre>
*
* <code>string language = 4;</code>
* @return The language.
*/
public java.lang.String getLanguage() {
java.lang.Object ref = language_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
language_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* The string ID for the programming language this file is written in.
* The `Language` enum contains the names of most common programming languages.
* This field is typed as a string to permit any programming language, including
* ones that are not specified by the `Language` enum.
* </pre>
*
* <code>string language = 4;</code>
* @return The bytes for language.
*/
public com.google.protobuf.ByteString
getLanguageBytes() {
java.lang.Object ref = language_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
language_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* The string ID for the programming language this file is written in.
* The `Language` enum contains the names of most common programming languages.
* This field is typed as a string to permit any programming language, including
* ones that are not specified by the `Language` enum.
* </pre>
*
* <code>string language = 4;</code>
* @param value The language to set.
* @return This builder for chaining.
*/
public Builder setLanguage(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
language_ = value;
onChanged();
return this;
}
/**
* <pre>
* The string ID for the programming language this file is written in.
* The `Language` enum contains the names of most common programming languages.
* This field is typed as a string to permit any programming language, including
* ones that are not specified by the `Language` enum.
* </pre>
*
* <code>string language = 4;</code>
* @return This builder for chaining.
*/
public Builder clearLanguage() {
language_ = getDefaultInstance().getLanguage();
onChanged();
return this;
}
/**
* <pre>
* The string ID for the programming language this file is written in.
* The `Language` enum contains the names of most common programming languages.
* This field is typed as a string to permit any programming language, including
* ones that are not specified by the `Language` enum.
* </pre>
*
* <code>string language = 4;</code>
* @param value The bytes for language to set.
* @return This builder for chaining.
*/
public Builder setLanguageBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
language_ = value;
onChanged();
return this;
}
private java.lang.Object relativePath_ = "";
/**
* <pre>
* (Required) Unique path to the text document.
* 1. The path must be relative to the directory supplied in the associated
* `Metadata.project_root`.
* 2. The path must not begin with a leading '/'.
* 3. The path must point to a regular file, not a symbolic link.
* 4. The path must use '/' as the separator, including on Windows.
* 5. The path must be canonical; it cannot include empty components ('//'),
* or '.' or '..'.
* </pre>
*
* <code>string relative_path = 1;</code>
* @return The relativePath.
*/
public java.lang.String getRelativePath() {
java.lang.Object ref = relativePath_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
relativePath_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* (Required) Unique path to the text document.
* 1. The path must be relative to the directory supplied in the associated
* `Metadata.project_root`.
* 2. The path must not begin with a leading '/'.
* 3. The path must point to a regular file, not a symbolic link.
* 4. The path must use '/' as the separator, including on Windows.
* 5. The path must be canonical; it cannot include empty components ('//'),
* or '.' or '..'.
* </pre>
*
* <code>string relative_path = 1;</code>
* @return The bytes for relativePath.
*/
public com.google.protobuf.ByteString
getRelativePathBytes() {
java.lang.Object ref = relativePath_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
relativePath_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* (Required) Unique path to the text document.
* 1. The path must be relative to the directory supplied in the associated
* `Metadata.project_root`.
* 2. The path must not begin with a leading '/'.
* 3. The path must point to a regular file, not a symbolic link.
* 4. The path must use '/' as the separator, including on Windows.
* 5. The path must be canonical; it cannot include empty components ('//'),
* or '.' or '..'.
* </pre>
*
* <code>string relative_path = 1;</code>
* @param value The relativePath to set.
* @return This builder for chaining.
*/
public Builder setRelativePath(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
relativePath_ = value;
onChanged();
return this;
}
/**
* <pre>
* (Required) Unique path to the text document.
* 1. The path must be relative to the directory supplied in the associated
* `Metadata.project_root`.
* 2. The path must not begin with a leading '/'.
* 3. The path must point to a regular file, not a symbolic link.
* 4. The path must use '/' as the separator, including on Windows.
* 5. The path must be canonical; it cannot include empty components ('//'),
* or '.' or '..'.
* </pre>
*
* <code>string relative_path = 1;</code>
* @return This builder for chaining.
*/
public Builder clearRelativePath() {
relativePath_ = getDefaultInstance().getRelativePath();
onChanged();
return this;
}
/**
* <pre>
* (Required) Unique path to the text document.
* 1. The path must be relative to the directory supplied in the associated
* `Metadata.project_root`.
* 2. The path must not begin with a leading '/'.
* 3. The path must point to a regular file, not a symbolic link.
* 4. The path must use '/' as the separator, including on Windows.
* 5. The path must be canonical; it cannot include empty components ('//'),
* or '.' or '..'.
* </pre>
*
* <code>string relative_path = 1;</code>
* @param value The bytes for relativePath to set.
* @return This builder for chaining.
*/
public Builder setRelativePathBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
relativePath_ = value;
onChanged();
return this;
}
private java.util.List<scip.Scip.Occurrence> occurrences_ =
java.util.Collections.emptyList();
private void ensureOccurrencesIsMutable() {
if (!((bitField0_ & 0x00000001) != 0)) {
occurrences_ = new java.util.ArrayList<scip.Scip.Occurrence>(occurrences_);
bitField0_ |= 0x00000001;
}
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Occurrence, scip.Scip.Occurrence.Builder, scip.Scip.OccurrenceOrBuilder> occurrencesBuilder_;
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public java.util.List<scip.Scip.Occurrence> getOccurrencesList() {
if (occurrencesBuilder_ == null) {
return java.util.Collections.unmodifiableList(occurrences_);
} else {
return occurrencesBuilder_.getMessageList();
}
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public int getOccurrencesCount() {
if (occurrencesBuilder_ == null) {
return occurrences_.size();
} else {
return occurrencesBuilder_.getCount();
}
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public scip.Scip.Occurrence getOccurrences(int index) {
if (occurrencesBuilder_ == null) {
return occurrences_.get(index);
} else {
return occurrencesBuilder_.getMessage(index);
}
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public Builder setOccurrences(
int index, scip.Scip.Occurrence value) {
if (occurrencesBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureOccurrencesIsMutable();
occurrences_.set(index, value);
onChanged();
} else {
occurrencesBuilder_.setMessage(index, value);
}
return this;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public Builder setOccurrences(
int index, scip.Scip.Occurrence.Builder builderForValue) {
if (occurrencesBuilder_ == null) {
ensureOccurrencesIsMutable();
occurrences_.set(index, builderForValue.build());
onChanged();
} else {
occurrencesBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public Builder addOccurrences(scip.Scip.Occurrence value) {
if (occurrencesBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureOccurrencesIsMutable();
occurrences_.add(value);
onChanged();
} else {
occurrencesBuilder_.addMessage(value);
}
return this;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public Builder addOccurrences(
int index, scip.Scip.Occurrence value) {
if (occurrencesBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureOccurrencesIsMutable();
occurrences_.add(index, value);
onChanged();
} else {
occurrencesBuilder_.addMessage(index, value);
}
return this;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public Builder addOccurrences(
scip.Scip.Occurrence.Builder builderForValue) {
if (occurrencesBuilder_ == null) {
ensureOccurrencesIsMutable();
occurrences_.add(builderForValue.build());
onChanged();
} else {
occurrencesBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public Builder addOccurrences(
int index, scip.Scip.Occurrence.Builder builderForValue) {
if (occurrencesBuilder_ == null) {
ensureOccurrencesIsMutable();
occurrences_.add(index, builderForValue.build());
onChanged();
} else {
occurrencesBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public Builder addAllOccurrences(
java.lang.Iterable<? extends scip.Scip.Occurrence> values) {
if (occurrencesBuilder_ == null) {
ensureOccurrencesIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, occurrences_);
onChanged();
} else {
occurrencesBuilder_.addAllMessages(values);
}
return this;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public Builder clearOccurrences() {
if (occurrencesBuilder_ == null) {
occurrences_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
} else {
occurrencesBuilder_.clear();
}
return this;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public Builder removeOccurrences(int index) {
if (occurrencesBuilder_ == null) {
ensureOccurrencesIsMutable();
occurrences_.remove(index);
onChanged();
} else {
occurrencesBuilder_.remove(index);
}
return this;
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public scip.Scip.Occurrence.Builder getOccurrencesBuilder(
int index) {
return getOccurrencesFieldBuilder().getBuilder(index);
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public scip.Scip.OccurrenceOrBuilder getOccurrencesOrBuilder(
int index) {
if (occurrencesBuilder_ == null) {
return occurrences_.get(index); } else {
return occurrencesBuilder_.getMessageOrBuilder(index);
}
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public java.util.List<? extends scip.Scip.OccurrenceOrBuilder>
getOccurrencesOrBuilderList() {
if (occurrencesBuilder_ != null) {
return occurrencesBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(occurrences_);
}
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public scip.Scip.Occurrence.Builder addOccurrencesBuilder() {
return getOccurrencesFieldBuilder().addBuilder(
scip.Scip.Occurrence.getDefaultInstance());
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public scip.Scip.Occurrence.Builder addOccurrencesBuilder(
int index) {
return getOccurrencesFieldBuilder().addBuilder(
index, scip.Scip.Occurrence.getDefaultInstance());
}
/**
* <pre>
* Occurrences that appear in this file.
* </pre>
*
* <code>repeated .scip.Occurrence occurrences = 2;</code>
*/
public java.util.List<scip.Scip.Occurrence.Builder>
getOccurrencesBuilderList() {
return getOccurrencesFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Occurrence, scip.Scip.Occurrence.Builder, scip.Scip.OccurrenceOrBuilder>
getOccurrencesFieldBuilder() {
if (occurrencesBuilder_ == null) {
occurrencesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Occurrence, scip.Scip.Occurrence.Builder, scip.Scip.OccurrenceOrBuilder>(
occurrences_,
((bitField0_ & 0x00000001) != 0),
getParentForChildren(),
isClean());
occurrences_ = null;
}
return occurrencesBuilder_;
}
private java.util.List<scip.Scip.SymbolInformation> symbols_ =
java.util.Collections.emptyList();
private void ensureSymbolsIsMutable() {
if (!((bitField0_ & 0x00000002) != 0)) {
symbols_ = new java.util.ArrayList<scip.Scip.SymbolInformation>(symbols_);
bitField0_ |= 0x00000002;
}
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.SymbolInformation, scip.Scip.SymbolInformation.Builder, scip.Scip.SymbolInformationOrBuilder> symbolsBuilder_;
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public java.util.List<scip.Scip.SymbolInformation> getSymbolsList() {
if (symbolsBuilder_ == null) {
return java.util.Collections.unmodifiableList(symbols_);
} else {
return symbolsBuilder_.getMessageList();
}
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public int getSymbolsCount() {
if (symbolsBuilder_ == null) {
return symbols_.size();
} else {
return symbolsBuilder_.getCount();
}
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public scip.Scip.SymbolInformation getSymbols(int index) {
if (symbolsBuilder_ == null) {
return symbols_.get(index);
} else {
return symbolsBuilder_.getMessage(index);
}
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public Builder setSymbols(
int index, scip.Scip.SymbolInformation value) {
if (symbolsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureSymbolsIsMutable();
symbols_.set(index, value);
onChanged();
} else {
symbolsBuilder_.setMessage(index, value);
}
return this;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public Builder setSymbols(
int index, scip.Scip.SymbolInformation.Builder builderForValue) {
if (symbolsBuilder_ == null) {
ensureSymbolsIsMutable();
symbols_.set(index, builderForValue.build());
onChanged();
} else {
symbolsBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public Builder addSymbols(scip.Scip.SymbolInformation value) {
if (symbolsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureSymbolsIsMutable();
symbols_.add(value);
onChanged();
} else {
symbolsBuilder_.addMessage(value);
}
return this;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public Builder addSymbols(
int index, scip.Scip.SymbolInformation value) {
if (symbolsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureSymbolsIsMutable();
symbols_.add(index, value);
onChanged();
} else {
symbolsBuilder_.addMessage(index, value);
}
return this;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public Builder addSymbols(
scip.Scip.SymbolInformation.Builder builderForValue) {
if (symbolsBuilder_ == null) {
ensureSymbolsIsMutable();
symbols_.add(builderForValue.build());
onChanged();
} else {
symbolsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public Builder addSymbols(
int index, scip.Scip.SymbolInformation.Builder builderForValue) {
if (symbolsBuilder_ == null) {
ensureSymbolsIsMutable();
symbols_.add(index, builderForValue.build());
onChanged();
} else {
symbolsBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public Builder addAllSymbols(
java.lang.Iterable<? extends scip.Scip.SymbolInformation> values) {
if (symbolsBuilder_ == null) {
ensureSymbolsIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, symbols_);
onChanged();
} else {
symbolsBuilder_.addAllMessages(values);
}
return this;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public Builder clearSymbols() {
if (symbolsBuilder_ == null) {
symbols_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
onChanged();
} else {
symbolsBuilder_.clear();
}
return this;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public Builder removeSymbols(int index) {
if (symbolsBuilder_ == null) {
ensureSymbolsIsMutable();
symbols_.remove(index);
onChanged();
} else {
symbolsBuilder_.remove(index);
}
return this;
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public scip.Scip.SymbolInformation.Builder getSymbolsBuilder(
int index) {
return getSymbolsFieldBuilder().getBuilder(index);
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public scip.Scip.SymbolInformationOrBuilder getSymbolsOrBuilder(
int index) {
if (symbolsBuilder_ == null) {
return symbols_.get(index); } else {
return symbolsBuilder_.getMessageOrBuilder(index);
}
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public java.util.List<? extends scip.Scip.SymbolInformationOrBuilder>
getSymbolsOrBuilderList() {
if (symbolsBuilder_ != null) {
return symbolsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(symbols_);
}
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public scip.Scip.SymbolInformation.Builder addSymbolsBuilder() {
return getSymbolsFieldBuilder().addBuilder(
scip.Scip.SymbolInformation.getDefaultInstance());
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public scip.Scip.SymbolInformation.Builder addSymbolsBuilder(
int index) {
return getSymbolsFieldBuilder().addBuilder(
index, scip.Scip.SymbolInformation.getDefaultInstance());
}
/**
* <pre>
* Symbols that are "defined" within this document.
* This should include symbols which technically do not have any definition,
* but have a reference and are defined by some other symbol (see
* Relationship.is_definition).
* </pre>
*
* <code>repeated .scip.SymbolInformation symbols = 3;</code>
*/
public java.util.List<scip.Scip.SymbolInformation.Builder>
getSymbolsBuilderList() {
return getSymbolsFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.SymbolInformation, scip.Scip.SymbolInformation.Builder, scip.Scip.SymbolInformationOrBuilder>
getSymbolsFieldBuilder() {
if (symbolsBuilder_ == null) {
symbolsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.SymbolInformation, scip.Scip.SymbolInformation.Builder, scip.Scip.SymbolInformationOrBuilder>(
symbols_,
((bitField0_ & 0x00000002) != 0),
getParentForChildren(),
isClean());
symbols_ = null;
}
return symbolsBuilder_;
}
private java.lang.Object text_ = "";
/**
* <pre>
* (optional) Text contents of the this document. Indexers are not expected to
* include the text by default. It's preferrable that clients read the text
* contents from the file system by resolving the absolute path from joining
* `Index.metadata.project_root` and `Document.relative_path`. This field was
* introduced to support `SymbolInformation.signature_documentation`, but it
* can be used for other purposes as well, for example testing or when working
* with virtual/in-memory documents.
* </pre>
*
* <code>string text = 5;</code>
* @return The text.
*/
public java.lang.String getText() {
java.lang.Object ref = text_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
text_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* (optional) Text contents of the this document. Indexers are not expected to
* include the text by default. It's preferrable that clients read the text
* contents from the file system by resolving the absolute path from joining
* `Index.metadata.project_root` and `Document.relative_path`. This field was
* introduced to support `SymbolInformation.signature_documentation`, but it
* can be used for other purposes as well, for example testing or when working
* with virtual/in-memory documents.
* </pre>
*
* <code>string text = 5;</code>
* @return The bytes for text.
*/
public com.google.protobuf.ByteString
getTextBytes() {
java.lang.Object ref = text_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
text_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* (optional) Text contents of the this document. Indexers are not expected to
* include the text by default. It's preferrable that clients read the text
* contents from the file system by resolving the absolute path from joining
* `Index.metadata.project_root` and `Document.relative_path`. This field was
* introduced to support `SymbolInformation.signature_documentation`, but it
* can be used for other purposes as well, for example testing or when working
* with virtual/in-memory documents.
* </pre>
*
* <code>string text = 5;</code>
* @param value The text to set.
* @return This builder for chaining.
*/
public Builder setText(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
text_ = value;
onChanged();
return this;
}
/**
* <pre>
* (optional) Text contents of the this document. Indexers are not expected to
* include the text by default. It's preferrable that clients read the text
* contents from the file system by resolving the absolute path from joining
* `Index.metadata.project_root` and `Document.relative_path`. This field was
* introduced to support `SymbolInformation.signature_documentation`, but it
* can be used for other purposes as well, for example testing or when working
* with virtual/in-memory documents.
* </pre>
*
* <code>string text = 5;</code>
* @return This builder for chaining.
*/
public Builder clearText() {
text_ = getDefaultInstance().getText();
onChanged();
return this;
}
/**
* <pre>
* (optional) Text contents of the this document. Indexers are not expected to
* include the text by default. It's preferrable that clients read the text
* contents from the file system by resolving the absolute path from joining
* `Index.metadata.project_root` and `Document.relative_path`. This field was
* introduced to support `SymbolInformation.signature_documentation`, but it
* can be used for other purposes as well, for example testing or when working
* with virtual/in-memory documents.
* </pre>
*
* <code>string text = 5;</code>
* @param value The bytes for text to set.
* @return This builder for chaining.
*/
public Builder setTextBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
text_ = value;
onChanged();
return this;
}
private int positionEncoding_ = 0;
/**
* <pre>
* Specifies the encoding used for source ranges in this Document.
* Usually, this will match the type used to index the string type
* in the indexer's implementation language in O(1) time.
* - For an indexer implemented in JVM/.NET language or JavaScript/TypeScript,
* use UTF16CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Python,
* use UTF32CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Go, Rust or C++,
* use UTF8ByteOffsetFromLineStart.
* </pre>
*
* <code>.scip.PositionEncoding position_encoding = 6;</code>
* @return The enum numeric value on the wire for positionEncoding.
*/
@java.lang.Override public int getPositionEncodingValue() {
return positionEncoding_;
}
/**
* <pre>
* Specifies the encoding used for source ranges in this Document.
* Usually, this will match the type used to index the string type
* in the indexer's implementation language in O(1) time.
* - For an indexer implemented in JVM/.NET language or JavaScript/TypeScript,
* use UTF16CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Python,
* use UTF32CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Go, Rust or C++,
* use UTF8ByteOffsetFromLineStart.
* </pre>
*
* <code>.scip.PositionEncoding position_encoding = 6;</code>
* @param value The enum numeric value on the wire for positionEncoding to set.
* @return This builder for chaining.
*/
public Builder setPositionEncodingValue(int value) {
positionEncoding_ = value;
onChanged();
return this;
}
/**
* <pre>
* Specifies the encoding used for source ranges in this Document.
* Usually, this will match the type used to index the string type
* in the indexer's implementation language in O(1) time.
* - For an indexer implemented in JVM/.NET language or JavaScript/TypeScript,
* use UTF16CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Python,
* use UTF32CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Go, Rust or C++,
* use UTF8ByteOffsetFromLineStart.
* </pre>
*
* <code>.scip.PositionEncoding position_encoding = 6;</code>
* @return The positionEncoding.
*/
@java.lang.Override
public scip.Scip.PositionEncoding getPositionEncoding() {
@SuppressWarnings("deprecation")
scip.Scip.PositionEncoding result = scip.Scip.PositionEncoding.valueOf(positionEncoding_);
return result == null ? scip.Scip.PositionEncoding.UNRECOGNIZED : result;
}
/**
* <pre>
* Specifies the encoding used for source ranges in this Document.
* Usually, this will match the type used to index the string type
* in the indexer's implementation language in O(1) time.
* - For an indexer implemented in JVM/.NET language or JavaScript/TypeScript,
* use UTF16CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Python,
* use UTF32CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Go, Rust or C++,
* use UTF8ByteOffsetFromLineStart.
* </pre>
*
* <code>.scip.PositionEncoding position_encoding = 6;</code>
* @param value The positionEncoding to set.
* @return This builder for chaining.
*/
public Builder setPositionEncoding(scip.Scip.PositionEncoding value) {
if (value == null) {
throw new NullPointerException();
}
positionEncoding_ = value.getNumber();
onChanged();
return this;
}
/**
* <pre>
* Specifies the encoding used for source ranges in this Document.
* Usually, this will match the type used to index the string type
* in the indexer's implementation language in O(1) time.
* - For an indexer implemented in JVM/.NET language or JavaScript/TypeScript,
* use UTF16CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Python,
* use UTF32CodeUnitOffsetFromLineStart.
* - For an indexer implemented in Go, Rust or C++,
* use UTF8ByteOffsetFromLineStart.
* </pre>
*
* <code>.scip.PositionEncoding position_encoding = 6;</code>
* @return This builder for chaining.
*/
public Builder clearPositionEncoding() {
positionEncoding_ = 0;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.Document)
}
// @@protoc_insertion_point(class_scope:scip.Document)
private static final scip.Scip.Document DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.Document();
}
public static scip.Scip.Document getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<Document>
PARSER = new com.google.protobuf.AbstractParser<Document>() {
@java.lang.Override
public Document parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Document(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<Document> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<Document> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.Document getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface SymbolOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.Symbol)
com.google.protobuf.MessageOrBuilder {
/**
* <code>string scheme = 1;</code>
* @return The scheme.
*/
java.lang.String getScheme();
/**
* <code>string scheme = 1;</code>
* @return The bytes for scheme.
*/
com.google.protobuf.ByteString
getSchemeBytes();
/**
* <code>.scip.Package package = 2;</code>
* @return Whether the package field is set.
*/
boolean hasPackage();
/**
* <code>.scip.Package package = 2;</code>
* @return The package.
*/
scip.Scip.Package getPackage();
/**
* <code>.scip.Package package = 2;</code>
*/
scip.Scip.PackageOrBuilder getPackageOrBuilder();
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
java.util.List<scip.Scip.Descriptor>
getDescriptorsList();
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
scip.Scip.Descriptor getDescriptors(int index);
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
int getDescriptorsCount();
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
java.util.List<? extends scip.Scip.DescriptorOrBuilder>
getDescriptorsOrBuilderList();
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
scip.Scip.DescriptorOrBuilder getDescriptorsOrBuilder(
int index);
}
/**
* <pre>
* Symbol is similar to a URI, it identifies a class, method, or a local
* variable. `SymbolInformation` contains rich metadata about symbols such as
* the docstring.
* Symbol has a standardized string representation, which can be used
* interchangeably with `Symbol`. The syntax for Symbol is the following:
* ```
* # (&lt;x&gt;)+ stands for one or more repetitions of &lt;x&gt;
* # (&lt;x&gt;)? stands for zero or one occurrence of &lt;x&gt;
* &lt;symbol&gt; ::= &lt;scheme&gt; ' ' &lt;package&gt; ' ' (&lt;descriptor&gt;)+ | 'local ' &lt;local-id&gt;
* &lt;package&gt; ::= &lt;manager&gt; ' ' &lt;package-name&gt; ' ' &lt;version&gt;
* &lt;scheme&gt; ::= any UTF-8, escape spaces with double space. Must not be empty nor start with 'local'
* &lt;manager&gt; ::= any UTF-8, escape spaces with double space. Use the placeholder '.' to indicate an empty value
* &lt;package-name&gt; ::= same as above
* &lt;version&gt; ::= same as above
* &lt;descriptor&gt; ::= &lt;namespace&gt; | &lt;type&gt; | &lt;term&gt; | &lt;method&gt; | &lt;type-parameter&gt; | &lt;parameter&gt; | &lt;meta&gt; | &lt;macro&gt;
* &lt;namespace&gt; ::= &lt;name&gt; '/'
* &lt;type&gt; ::= &lt;name&gt; '#'
* &lt;term&gt; ::= &lt;name&gt; '.'
* &lt;meta&gt; ::= &lt;name&gt; ':'
* &lt;macro&gt; ::= &lt;name&gt; '!'
* &lt;method&gt; ::= &lt;name&gt; '(' (&lt;method-disambiguator&gt;)? ').'
* &lt;type-parameter&gt; ::= '[' &lt;name&gt; ']'
* &lt;parameter&gt; ::= '(' &lt;name&gt; ')'
* &lt;name&gt; ::= &lt;identifier&gt;
* &lt;method-disambiguator&gt; ::= &lt;simple-identifier&gt;
* &lt;identifier&gt; ::= &lt;simple-identifier&gt; | &lt;escaped-identifier&gt;
* &lt;simple-identifier&gt; ::= (&lt;identifier-character&gt;)+
* &lt;identifier-character&gt; ::= '_' | '+' | '-' | '$' | ASCII letter or digit
* &lt;escaped-identifier&gt; ::= '`' (&lt;escaped-character&gt;)+ '`', must contain at least one non-&lt;identifier-character&gt;
* &lt;escaped-characters&gt; ::= any UTF-8, escape backticks with double backtick.
* &lt;local-id&gt; ::= &lt;simple-identifier&gt;
* ```
* The list of descriptors for a symbol should together form a fully
* qualified name for the symbol. That is, it should serve as a unique
* identifier across the package. Typically, it will include one descriptor
* for every node in the AST (along the ancestry path) between the root of
* the file and the node corresponding to the symbol.
* Local symbols MUST only be used for entities which are local to a Document,
* and cannot be accessed from outside the Document.
* </pre>
*
* Protobuf type {@code scip.Symbol}
*/
public static final class Symbol extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.Symbol)
SymbolOrBuilder {
private static final long serialVersionUID = 0L;
// Use Symbol.newBuilder() to construct.
private Symbol(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private Symbol() {
scheme_ = "";
descriptors_ = java.util.Collections.emptyList();
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Symbol();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Symbol(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 10: {
java.lang.String s = input.readStringRequireUtf8();
scheme_ = s;
break;
}
case 18: {
scip.Scip.Package.Builder subBuilder = null;
if (package_ != null) {
subBuilder = package_.toBuilder();
}
package_ = input.readMessage(scip.Scip.Package.parser(), extensionRegistry);
if (subBuilder != null) {
subBuilder.mergeFrom(package_);
package_ = subBuilder.buildPartial();
}
break;
}
case 26: {
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
descriptors_ = new java.util.ArrayList<scip.Scip.Descriptor>();
mutable_bitField0_ |= 0x00000001;
}
descriptors_.add(
input.readMessage(scip.Scip.Descriptor.parser(), extensionRegistry));
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000001) != 0)) {
descriptors_ = java.util.Collections.unmodifiableList(descriptors_);
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Symbol_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Symbol_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Symbol.class, scip.Scip.Symbol.Builder.class);
}
public static final int SCHEME_FIELD_NUMBER = 1;
private volatile java.lang.Object scheme_;
/**
* <code>string scheme = 1;</code>
* @return The scheme.
*/
@java.lang.Override
public java.lang.String getScheme() {
java.lang.Object ref = scheme_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
scheme_ = s;
return s;
}
}
/**
* <code>string scheme = 1;</code>
* @return The bytes for scheme.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getSchemeBytes() {
java.lang.Object ref = scheme_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
scheme_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int PACKAGE_FIELD_NUMBER = 2;
private scip.Scip.Package package_;
/**
* <code>.scip.Package package = 2;</code>
* @return Whether the package field is set.
*/
@java.lang.Override
public boolean hasPackage() {
return package_ != null;
}
/**
* <code>.scip.Package package = 2;</code>
* @return The package.
*/
@java.lang.Override
public scip.Scip.Package getPackage() {
return package_ == null ? scip.Scip.Package.getDefaultInstance() : package_;
}
/**
* <code>.scip.Package package = 2;</code>
*/
@java.lang.Override
public scip.Scip.PackageOrBuilder getPackageOrBuilder() {
return getPackage();
}
public static final int DESCRIPTORS_FIELD_NUMBER = 3;
private java.util.List<scip.Scip.Descriptor> descriptors_;
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
@java.lang.Override
public java.util.List<scip.Scip.Descriptor> getDescriptorsList() {
return descriptors_;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
@java.lang.Override
public java.util.List<? extends scip.Scip.DescriptorOrBuilder>
getDescriptorsOrBuilderList() {
return descriptors_;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
@java.lang.Override
public int getDescriptorsCount() {
return descriptors_.size();
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
@java.lang.Override
public scip.Scip.Descriptor getDescriptors(int index) {
return descriptors_.get(index);
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
@java.lang.Override
public scip.Scip.DescriptorOrBuilder getDescriptorsOrBuilder(
int index) {
return descriptors_.get(index);
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (!getSchemeBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 1, scheme_);
}
if (package_ != null) {
output.writeMessage(2, getPackage());
}
for (int i = 0; i < descriptors_.size(); i++) {
output.writeMessage(3, descriptors_.get(i));
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (!getSchemeBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, scheme_);
}
if (package_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(2, getPackage());
}
for (int i = 0; i < descriptors_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(3, descriptors_.get(i));
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.Symbol)) {
return super.equals(obj);
}
scip.Scip.Symbol other = (scip.Scip.Symbol) obj;
if (!getScheme()
.equals(other.getScheme())) return false;
if (hasPackage() != other.hasPackage()) return false;
if (hasPackage()) {
if (!getPackage()
.equals(other.getPackage())) return false;
}
if (!getDescriptorsList()
.equals(other.getDescriptorsList())) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + SCHEME_FIELD_NUMBER;
hash = (53 * hash) + getScheme().hashCode();
if (hasPackage()) {
hash = (37 * hash) + PACKAGE_FIELD_NUMBER;
hash = (53 * hash) + getPackage().hashCode();
}
if (getDescriptorsCount() > 0) {
hash = (37 * hash) + DESCRIPTORS_FIELD_NUMBER;
hash = (53 * hash) + getDescriptorsList().hashCode();
}
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.Symbol parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Symbol parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Symbol parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Symbol parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Symbol parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Symbol parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Symbol parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Symbol parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Symbol parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.Symbol parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Symbol parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Symbol parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.Symbol prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* <pre>
* Symbol is similar to a URI, it identifies a class, method, or a local
* variable. `SymbolInformation` contains rich metadata about symbols such as
* the docstring.
* Symbol has a standardized string representation, which can be used
* interchangeably with `Symbol`. The syntax for Symbol is the following:
* ```
* # (&lt;x&gt;)+ stands for one or more repetitions of &lt;x&gt;
* # (&lt;x&gt;)? stands for zero or one occurrence of &lt;x&gt;
* &lt;symbol&gt; ::= &lt;scheme&gt; ' ' &lt;package&gt; ' ' (&lt;descriptor&gt;)+ | 'local ' &lt;local-id&gt;
* &lt;package&gt; ::= &lt;manager&gt; ' ' &lt;package-name&gt; ' ' &lt;version&gt;
* &lt;scheme&gt; ::= any UTF-8, escape spaces with double space. Must not be empty nor start with 'local'
* &lt;manager&gt; ::= any UTF-8, escape spaces with double space. Use the placeholder '.' to indicate an empty value
* &lt;package-name&gt; ::= same as above
* &lt;version&gt; ::= same as above
* &lt;descriptor&gt; ::= &lt;namespace&gt; | &lt;type&gt; | &lt;term&gt; | &lt;method&gt; | &lt;type-parameter&gt; | &lt;parameter&gt; | &lt;meta&gt; | &lt;macro&gt;
* &lt;namespace&gt; ::= &lt;name&gt; '/'
* &lt;type&gt; ::= &lt;name&gt; '#'
* &lt;term&gt; ::= &lt;name&gt; '.'
* &lt;meta&gt; ::= &lt;name&gt; ':'
* &lt;macro&gt; ::= &lt;name&gt; '!'
* &lt;method&gt; ::= &lt;name&gt; '(' (&lt;method-disambiguator&gt;)? ').'
* &lt;type-parameter&gt; ::= '[' &lt;name&gt; ']'
* &lt;parameter&gt; ::= '(' &lt;name&gt; ')'
* &lt;name&gt; ::= &lt;identifier&gt;
* &lt;method-disambiguator&gt; ::= &lt;simple-identifier&gt;
* &lt;identifier&gt; ::= &lt;simple-identifier&gt; | &lt;escaped-identifier&gt;
* &lt;simple-identifier&gt; ::= (&lt;identifier-character&gt;)+
* &lt;identifier-character&gt; ::= '_' | '+' | '-' | '$' | ASCII letter or digit
* &lt;escaped-identifier&gt; ::= '`' (&lt;escaped-character&gt;)+ '`', must contain at least one non-&lt;identifier-character&gt;
* &lt;escaped-characters&gt; ::= any UTF-8, escape backticks with double backtick.
* &lt;local-id&gt; ::= &lt;simple-identifier&gt;
* ```
* The list of descriptors for a symbol should together form a fully
* qualified name for the symbol. That is, it should serve as a unique
* identifier across the package. Typically, it will include one descriptor
* for every node in the AST (along the ancestry path) between the root of
* the file and the node corresponding to the symbol.
* Local symbols MUST only be used for entities which are local to a Document,
* and cannot be accessed from outside the Document.
* </pre>
*
* Protobuf type {@code scip.Symbol}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.Symbol)
scip.Scip.SymbolOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Symbol_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Symbol_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Symbol.class, scip.Scip.Symbol.Builder.class);
}
// Construct using scip.Scip.Symbol.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
getDescriptorsFieldBuilder();
}
}
@java.lang.Override
public Builder clear() {
super.clear();
scheme_ = "";
if (packageBuilder_ == null) {
package_ = null;
} else {
package_ = null;
packageBuilder_ = null;
}
if (descriptorsBuilder_ == null) {
descriptors_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
} else {
descriptorsBuilder_.clear();
}
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_Symbol_descriptor;
}
@java.lang.Override
public scip.Scip.Symbol getDefaultInstanceForType() {
return scip.Scip.Symbol.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.Symbol build() {
scip.Scip.Symbol result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.Symbol buildPartial() {
scip.Scip.Symbol result = new scip.Scip.Symbol(this);
int from_bitField0_ = bitField0_;
result.scheme_ = scheme_;
if (packageBuilder_ == null) {
result.package_ = package_;
} else {
result.package_ = packageBuilder_.build();
}
if (descriptorsBuilder_ == null) {
if (((bitField0_ & 0x00000001) != 0)) {
descriptors_ = java.util.Collections.unmodifiableList(descriptors_);
bitField0_ = (bitField0_ & ~0x00000001);
}
result.descriptors_ = descriptors_;
} else {
result.descriptors_ = descriptorsBuilder_.build();
}
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.Symbol) {
return mergeFrom((scip.Scip.Symbol)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.Symbol other) {
if (other == scip.Scip.Symbol.getDefaultInstance()) return this;
if (!other.getScheme().isEmpty()) {
scheme_ = other.scheme_;
onChanged();
}
if (other.hasPackage()) {
mergePackage(other.getPackage());
}
if (descriptorsBuilder_ == null) {
if (!other.descriptors_.isEmpty()) {
if (descriptors_.isEmpty()) {
descriptors_ = other.descriptors_;
bitField0_ = (bitField0_ & ~0x00000001);
} else {
ensureDescriptorsIsMutable();
descriptors_.addAll(other.descriptors_);
}
onChanged();
}
} else {
if (!other.descriptors_.isEmpty()) {
if (descriptorsBuilder_.isEmpty()) {
descriptorsBuilder_.dispose();
descriptorsBuilder_ = null;
descriptors_ = other.descriptors_;
bitField0_ = (bitField0_ & ~0x00000001);
descriptorsBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getDescriptorsFieldBuilder() : null;
} else {
descriptorsBuilder_.addAllMessages(other.descriptors_);
}
}
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.Symbol parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.Symbol) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private java.lang.Object scheme_ = "";
/**
* <code>string scheme = 1;</code>
* @return The scheme.
*/
public java.lang.String getScheme() {
java.lang.Object ref = scheme_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
scheme_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <code>string scheme = 1;</code>
* @return The bytes for scheme.
*/
public com.google.protobuf.ByteString
getSchemeBytes() {
java.lang.Object ref = scheme_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
scheme_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <code>string scheme = 1;</code>
* @param value The scheme to set.
* @return This builder for chaining.
*/
public Builder setScheme(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
scheme_ = value;
onChanged();
return this;
}
/**
* <code>string scheme = 1;</code>
* @return This builder for chaining.
*/
public Builder clearScheme() {
scheme_ = getDefaultInstance().getScheme();
onChanged();
return this;
}
/**
* <code>string scheme = 1;</code>
* @param value The bytes for scheme to set.
* @return This builder for chaining.
*/
public Builder setSchemeBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
scheme_ = value;
onChanged();
return this;
}
private scip.Scip.Package package_;
private com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.Package, scip.Scip.Package.Builder, scip.Scip.PackageOrBuilder> packageBuilder_;
/**
* <code>.scip.Package package = 2;</code>
* @return Whether the package field is set.
*/
public boolean hasPackage() {
return packageBuilder_ != null || package_ != null;
}
/**
* <code>.scip.Package package = 2;</code>
* @return The package.
*/
public scip.Scip.Package getPackage() {
if (packageBuilder_ == null) {
return package_ == null ? scip.Scip.Package.getDefaultInstance() : package_;
} else {
return packageBuilder_.getMessage();
}
}
/**
* <code>.scip.Package package = 2;</code>
*/
public Builder setPackage(scip.Scip.Package value) {
if (packageBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
package_ = value;
onChanged();
} else {
packageBuilder_.setMessage(value);
}
return this;
}
/**
* <code>.scip.Package package = 2;</code>
*/
public Builder setPackage(
scip.Scip.Package.Builder builderForValue) {
if (packageBuilder_ == null) {
package_ = builderForValue.build();
onChanged();
} else {
packageBuilder_.setMessage(builderForValue.build());
}
return this;
}
/**
* <code>.scip.Package package = 2;</code>
*/
public Builder mergePackage(scip.Scip.Package value) {
if (packageBuilder_ == null) {
if (package_ != null) {
package_ =
scip.Scip.Package.newBuilder(package_).mergeFrom(value).buildPartial();
} else {
package_ = value;
}
onChanged();
} else {
packageBuilder_.mergeFrom(value);
}
return this;
}
/**
* <code>.scip.Package package = 2;</code>
*/
public Builder clearPackage() {
if (packageBuilder_ == null) {
package_ = null;
onChanged();
} else {
package_ = null;
packageBuilder_ = null;
}
return this;
}
/**
* <code>.scip.Package package = 2;</code>
*/
public scip.Scip.Package.Builder getPackageBuilder() {
onChanged();
return getPackageFieldBuilder().getBuilder();
}
/**
* <code>.scip.Package package = 2;</code>
*/
public scip.Scip.PackageOrBuilder getPackageOrBuilder() {
if (packageBuilder_ != null) {
return packageBuilder_.getMessageOrBuilder();
} else {
return package_ == null ?
scip.Scip.Package.getDefaultInstance() : package_;
}
}
/**
* <code>.scip.Package package = 2;</code>
*/
private com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.Package, scip.Scip.Package.Builder, scip.Scip.PackageOrBuilder>
getPackageFieldBuilder() {
if (packageBuilder_ == null) {
packageBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.Package, scip.Scip.Package.Builder, scip.Scip.PackageOrBuilder>(
getPackage(),
getParentForChildren(),
isClean());
package_ = null;
}
return packageBuilder_;
}
private java.util.List<scip.Scip.Descriptor> descriptors_ =
java.util.Collections.emptyList();
private void ensureDescriptorsIsMutable() {
if (!((bitField0_ & 0x00000001) != 0)) {
descriptors_ = new java.util.ArrayList<scip.Scip.Descriptor>(descriptors_);
bitField0_ |= 0x00000001;
}
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Descriptor, scip.Scip.Descriptor.Builder, scip.Scip.DescriptorOrBuilder> descriptorsBuilder_;
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public java.util.List<scip.Scip.Descriptor> getDescriptorsList() {
if (descriptorsBuilder_ == null) {
return java.util.Collections.unmodifiableList(descriptors_);
} else {
return descriptorsBuilder_.getMessageList();
}
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public int getDescriptorsCount() {
if (descriptorsBuilder_ == null) {
return descriptors_.size();
} else {
return descriptorsBuilder_.getCount();
}
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public scip.Scip.Descriptor getDescriptors(int index) {
if (descriptorsBuilder_ == null) {
return descriptors_.get(index);
} else {
return descriptorsBuilder_.getMessage(index);
}
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public Builder setDescriptors(
int index, scip.Scip.Descriptor value) {
if (descriptorsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDescriptorsIsMutable();
descriptors_.set(index, value);
onChanged();
} else {
descriptorsBuilder_.setMessage(index, value);
}
return this;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public Builder setDescriptors(
int index, scip.Scip.Descriptor.Builder builderForValue) {
if (descriptorsBuilder_ == null) {
ensureDescriptorsIsMutable();
descriptors_.set(index, builderForValue.build());
onChanged();
} else {
descriptorsBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public Builder addDescriptors(scip.Scip.Descriptor value) {
if (descriptorsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDescriptorsIsMutable();
descriptors_.add(value);
onChanged();
} else {
descriptorsBuilder_.addMessage(value);
}
return this;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public Builder addDescriptors(
int index, scip.Scip.Descriptor value) {
if (descriptorsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDescriptorsIsMutable();
descriptors_.add(index, value);
onChanged();
} else {
descriptorsBuilder_.addMessage(index, value);
}
return this;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public Builder addDescriptors(
scip.Scip.Descriptor.Builder builderForValue) {
if (descriptorsBuilder_ == null) {
ensureDescriptorsIsMutable();
descriptors_.add(builderForValue.build());
onChanged();
} else {
descriptorsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public Builder addDescriptors(
int index, scip.Scip.Descriptor.Builder builderForValue) {
if (descriptorsBuilder_ == null) {
ensureDescriptorsIsMutable();
descriptors_.add(index, builderForValue.build());
onChanged();
} else {
descriptorsBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public Builder addAllDescriptors(
java.lang.Iterable<? extends scip.Scip.Descriptor> values) {
if (descriptorsBuilder_ == null) {
ensureDescriptorsIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, descriptors_);
onChanged();
} else {
descriptorsBuilder_.addAllMessages(values);
}
return this;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public Builder clearDescriptors() {
if (descriptorsBuilder_ == null) {
descriptors_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
} else {
descriptorsBuilder_.clear();
}
return this;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public Builder removeDescriptors(int index) {
if (descriptorsBuilder_ == null) {
ensureDescriptorsIsMutable();
descriptors_.remove(index);
onChanged();
} else {
descriptorsBuilder_.remove(index);
}
return this;
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public scip.Scip.Descriptor.Builder getDescriptorsBuilder(
int index) {
return getDescriptorsFieldBuilder().getBuilder(index);
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public scip.Scip.DescriptorOrBuilder getDescriptorsOrBuilder(
int index) {
if (descriptorsBuilder_ == null) {
return descriptors_.get(index); } else {
return descriptorsBuilder_.getMessageOrBuilder(index);
}
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public java.util.List<? extends scip.Scip.DescriptorOrBuilder>
getDescriptorsOrBuilderList() {
if (descriptorsBuilder_ != null) {
return descriptorsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(descriptors_);
}
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public scip.Scip.Descriptor.Builder addDescriptorsBuilder() {
return getDescriptorsFieldBuilder().addBuilder(
scip.Scip.Descriptor.getDefaultInstance());
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public scip.Scip.Descriptor.Builder addDescriptorsBuilder(
int index) {
return getDescriptorsFieldBuilder().addBuilder(
index, scip.Scip.Descriptor.getDefaultInstance());
}
/**
* <code>repeated .scip.Descriptor descriptors = 3;</code>
*/
public java.util.List<scip.Scip.Descriptor.Builder>
getDescriptorsBuilderList() {
return getDescriptorsFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Descriptor, scip.Scip.Descriptor.Builder, scip.Scip.DescriptorOrBuilder>
getDescriptorsFieldBuilder() {
if (descriptorsBuilder_ == null) {
descriptorsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Descriptor, scip.Scip.Descriptor.Builder, scip.Scip.DescriptorOrBuilder>(
descriptors_,
((bitField0_ & 0x00000001) != 0),
getParentForChildren(),
isClean());
descriptors_ = null;
}
return descriptorsBuilder_;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.Symbol)
}
// @@protoc_insertion_point(class_scope:scip.Symbol)
private static final scip.Scip.Symbol DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.Symbol();
}
public static scip.Scip.Symbol getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<Symbol>
PARSER = new com.google.protobuf.AbstractParser<Symbol>() {
@java.lang.Override
public Symbol parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Symbol(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<Symbol> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<Symbol> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.Symbol getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface PackageOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.Package)
com.google.protobuf.MessageOrBuilder {
/**
* <code>string manager = 1;</code>
* @return The manager.
*/
java.lang.String getManager();
/**
* <code>string manager = 1;</code>
* @return The bytes for manager.
*/
com.google.protobuf.ByteString
getManagerBytes();
/**
* <code>string name = 2;</code>
* @return The name.
*/
java.lang.String getName();
/**
* <code>string name = 2;</code>
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
/**
* <code>string version = 3;</code>
* @return The version.
*/
java.lang.String getVersion();
/**
* <code>string version = 3;</code>
* @return The bytes for version.
*/
com.google.protobuf.ByteString
getVersionBytes();
}
/**
* <pre>
* Unit of packaging and distribution.
* NOTE: This corresponds to a module in Go and JVM languages.
* </pre>
*
* Protobuf type {@code scip.Package}
*/
public static final class Package extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.Package)
PackageOrBuilder {
private static final long serialVersionUID = 0L;
// Use Package.newBuilder() to construct.
private Package(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private Package() {
manager_ = "";
name_ = "";
version_ = "";
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Package();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Package(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 10: {
java.lang.String s = input.readStringRequireUtf8();
manager_ = s;
break;
}
case 18: {
java.lang.String s = input.readStringRequireUtf8();
name_ = s;
break;
}
case 26: {
java.lang.String s = input.readStringRequireUtf8();
version_ = s;
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Package_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Package_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Package.class, scip.Scip.Package.Builder.class);
}
public static final int MANAGER_FIELD_NUMBER = 1;
private volatile java.lang.Object manager_;
/**
* <code>string manager = 1;</code>
* @return The manager.
*/
@java.lang.Override
public java.lang.String getManager() {
java.lang.Object ref = manager_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
manager_ = s;
return s;
}
}
/**
* <code>string manager = 1;</code>
* @return The bytes for manager.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getManagerBytes() {
java.lang.Object ref = manager_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
manager_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int NAME_FIELD_NUMBER = 2;
private volatile java.lang.Object name_;
/**
* <code>string name = 2;</code>
* @return The name.
*/
@java.lang.Override
public java.lang.String getName() {
java.lang.Object ref = name_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
name_ = s;
return s;
}
}
/**
* <code>string name = 2;</code>
* @return The bytes for name.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getNameBytes() {
java.lang.Object ref = name_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
name_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int VERSION_FIELD_NUMBER = 3;
private volatile java.lang.Object version_;
/**
* <code>string version = 3;</code>
* @return The version.
*/
@java.lang.Override
public java.lang.String getVersion() {
java.lang.Object ref = version_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
version_ = s;
return s;
}
}
/**
* <code>string version = 3;</code>
* @return The bytes for version.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getVersionBytes() {
java.lang.Object ref = version_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
version_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (!getManagerBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 1, manager_);
}
if (!getNameBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
}
if (!getVersionBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 3, version_);
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (!getManagerBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, manager_);
}
if (!getNameBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
}
if (!getVersionBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, version_);
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.Package)) {
return super.equals(obj);
}
scip.Scip.Package other = (scip.Scip.Package) obj;
if (!getManager()
.equals(other.getManager())) return false;
if (!getName()
.equals(other.getName())) return false;
if (!getVersion()
.equals(other.getVersion())) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + MANAGER_FIELD_NUMBER;
hash = (53 * hash) + getManager().hashCode();
hash = (37 * hash) + NAME_FIELD_NUMBER;
hash = (53 * hash) + getName().hashCode();
hash = (37 * hash) + VERSION_FIELD_NUMBER;
hash = (53 * hash) + getVersion().hashCode();
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.Package parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Package parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Package parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Package parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Package parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Package parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Package parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Package parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Package parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.Package parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Package parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Package parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.Package prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* <pre>
* Unit of packaging and distribution.
* NOTE: This corresponds to a module in Go and JVM languages.
* </pre>
*
* Protobuf type {@code scip.Package}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.Package)
scip.Scip.PackageOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Package_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Package_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Package.class, scip.Scip.Package.Builder.class);
}
// Construct using scip.Scip.Package.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
@java.lang.Override
public Builder clear() {
super.clear();
manager_ = "";
name_ = "";
version_ = "";
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_Package_descriptor;
}
@java.lang.Override
public scip.Scip.Package getDefaultInstanceForType() {
return scip.Scip.Package.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.Package build() {
scip.Scip.Package result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.Package buildPartial() {
scip.Scip.Package result = new scip.Scip.Package(this);
result.manager_ = manager_;
result.name_ = name_;
result.version_ = version_;
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.Package) {
return mergeFrom((scip.Scip.Package)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.Package other) {
if (other == scip.Scip.Package.getDefaultInstance()) return this;
if (!other.getManager().isEmpty()) {
manager_ = other.manager_;
onChanged();
}
if (!other.getName().isEmpty()) {
name_ = other.name_;
onChanged();
}
if (!other.getVersion().isEmpty()) {
version_ = other.version_;
onChanged();
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.Package parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.Package) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private java.lang.Object manager_ = "";
/**
* <code>string manager = 1;</code>
* @return The manager.
*/
public java.lang.String getManager() {
java.lang.Object ref = manager_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
manager_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <code>string manager = 1;</code>
* @return The bytes for manager.
*/
public com.google.protobuf.ByteString
getManagerBytes() {
java.lang.Object ref = manager_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
manager_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <code>string manager = 1;</code>
* @param value The manager to set.
* @return This builder for chaining.
*/
public Builder setManager(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
manager_ = value;
onChanged();
return this;
}
/**
* <code>string manager = 1;</code>
* @return This builder for chaining.
*/
public Builder clearManager() {
manager_ = getDefaultInstance().getManager();
onChanged();
return this;
}
/**
* <code>string manager = 1;</code>
* @param value The bytes for manager to set.
* @return This builder for chaining.
*/
public Builder setManagerBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
manager_ = value;
onChanged();
return this;
}
private java.lang.Object name_ = "";
/**
* <code>string name = 2;</code>
* @return The name.
*/
public java.lang.String getName() {
java.lang.Object ref = name_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
name_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <code>string name = 2;</code>
* @return The bytes for name.
*/
public com.google.protobuf.ByteString
getNameBytes() {
java.lang.Object ref = name_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
name_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <code>string name = 2;</code>
* @param value The name to set.
* @return This builder for chaining.
*/
public Builder setName(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
name_ = value;
onChanged();
return this;
}
/**
* <code>string name = 2;</code>
* @return This builder for chaining.
*/
public Builder clearName() {
name_ = getDefaultInstance().getName();
onChanged();
return this;
}
/**
* <code>string name = 2;</code>
* @param value The bytes for name to set.
* @return This builder for chaining.
*/
public Builder setNameBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
name_ = value;
onChanged();
return this;
}
private java.lang.Object version_ = "";
/**
* <code>string version = 3;</code>
* @return The version.
*/
public java.lang.String getVersion() {
java.lang.Object ref = version_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
version_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <code>string version = 3;</code>
* @return The bytes for version.
*/
public com.google.protobuf.ByteString
getVersionBytes() {
java.lang.Object ref = version_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
version_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <code>string version = 3;</code>
* @param value The version to set.
* @return This builder for chaining.
*/
public Builder setVersion(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
version_ = value;
onChanged();
return this;
}
/**
* <code>string version = 3;</code>
* @return This builder for chaining.
*/
public Builder clearVersion() {
version_ = getDefaultInstance().getVersion();
onChanged();
return this;
}
/**
* <code>string version = 3;</code>
* @param value The bytes for version to set.
* @return This builder for chaining.
*/
public Builder setVersionBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
version_ = value;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.Package)
}
// @@protoc_insertion_point(class_scope:scip.Package)
private static final scip.Scip.Package DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.Package();
}
public static scip.Scip.Package getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<Package>
PARSER = new com.google.protobuf.AbstractParser<Package>() {
@java.lang.Override
public Package parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Package(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<Package> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<Package> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.Package getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface DescriptorOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.Descriptor)
com.google.protobuf.MessageOrBuilder {
/**
* <code>string name = 1;</code>
* @return The name.
*/
java.lang.String getName();
/**
* <code>string name = 1;</code>
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
/**
* <code>string disambiguator = 2;</code>
* @return The disambiguator.
*/
java.lang.String getDisambiguator();
/**
* <code>string disambiguator = 2;</code>
* @return The bytes for disambiguator.
*/
com.google.protobuf.ByteString
getDisambiguatorBytes();
/**
* <pre>
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
* </pre>
*
* <code>.scip.Descriptor.Suffix suffix = 3;</code>
* @return The enum numeric value on the wire for suffix.
*/
int getSuffixValue();
/**
* <pre>
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
* </pre>
*
* <code>.scip.Descriptor.Suffix suffix = 3;</code>
* @return The suffix.
*/
scip.Scip.Descriptor.Suffix getSuffix();
}
/**
* Protobuf type {@code scip.Descriptor}
*/
public static final class Descriptor extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.Descriptor)
DescriptorOrBuilder {
private static final long serialVersionUID = 0L;
// Use Descriptor.newBuilder() to construct.
private Descriptor(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private Descriptor() {
name_ = "";
disambiguator_ = "";
suffix_ = 0;
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Descriptor();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Descriptor(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 10: {
java.lang.String s = input.readStringRequireUtf8();
name_ = s;
break;
}
case 18: {
java.lang.String s = input.readStringRequireUtf8();
disambiguator_ = s;
break;
}
case 24: {
int rawValue = input.readEnum();
suffix_ = rawValue;
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Descriptor_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Descriptor_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Descriptor.class, scip.Scip.Descriptor.Builder.class);
}
/**
* Protobuf enum {@code scip.Descriptor.Suffix}
*/
public enum Suffix
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <code>UnspecifiedSuffix = 0;</code>
*/
UnspecifiedSuffix(0, 0),
/**
* <pre>
* Unit of code abstraction and/or namespacing.
* NOTE: This corresponds to a package in Go and JVM languages.
* </pre>
*
* <code>Namespace = 1;</code>
*/
Namespace(1, 1),
/**
* <code>Type = 2;</code>
*/
Type(3, 2),
/**
* <code>Term = 3;</code>
*/
Term(4, 3),
/**
* <code>Method = 4;</code>
*/
Method(5, 4),
/**
* <code>TypeParameter = 5;</code>
*/
TypeParameter(6, 5),
/**
* <code>Parameter = 6;</code>
*/
Parameter(7, 6),
/**
* <pre>
* Can be used for any purpose.
* </pre>
*
* <code>Meta = 7;</code>
*/
Meta(8, 7),
/**
* <code>Local = 8;</code>
*/
Local(9, 8),
/**
* <code>Macro = 9;</code>
*/
Macro(10, 9),
UNRECOGNIZED(-1, -1),
;
/**
* <pre>
* Use Namespace instead.
* </pre>
*
* <code>Package = 1 [deprecated = true];</code>
*/
public static final Suffix Package = Namespace;
/**
* <code>UnspecifiedSuffix = 0;</code>
*/
public static final int UnspecifiedSuffix_VALUE = 0;
/**
* <pre>
* Unit of code abstraction and/or namespacing.
* NOTE: This corresponds to a package in Go and JVM languages.
* </pre>
*
* <code>Namespace = 1;</code>
*/
public static final int Namespace_VALUE = 1;
/**
* <pre>
* Use Namespace instead.
* </pre>
*
* <code>Package = 1 [deprecated = true];</code>
*/
@java.lang.Deprecated public static final int Package_VALUE = 1;
/**
* <code>Type = 2;</code>
*/
public static final int Type_VALUE = 2;
/**
* <code>Term = 3;</code>
*/
public static final int Term_VALUE = 3;
/**
* <code>Method = 4;</code>
*/
public static final int Method_VALUE = 4;
/**
* <code>TypeParameter = 5;</code>
*/
public static final int TypeParameter_VALUE = 5;
/**
* <code>Parameter = 6;</code>
*/
public static final int Parameter_VALUE = 6;
/**
* <pre>
* Can be used for any purpose.
* </pre>
*
* <code>Meta = 7;</code>
*/
public static final int Meta_VALUE = 7;
/**
* <code>Local = 8;</code>
*/
public static final int Local_VALUE = 8;
/**
* <code>Macro = 9;</code>
*/
public static final int Macro_VALUE = 9;
public final int getNumber() {
if (index == -1) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static Suffix valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static Suffix forNumber(int value) {
switch (value) {
case 0: return UnspecifiedSuffix;
case 1: return Namespace;
case 2: return Type;
case 3: return Term;
case 4: return Method;
case 5: return TypeParameter;
case 6: return Parameter;
case 7: return Meta;
case 8: return Local;
case 9: return Macro;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<Suffix>
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
Suffix> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<Suffix>() {
public Suffix findValueByNumber(int number) {
return Suffix.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (index == -1) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(index);
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return scip.Scip.Descriptor.getDescriptor().getEnumTypes().get(0);
}
private static final Suffix[] VALUES = getStaticValuesArray();
private static Suffix[] getStaticValuesArray() {
return new Suffix[] {
UnspecifiedSuffix, Namespace, Package, Type, Term, Method, TypeParameter, Parameter, Meta, Local, Macro,
};
}
public static Suffix valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int index;
private final int value;
private Suffix(int index, int value) {
this.index = index;
this.value = value;
}
// @@protoc_insertion_point(enum_scope:scip.Descriptor.Suffix)
}
public static final int NAME_FIELD_NUMBER = 1;
private volatile java.lang.Object name_;
/**
* <code>string name = 1;</code>
* @return The name.
*/
@java.lang.Override
public java.lang.String getName() {
java.lang.Object ref = name_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
name_ = s;
return s;
}
}
/**
* <code>string name = 1;</code>
* @return The bytes for name.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getNameBytes() {
java.lang.Object ref = name_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
name_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int DISAMBIGUATOR_FIELD_NUMBER = 2;
private volatile java.lang.Object disambiguator_;
/**
* <code>string disambiguator = 2;</code>
* @return The disambiguator.
*/
@java.lang.Override
public java.lang.String getDisambiguator() {
java.lang.Object ref = disambiguator_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
disambiguator_ = s;
return s;
}
}
/**
* <code>string disambiguator = 2;</code>
* @return The bytes for disambiguator.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getDisambiguatorBytes() {
java.lang.Object ref = disambiguator_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
disambiguator_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int SUFFIX_FIELD_NUMBER = 3;
private int suffix_;
/**
* <pre>
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
* </pre>
*
* <code>.scip.Descriptor.Suffix suffix = 3;</code>
* @return The enum numeric value on the wire for suffix.
*/
@java.lang.Override public int getSuffixValue() {
return suffix_;
}
/**
* <pre>
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
* </pre>
*
* <code>.scip.Descriptor.Suffix suffix = 3;</code>
* @return The suffix.
*/
@java.lang.Override public scip.Scip.Descriptor.Suffix getSuffix() {
@SuppressWarnings("deprecation")
scip.Scip.Descriptor.Suffix result = scip.Scip.Descriptor.Suffix.valueOf(suffix_);
return result == null ? scip.Scip.Descriptor.Suffix.UNRECOGNIZED : result;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (!getNameBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
}
if (!getDisambiguatorBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 2, disambiguator_);
}
if (suffix_ != scip.Scip.Descriptor.Suffix.UnspecifiedSuffix.getNumber()) {
output.writeEnum(3, suffix_);
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (!getNameBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
}
if (!getDisambiguatorBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, disambiguator_);
}
if (suffix_ != scip.Scip.Descriptor.Suffix.UnspecifiedSuffix.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(3, suffix_);
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.Descriptor)) {
return super.equals(obj);
}
scip.Scip.Descriptor other = (scip.Scip.Descriptor) obj;
if (!getName()
.equals(other.getName())) return false;
if (!getDisambiguator()
.equals(other.getDisambiguator())) return false;
if (suffix_ != other.suffix_) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + NAME_FIELD_NUMBER;
hash = (53 * hash) + getName().hashCode();
hash = (37 * hash) + DISAMBIGUATOR_FIELD_NUMBER;
hash = (53 * hash) + getDisambiguator().hashCode();
hash = (37 * hash) + SUFFIX_FIELD_NUMBER;
hash = (53 * hash) + suffix_;
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.Descriptor parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Descriptor parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Descriptor parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Descriptor parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Descriptor parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Descriptor parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Descriptor parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Descriptor parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Descriptor parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.Descriptor parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Descriptor parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Descriptor parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.Descriptor prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* Protobuf type {@code scip.Descriptor}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.Descriptor)
scip.Scip.DescriptorOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Descriptor_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Descriptor_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Descriptor.class, scip.Scip.Descriptor.Builder.class);
}
// Construct using scip.Scip.Descriptor.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
@java.lang.Override
public Builder clear() {
super.clear();
name_ = "";
disambiguator_ = "";
suffix_ = 0;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_Descriptor_descriptor;
}
@java.lang.Override
public scip.Scip.Descriptor getDefaultInstanceForType() {
return scip.Scip.Descriptor.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.Descriptor build() {
scip.Scip.Descriptor result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.Descriptor buildPartial() {
scip.Scip.Descriptor result = new scip.Scip.Descriptor(this);
result.name_ = name_;
result.disambiguator_ = disambiguator_;
result.suffix_ = suffix_;
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.Descriptor) {
return mergeFrom((scip.Scip.Descriptor)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.Descriptor other) {
if (other == scip.Scip.Descriptor.getDefaultInstance()) return this;
if (!other.getName().isEmpty()) {
name_ = other.name_;
onChanged();
}
if (!other.getDisambiguator().isEmpty()) {
disambiguator_ = other.disambiguator_;
onChanged();
}
if (other.suffix_ != 0) {
setSuffixValue(other.getSuffixValue());
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.Descriptor parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.Descriptor) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private java.lang.Object name_ = "";
/**
* <code>string name = 1;</code>
* @return The name.
*/
public java.lang.String getName() {
java.lang.Object ref = name_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
name_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <code>string name = 1;</code>
* @return The bytes for name.
*/
public com.google.protobuf.ByteString
getNameBytes() {
java.lang.Object ref = name_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
name_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <code>string name = 1;</code>
* @param value The name to set.
* @return This builder for chaining.
*/
public Builder setName(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
name_ = value;
onChanged();
return this;
}
/**
* <code>string name = 1;</code>
* @return This builder for chaining.
*/
public Builder clearName() {
name_ = getDefaultInstance().getName();
onChanged();
return this;
}
/**
* <code>string name = 1;</code>
* @param value The bytes for name to set.
* @return This builder for chaining.
*/
public Builder setNameBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
name_ = value;
onChanged();
return this;
}
private java.lang.Object disambiguator_ = "";
/**
* <code>string disambiguator = 2;</code>
* @return The disambiguator.
*/
public java.lang.String getDisambiguator() {
java.lang.Object ref = disambiguator_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
disambiguator_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <code>string disambiguator = 2;</code>
* @return The bytes for disambiguator.
*/
public com.google.protobuf.ByteString
getDisambiguatorBytes() {
java.lang.Object ref = disambiguator_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
disambiguator_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <code>string disambiguator = 2;</code>
* @param value The disambiguator to set.
* @return This builder for chaining.
*/
public Builder setDisambiguator(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
disambiguator_ = value;
onChanged();
return this;
}
/**
* <code>string disambiguator = 2;</code>
* @return This builder for chaining.
*/
public Builder clearDisambiguator() {
disambiguator_ = getDefaultInstance().getDisambiguator();
onChanged();
return this;
}
/**
* <code>string disambiguator = 2;</code>
* @param value The bytes for disambiguator to set.
* @return This builder for chaining.
*/
public Builder setDisambiguatorBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
disambiguator_ = value;
onChanged();
return this;
}
private int suffix_ = 0;
/**
* <pre>
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
* </pre>
*
* <code>.scip.Descriptor.Suffix suffix = 3;</code>
* @return The enum numeric value on the wire for suffix.
*/
@java.lang.Override public int getSuffixValue() {
return suffix_;
}
/**
* <pre>
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
* </pre>
*
* <code>.scip.Descriptor.Suffix suffix = 3;</code>
* @param value The enum numeric value on the wire for suffix to set.
* @return This builder for chaining.
*/
public Builder setSuffixValue(int value) {
suffix_ = value;
onChanged();
return this;
}
/**
* <pre>
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
* </pre>
*
* <code>.scip.Descriptor.Suffix suffix = 3;</code>
* @return The suffix.
*/
@java.lang.Override
public scip.Scip.Descriptor.Suffix getSuffix() {
@SuppressWarnings("deprecation")
scip.Scip.Descriptor.Suffix result = scip.Scip.Descriptor.Suffix.valueOf(suffix_);
return result == null ? scip.Scip.Descriptor.Suffix.UNRECOGNIZED : result;
}
/**
* <pre>
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
* </pre>
*
* <code>.scip.Descriptor.Suffix suffix = 3;</code>
* @param value The suffix to set.
* @return This builder for chaining.
*/
public Builder setSuffix(scip.Scip.Descriptor.Suffix value) {
if (value == null) {
throw new NullPointerException();
}
suffix_ = value.getNumber();
onChanged();
return this;
}
/**
* <pre>
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
* </pre>
*
* <code>.scip.Descriptor.Suffix suffix = 3;</code>
* @return This builder for chaining.
*/
public Builder clearSuffix() {
suffix_ = 0;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.Descriptor)
}
// @@protoc_insertion_point(class_scope:scip.Descriptor)
private static final scip.Scip.Descriptor DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.Descriptor();
}
public static scip.Scip.Descriptor getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<Descriptor>
PARSER = new com.google.protobuf.AbstractParser<Descriptor>() {
@java.lang.Override
public Descriptor parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Descriptor(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<Descriptor> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<Descriptor> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.Descriptor getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface SymbolInformationOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.SymbolInformation)
com.google.protobuf.MessageOrBuilder {
/**
* <pre>
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
* </pre>
*
* <code>string symbol = 1;</code>
* @return The symbol.
*/
java.lang.String getSymbol();
/**
* <pre>
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
* </pre>
*
* <code>string symbol = 1;</code>
* @return The bytes for symbol.
*/
com.google.protobuf.ByteString
getSymbolBytes();
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @return A list containing the documentation.
*/
java.util.List<java.lang.String>
getDocumentationList();
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @return The count of documentation.
*/
int getDocumentationCount();
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @param index The index of the element to return.
* @return The documentation at the given index.
*/
java.lang.String getDocumentation(int index);
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @param index The index of the value to return.
* @return The bytes of the documentation at the given index.
*/
com.google.protobuf.ByteString
getDocumentationBytes(int index);
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
java.util.List<scip.Scip.Relationship>
getRelationshipsList();
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
scip.Scip.Relationship getRelationships(int index);
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
int getRelationshipsCount();
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
java.util.List<? extends scip.Scip.RelationshipOrBuilder>
getRelationshipsOrBuilderList();
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
scip.Scip.RelationshipOrBuilder getRelationshipsOrBuilder(
int index);
/**
* <pre>
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
* </pre>
*
* <code>.scip.SymbolInformation.Kind kind = 5;</code>
* @return The enum numeric value on the wire for kind.
*/
int getKindValue();
/**
* <pre>
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
* </pre>
*
* <code>.scip.SymbolInformation.Kind kind = 5;</code>
* @return The kind.
*/
scip.Scip.SymbolInformation.Kind getKind();
/**
* <pre>
* (optional) The name of this symbol as it should be displayed to the user.
* For example, the symbol "com/example/MyClass#myMethod(+1)." should have the
* display name "myMethod". The `symbol` field is not a reliable source of
* the display name for several reasons:
* - Local symbols don't encode the name.
* - Some languages have case-insensitive names, so the symbol is all-lowercase.
* - The symbol may encode names with special characters that should not be
* displayed to the user.
* </pre>
*
* <code>string display_name = 6;</code>
* @return The displayName.
*/
java.lang.String getDisplayName();
/**
* <pre>
* (optional) The name of this symbol as it should be displayed to the user.
* For example, the symbol "com/example/MyClass#myMethod(+1)." should have the
* display name "myMethod". The `symbol` field is not a reliable source of
* the display name for several reasons:
* - Local symbols don't encode the name.
* - Some languages have case-insensitive names, so the symbol is all-lowercase.
* - The symbol may encode names with special characters that should not be
* displayed to the user.
* </pre>
*
* <code>string display_name = 6;</code>
* @return The bytes for displayName.
*/
com.google.protobuf.ByteString
getDisplayNameBytes();
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
* @return Whether the signatureDocumentation field is set.
*/
boolean hasSignatureDocumentation();
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
* @return The signatureDocumentation.
*/
scip.Scip.Document getSignatureDocumentation();
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
*/
scip.Scip.DocumentOrBuilder getSignatureDocumentationOrBuilder();
/**
* <pre>
* (optional) The enclosing symbol if this is a local symbol. For non-local
* symbols, the enclosing symbol should be parsed from the `symbol` field
* using the `Descriptor` grammar.
* The primary use-case for this field is to allow local symbol to be displayed
* in a symbol hierarchy for API documentation. It's OK to leave this field
* empty for local variables since local variables usually don't belong in API
* documentation. However, in the situation that you wish to include a local
* symbol in the hierarchy, then you can use `enclosing_symbol` to locate the
* "parent" or "owner" of this local symbol. For example, a Java indexer may
* choose to use local symbols for private class fields while providing an
* `enclosing_symbol` to reference the enclosing class to allow the field to
* be part of the class documentation hierarchy. From the perspective of an
* author of an indexer, the decision to use a local symbol or global symbol
* should exclusively be determined whether the local symbol is accessible
* outside the document, not by the capability to find the enclosing
* symbol.
* </pre>
*
* <code>string enclosing_symbol = 8;</code>
* @return The enclosingSymbol.
*/
java.lang.String getEnclosingSymbol();
/**
* <pre>
* (optional) The enclosing symbol if this is a local symbol. For non-local
* symbols, the enclosing symbol should be parsed from the `symbol` field
* using the `Descriptor` grammar.
* The primary use-case for this field is to allow local symbol to be displayed
* in a symbol hierarchy for API documentation. It's OK to leave this field
* empty for local variables since local variables usually don't belong in API
* documentation. However, in the situation that you wish to include a local
* symbol in the hierarchy, then you can use `enclosing_symbol` to locate the
* "parent" or "owner" of this local symbol. For example, a Java indexer may
* choose to use local symbols for private class fields while providing an
* `enclosing_symbol` to reference the enclosing class to allow the field to
* be part of the class documentation hierarchy. From the perspective of an
* author of an indexer, the decision to use a local symbol or global symbol
* should exclusively be determined whether the local symbol is accessible
* outside the document, not by the capability to find the enclosing
* symbol.
* </pre>
*
* <code>string enclosing_symbol = 8;</code>
* @return The bytes for enclosingSymbol.
*/
com.google.protobuf.ByteString
getEnclosingSymbolBytes();
}
/**
* <pre>
* SymbolInformation defines metadata about a symbol, such as the symbol's
* docstring or what package it's defined it.
* </pre>
*
* Protobuf type {@code scip.SymbolInformation}
*/
public static final class SymbolInformation extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.SymbolInformation)
SymbolInformationOrBuilder {
private static final long serialVersionUID = 0L;
// Use SymbolInformation.newBuilder() to construct.
private SymbolInformation(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private SymbolInformation() {
symbol_ = "";
documentation_ = com.google.protobuf.LazyStringArrayList.EMPTY;
relationships_ = java.util.Collections.emptyList();
kind_ = 0;
displayName_ = "";
enclosingSymbol_ = "";
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new SymbolInformation();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private SymbolInformation(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 10: {
java.lang.String s = input.readStringRequireUtf8();
symbol_ = s;
break;
}
case 26: {
java.lang.String s = input.readStringRequireUtf8();
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
documentation_ = new com.google.protobuf.LazyStringArrayList();
mutable_bitField0_ |= 0x00000001;
}
documentation_.add(s);
break;
}
case 34: {
if (!((mutable_bitField0_ & 0x00000002) != 0)) {
relationships_ = new java.util.ArrayList<scip.Scip.Relationship>();
mutable_bitField0_ |= 0x00000002;
}
relationships_.add(
input.readMessage(scip.Scip.Relationship.parser(), extensionRegistry));
break;
}
case 40: {
int rawValue = input.readEnum();
kind_ = rawValue;
break;
}
case 50: {
java.lang.String s = input.readStringRequireUtf8();
displayName_ = s;
break;
}
case 58: {
scip.Scip.Document.Builder subBuilder = null;
if (signatureDocumentation_ != null) {
subBuilder = signatureDocumentation_.toBuilder();
}
signatureDocumentation_ = input.readMessage(scip.Scip.Document.parser(), extensionRegistry);
if (subBuilder != null) {
subBuilder.mergeFrom(signatureDocumentation_);
signatureDocumentation_ = subBuilder.buildPartial();
}
break;
}
case 66: {
java.lang.String s = input.readStringRequireUtf8();
enclosingSymbol_ = s;
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000001) != 0)) {
documentation_ = documentation_.getUnmodifiableView();
}
if (((mutable_bitField0_ & 0x00000002) != 0)) {
relationships_ = java.util.Collections.unmodifiableList(relationships_);
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_SymbolInformation_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_SymbolInformation_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.SymbolInformation.class, scip.Scip.SymbolInformation.Builder.class);
}
/**
* <pre>
* (optional) Kind represents the fine-grained category of a symbol, suitable for presenting
* information about the symbol's meaning in the language.
* For example:
* - A Java method would have the kind `Method` while a Go function would
* have the kind `Function`, even if the symbols for these use the same
* syntax for the descriptor `SymbolDescriptor.Suffix.Method`.
* - A Go struct has the symbol kind `Struct` while a Java class has
* the symbol kind `Class` even if they both have the same descriptor:
* `SymbolDescriptor.Suffix.Type`.
* Since Kind is more fine-grained than Suffix:
* - If two symbols have the same Kind, they should share the same Suffix.
* - If two symbols have different Suffixes, they should have different Kinds.
* </pre>
*
* Protobuf enum {@code scip.SymbolInformation.Kind}
*/
public enum Kind
implements com.google.protobuf.ProtocolMessageEnum {
/**
* <code>UnspecifiedKind = 0;</code>
*/
UnspecifiedKind(0),
/**
* <pre>
* A method which may or may not have a body. For Java, Kotlin etc.
* </pre>
*
* <code>AbstractMethod = 66;</code>
*/
AbstractMethod(66),
/**
* <pre>
* For Ruby's attr_accessor
* </pre>
*
* <code>Accessor = 72;</code>
*/
Accessor(72),
/**
* <code>Array = 1;</code>
*/
Array(1),
/**
* <pre>
* For Alloy
* </pre>
*
* <code>Assertion = 2;</code>
*/
Assertion(2),
/**
* <code>AssociatedType = 3;</code>
*/
AssociatedType(3),
/**
* <pre>
* For C++
* </pre>
*
* <code>Attribute = 4;</code>
*/
Attribute(4),
/**
* <pre>
* For Lean
* </pre>
*
* <code>Axiom = 5;</code>
*/
Axiom(5),
/**
* <code>Boolean = 6;</code>
*/
Boolean(6),
/**
* <code>Class = 7;</code>
*/
Class(7),
/**
* <pre>
* For C++
* </pre>
*
* <code>Concept = 86;</code>
*/
Concept(86),
/**
* <code>Constant = 8;</code>
*/
Constant(8),
/**
* <code>Constructor = 9;</code>
*/
Constructor(9),
/**
* <pre>
* For Solidity
* </pre>
*
* <code>Contract = 62;</code>
*/
Contract(62),
/**
* <pre>
* For Haskell
* </pre>
*
* <code>DataFamily = 10;</code>
*/
DataFamily(10),
/**
* <pre>
* For C# and F#
* </pre>
*
* <code>Delegate = 73;</code>
*/
Delegate(73),
/**
* <code>Enum = 11;</code>
*/
Enum(11),
/**
* <code>EnumMember = 12;</code>
*/
EnumMember(12),
/**
* <code>Error = 63;</code>
*/
Error(63),
/**
* <code>Event = 13;</code>
*/
Event(13),
/**
* <pre>
* For Dart
* </pre>
*
* <code>Extension = 84;</code>
*/
Extension(84),
/**
* <pre>
* For Alloy
* </pre>
*
* <code>Fact = 14;</code>
*/
Fact(14),
/**
* <code>Field = 15;</code>
*/
Field(15),
/**
* <code>File = 16;</code>
*/
File(16),
/**
* <code>Function = 17;</code>
*/
Function(17),
/**
* <pre>
* For 'get' in Swift, 'attr_reader' in Ruby
* </pre>
*
* <code>Getter = 18;</code>
*/
Getter(18),
/**
* <pre>
* For Raku
* </pre>
*
* <code>Grammar = 19;</code>
*/
Grammar(19),
/**
* <pre>
* For Purescript and Lean
* </pre>
*
* <code>Instance = 20;</code>
*/
Instance(20),
/**
* <code>Interface = 21;</code>
*/
Interface(21),
/**
* <code>Key = 22;</code>
*/
Key(22),
/**
* <pre>
* For Racket
* </pre>
*
* <code>Lang = 23;</code>
*/
Lang(23),
/**
* <pre>
* For Lean
* </pre>
*
* <code>Lemma = 24;</code>
*/
Lemma(24),
/**
* <pre>
* For solidity
* </pre>
*
* <code>Library = 64;</code>
*/
Library(64),
/**
* <code>Macro = 25;</code>
*/
Macro(25),
/**
* <code>Method = 26;</code>
*/
Method(26),
/**
* <pre>
* For Ruby
* </pre>
*
* <code>MethodAlias = 74;</code>
*/
MethodAlias(74),
/**
* <pre>
* Analogous to 'ThisParameter' and 'SelfParameter', but for languages
* like Go where the receiver doesn't have a conventional name.
* </pre>
*
* <code>MethodReceiver = 27;</code>
*/
MethodReceiver(27),
/**
* <pre>
* Analogous to 'AbstractMethod', for Go.
* </pre>
*
* <code>MethodSpecification = 67;</code>
*/
MethodSpecification(67),
/**
* <pre>
* For Protobuf
* </pre>
*
* <code>Message = 28;</code>
*/
Message(28),
/**
* <pre>
* For Dart
* </pre>
*
* <code>Mixin = 85;</code>
*/
Mixin(85),
/**
* <pre>
* For Solidity
* </pre>
*
* <code>Modifier = 65;</code>
*/
Modifier(65),
/**
* <code>Module = 29;</code>
*/
Module(29),
/**
* <code>Namespace = 30;</code>
*/
Namespace(30),
/**
* <code>Null = 31;</code>
*/
Null(31),
/**
* <code>Number = 32;</code>
*/
Number(32),
/**
* <code>Object = 33;</code>
*/
Object(33),
/**
* <code>Operator = 34;</code>
*/
Operator(34),
/**
* <code>Package = 35;</code>
*/
Package(35),
/**
* <code>PackageObject = 36;</code>
*/
PackageObject(36),
/**
* <code>Parameter = 37;</code>
*/
Parameter(37),
/**
* <code>ParameterLabel = 38;</code>
*/
ParameterLabel(38),
/**
* <pre>
* For Haskell's PatternSynonyms
* </pre>
*
* <code>Pattern = 39;</code>
*/
Pattern(39),
/**
* <pre>
* For Alloy
* </pre>
*
* <code>Predicate = 40;</code>
*/
Predicate(40),
/**
* <code>Property = 41;</code>
*/
Property(41),
/**
* <pre>
* Analogous to 'Trait' and 'TypeClass', for Swift and Objective-C
* </pre>
*
* <code>Protocol = 42;</code>
*/
Protocol(42),
/**
* <pre>
* Analogous to 'AbstractMethod', for Swift and Objective-C.
* </pre>
*
* <code>ProtocolMethod = 68;</code>
*/
ProtocolMethod(68),
/**
* <pre>
* Analogous to 'AbstractMethod', for C++.
* </pre>
*
* <code>PureVirtualMethod = 69;</code>
*/
PureVirtualMethod(69),
/**
* <pre>
* For Haskell
* </pre>
*
* <code>Quasiquoter = 43;</code>
*/
Quasiquoter(43),
/**
* <pre>
* 'self' in Python, Rust, Swift etc.
* </pre>
*
* <code>SelfParameter = 44;</code>
*/
SelfParameter(44),
/**
* <pre>
* For 'set' in Swift, 'attr_writer' in Ruby
* </pre>
*
* <code>Setter = 45;</code>
*/
Setter(45),
/**
* <pre>
* For Alloy, analogous to 'Struct'.
* </pre>
*
* <code>Signature = 46;</code>
*/
Signature(46),
/**
* <pre>
* For Ruby
* </pre>
*
* <code>SingletonClass = 75;</code>
*/
SingletonClass(75),
/**
* <pre>
* Analogous to 'StaticMethod', for Ruby.
* </pre>
*
* <code>SingletonMethod = 76;</code>
*/
SingletonMethod(76),
/**
* <pre>
* Analogous to 'StaticField', for C++
* </pre>
*
* <code>StaticDataMember = 77;</code>
*/
StaticDataMember(77),
/**
* <pre>
* For C#
* </pre>
*
* <code>StaticEvent = 78;</code>
*/
StaticEvent(78),
/**
* <pre>
* For C#
* </pre>
*
* <code>StaticField = 79;</code>
*/
StaticField(79),
/**
* <pre>
* For Java, C#, C++ etc.
* </pre>
*
* <code>StaticMethod = 80;</code>
*/
StaticMethod(80),
/**
* <pre>
* For C#, TypeScript etc.
* </pre>
*
* <code>StaticProperty = 81;</code>
*/
StaticProperty(81),
/**
* <pre>
* For C, C++
* </pre>
*
* <code>StaticVariable = 82;</code>
*/
StaticVariable(82),
/**
* <code>String = 48;</code>
*/
String(48),
/**
* <code>Struct = 49;</code>
*/
Struct(49),
/**
* <pre>
* For Swift
* </pre>
*
* <code>Subscript = 47;</code>
*/
Subscript(47),
/**
* <pre>
* For Lean
* </pre>
*
* <code>Tactic = 50;</code>
*/
Tactic(50),
/**
* <pre>
* For Lean
* </pre>
*
* <code>Theorem = 51;</code>
*/
Theorem(51),
/**
* <pre>
* Method receiver for languages
* 'this' in JavaScript, C++, Java etc.
* </pre>
*
* <code>ThisParameter = 52;</code>
*/
ThisParameter(52),
/**
* <pre>
* Analogous to 'Protocol' and 'TypeClass', for Rust, Scala etc.
* </pre>
*
* <code>Trait = 53;</code>
*/
Trait(53),
/**
* <pre>
* Analogous to 'AbstractMethod', for Rust, Scala etc.
* </pre>
*
* <code>TraitMethod = 70;</code>
*/
TraitMethod(70),
/**
* <pre>
* Data type definition for languages like OCaml which use `type`
* rather than separate keywords like `struct` and `enum`.
* </pre>
*
* <code>Type = 54;</code>
*/
Type(54),
/**
* <code>TypeAlias = 55;</code>
*/
TypeAlias(55),
/**
* <pre>
* Analogous to 'Trait' and 'Protocol', for Haskell, Purescript etc.
* </pre>
*
* <code>TypeClass = 56;</code>
*/
TypeClass(56),
/**
* <pre>
* Analogous to 'AbstractMethod', for Haskell, Purescript etc.
* </pre>
*
* <code>TypeClassMethod = 71;</code>
*/
TypeClassMethod(71),
/**
* <pre>
* For Haskell
* </pre>
*
* <code>TypeFamily = 57;</code>
*/
TypeFamily(57),
/**
* <code>TypeParameter = 58;</code>
*/
TypeParameter(58),
/**
* <pre>
* For C, C++, Capn Proto
* </pre>
*
* <code>Union = 59;</code>
*/
Union(59),
/**
* <code>Value = 60;</code>
*/
Value(60),
/**
* <pre>
* Next = 87;
* Feel free to open a PR proposing new language-specific kinds.
* </pre>
*
* <code>Variable = 61;</code>
*/
Variable(61),
UNRECOGNIZED(-1),
;
/**
* <code>UnspecifiedKind = 0;</code>
*/
public static final int UnspecifiedKind_VALUE = 0;
/**
* <pre>
* A method which may or may not have a body. For Java, Kotlin etc.
* </pre>
*
* <code>AbstractMethod = 66;</code>
*/
public static final int AbstractMethod_VALUE = 66;
/**
* <pre>
* For Ruby's attr_accessor
* </pre>
*
* <code>Accessor = 72;</code>
*/
public static final int Accessor_VALUE = 72;
/**
* <code>Array = 1;</code>
*/
public static final int Array_VALUE = 1;
/**
* <pre>
* For Alloy
* </pre>
*
* <code>Assertion = 2;</code>
*/
public static final int Assertion_VALUE = 2;
/**
* <code>AssociatedType = 3;</code>
*/
public static final int AssociatedType_VALUE = 3;
/**
* <pre>
* For C++
* </pre>
*
* <code>Attribute = 4;</code>
*/
public static final int Attribute_VALUE = 4;
/**
* <pre>
* For Lean
* </pre>
*
* <code>Axiom = 5;</code>
*/
public static final int Axiom_VALUE = 5;
/**
* <code>Boolean = 6;</code>
*/
public static final int Boolean_VALUE = 6;
/**
* <code>Class = 7;</code>
*/
public static final int Class_VALUE = 7;
/**
* <pre>
* For C++
* </pre>
*
* <code>Concept = 86;</code>
*/
public static final int Concept_VALUE = 86;
/**
* <code>Constant = 8;</code>
*/
public static final int Constant_VALUE = 8;
/**
* <code>Constructor = 9;</code>
*/
public static final int Constructor_VALUE = 9;
/**
* <pre>
* For Solidity
* </pre>
*
* <code>Contract = 62;</code>
*/
public static final int Contract_VALUE = 62;
/**
* <pre>
* For Haskell
* </pre>
*
* <code>DataFamily = 10;</code>
*/
public static final int DataFamily_VALUE = 10;
/**
* <pre>
* For C# and F#
* </pre>
*
* <code>Delegate = 73;</code>
*/
public static final int Delegate_VALUE = 73;
/**
* <code>Enum = 11;</code>
*/
public static final int Enum_VALUE = 11;
/**
* <code>EnumMember = 12;</code>
*/
public static final int EnumMember_VALUE = 12;
/**
* <code>Error = 63;</code>
*/
public static final int Error_VALUE = 63;
/**
* <code>Event = 13;</code>
*/
public static final int Event_VALUE = 13;
/**
* <pre>
* For Dart
* </pre>
*
* <code>Extension = 84;</code>
*/
public static final int Extension_VALUE = 84;
/**
* <pre>
* For Alloy
* </pre>
*
* <code>Fact = 14;</code>
*/
public static final int Fact_VALUE = 14;
/**
* <code>Field = 15;</code>
*/
public static final int Field_VALUE = 15;
/**
* <code>File = 16;</code>
*/
public static final int File_VALUE = 16;
/**
* <code>Function = 17;</code>
*/
public static final int Function_VALUE = 17;
/**
* <pre>
* For 'get' in Swift, 'attr_reader' in Ruby
* </pre>
*
* <code>Getter = 18;</code>
*/
public static final int Getter_VALUE = 18;
/**
* <pre>
* For Raku
* </pre>
*
* <code>Grammar = 19;</code>
*/
public static final int Grammar_VALUE = 19;
/**
* <pre>
* For Purescript and Lean
* </pre>
*
* <code>Instance = 20;</code>
*/
public static final int Instance_VALUE = 20;
/**
* <code>Interface = 21;</code>
*/
public static final int Interface_VALUE = 21;
/**
* <code>Key = 22;</code>
*/
public static final int Key_VALUE = 22;
/**
* <pre>
* For Racket
* </pre>
*
* <code>Lang = 23;</code>
*/
public static final int Lang_VALUE = 23;
/**
* <pre>
* For Lean
* </pre>
*
* <code>Lemma = 24;</code>
*/
public static final int Lemma_VALUE = 24;
/**
* <pre>
* For solidity
* </pre>
*
* <code>Library = 64;</code>
*/
public static final int Library_VALUE = 64;
/**
* <code>Macro = 25;</code>
*/
public static final int Macro_VALUE = 25;
/**
* <code>Method = 26;</code>
*/
public static final int Method_VALUE = 26;
/**
* <pre>
* For Ruby
* </pre>
*
* <code>MethodAlias = 74;</code>
*/
public static final int MethodAlias_VALUE = 74;
/**
* <pre>
* Analogous to 'ThisParameter' and 'SelfParameter', but for languages
* like Go where the receiver doesn't have a conventional name.
* </pre>
*
* <code>MethodReceiver = 27;</code>
*/
public static final int MethodReceiver_VALUE = 27;
/**
* <pre>
* Analogous to 'AbstractMethod', for Go.
* </pre>
*
* <code>MethodSpecification = 67;</code>
*/
public static final int MethodSpecification_VALUE = 67;
/**
* <pre>
* For Protobuf
* </pre>
*
* <code>Message = 28;</code>
*/
public static final int Message_VALUE = 28;
/**
* <pre>
* For Dart
* </pre>
*
* <code>Mixin = 85;</code>
*/
public static final int Mixin_VALUE = 85;
/**
* <pre>
* For Solidity
* </pre>
*
* <code>Modifier = 65;</code>
*/
public static final int Modifier_VALUE = 65;
/**
* <code>Module = 29;</code>
*/
public static final int Module_VALUE = 29;
/**
* <code>Namespace = 30;</code>
*/
public static final int Namespace_VALUE = 30;
/**
* <code>Null = 31;</code>
*/
public static final int Null_VALUE = 31;
/**
* <code>Number = 32;</code>
*/
public static final int Number_VALUE = 32;
/**
* <code>Object = 33;</code>
*/
public static final int Object_VALUE = 33;
/**
* <code>Operator = 34;</code>
*/
public static final int Operator_VALUE = 34;
/**
* <code>Package = 35;</code>
*/
public static final int Package_VALUE = 35;
/**
* <code>PackageObject = 36;</code>
*/
public static final int PackageObject_VALUE = 36;
/**
* <code>Parameter = 37;</code>
*/
public static final int Parameter_VALUE = 37;
/**
* <code>ParameterLabel = 38;</code>
*/
public static final int ParameterLabel_VALUE = 38;
/**
* <pre>
* For Haskell's PatternSynonyms
* </pre>
*
* <code>Pattern = 39;</code>
*/
public static final int Pattern_VALUE = 39;
/**
* <pre>
* For Alloy
* </pre>
*
* <code>Predicate = 40;</code>
*/
public static final int Predicate_VALUE = 40;
/**
* <code>Property = 41;</code>
*/
public static final int Property_VALUE = 41;
/**
* <pre>
* Analogous to 'Trait' and 'TypeClass', for Swift and Objective-C
* </pre>
*
* <code>Protocol = 42;</code>
*/
public static final int Protocol_VALUE = 42;
/**
* <pre>
* Analogous to 'AbstractMethod', for Swift and Objective-C.
* </pre>
*
* <code>ProtocolMethod = 68;</code>
*/
public static final int ProtocolMethod_VALUE = 68;
/**
* <pre>
* Analogous to 'AbstractMethod', for C++.
* </pre>
*
* <code>PureVirtualMethod = 69;</code>
*/
public static final int PureVirtualMethod_VALUE = 69;
/**
* <pre>
* For Haskell
* </pre>
*
* <code>Quasiquoter = 43;</code>
*/
public static final int Quasiquoter_VALUE = 43;
/**
* <pre>
* 'self' in Python, Rust, Swift etc.
* </pre>
*
* <code>SelfParameter = 44;</code>
*/
public static final int SelfParameter_VALUE = 44;
/**
* <pre>
* For 'set' in Swift, 'attr_writer' in Ruby
* </pre>
*
* <code>Setter = 45;</code>
*/
public static final int Setter_VALUE = 45;
/**
* <pre>
* For Alloy, analogous to 'Struct'.
* </pre>
*
* <code>Signature = 46;</code>
*/
public static final int Signature_VALUE = 46;
/**
* <pre>
* For Ruby
* </pre>
*
* <code>SingletonClass = 75;</code>
*/
public static final int SingletonClass_VALUE = 75;
/**
* <pre>
* Analogous to 'StaticMethod', for Ruby.
* </pre>
*
* <code>SingletonMethod = 76;</code>
*/
public static final int SingletonMethod_VALUE = 76;
/**
* <pre>
* Analogous to 'StaticField', for C++
* </pre>
*
* <code>StaticDataMember = 77;</code>
*/
public static final int StaticDataMember_VALUE = 77;
/**
* <pre>
* For C#
* </pre>
*
* <code>StaticEvent = 78;</code>
*/
public static final int StaticEvent_VALUE = 78;
/**
* <pre>
* For C#
* </pre>
*
* <code>StaticField = 79;</code>
*/
public static final int StaticField_VALUE = 79;
/**
* <pre>
* For Java, C#, C++ etc.
* </pre>
*
* <code>StaticMethod = 80;</code>
*/
public static final int StaticMethod_VALUE = 80;
/**
* <pre>
* For C#, TypeScript etc.
* </pre>
*
* <code>StaticProperty = 81;</code>
*/
public static final int StaticProperty_VALUE = 81;
/**
* <pre>
* For C, C++
* </pre>
*
* <code>StaticVariable = 82;</code>
*/
public static final int StaticVariable_VALUE = 82;
/**
* <code>String = 48;</code>
*/
public static final int String_VALUE = 48;
/**
* <code>Struct = 49;</code>
*/
public static final int Struct_VALUE = 49;
/**
* <pre>
* For Swift
* </pre>
*
* <code>Subscript = 47;</code>
*/
public static final int Subscript_VALUE = 47;
/**
* <pre>
* For Lean
* </pre>
*
* <code>Tactic = 50;</code>
*/
public static final int Tactic_VALUE = 50;
/**
* <pre>
* For Lean
* </pre>
*
* <code>Theorem = 51;</code>
*/
public static final int Theorem_VALUE = 51;
/**
* <pre>
* Method receiver for languages
* 'this' in JavaScript, C++, Java etc.
* </pre>
*
* <code>ThisParameter = 52;</code>
*/
public static final int ThisParameter_VALUE = 52;
/**
* <pre>
* Analogous to 'Protocol' and 'TypeClass', for Rust, Scala etc.
* </pre>
*
* <code>Trait = 53;</code>
*/
public static final int Trait_VALUE = 53;
/**
* <pre>
* Analogous to 'AbstractMethod', for Rust, Scala etc.
* </pre>
*
* <code>TraitMethod = 70;</code>
*/
public static final int TraitMethod_VALUE = 70;
/**
* <pre>
* Data type definition for languages like OCaml which use `type`
* rather than separate keywords like `struct` and `enum`.
* </pre>
*
* <code>Type = 54;</code>
*/
public static final int Type_VALUE = 54;
/**
* <code>TypeAlias = 55;</code>
*/
public static final int TypeAlias_VALUE = 55;
/**
* <pre>
* Analogous to 'Trait' and 'Protocol', for Haskell, Purescript etc.
* </pre>
*
* <code>TypeClass = 56;</code>
*/
public static final int TypeClass_VALUE = 56;
/**
* <pre>
* Analogous to 'AbstractMethod', for Haskell, Purescript etc.
* </pre>
*
* <code>TypeClassMethod = 71;</code>
*/
public static final int TypeClassMethod_VALUE = 71;
/**
* <pre>
* For Haskell
* </pre>
*
* <code>TypeFamily = 57;</code>
*/
public static final int TypeFamily_VALUE = 57;
/**
* <code>TypeParameter = 58;</code>
*/
public static final int TypeParameter_VALUE = 58;
/**
* <pre>
* For C, C++, Capn Proto
* </pre>
*
* <code>Union = 59;</code>
*/
public static final int Union_VALUE = 59;
/**
* <code>Value = 60;</code>
*/
public static final int Value_VALUE = 60;
/**
* <pre>
* Next = 87;
* Feel free to open a PR proposing new language-specific kinds.
* </pre>
*
* <code>Variable = 61;</code>
*/
public static final int Variable_VALUE = 61;
public final int getNumber() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalArgumentException(
"Can't get the number of an unknown enum value.");
}
return value;
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
* @deprecated Use {@link #forNumber(int)} instead.
*/
@java.lang.Deprecated
public static Kind valueOf(int value) {
return forNumber(value);
}
/**
* @param value The numeric wire value of the corresponding enum entry.
* @return The enum associated with the given numeric wire value.
*/
public static Kind forNumber(int value) {
switch (value) {
case 0: return UnspecifiedKind;
case 66: return AbstractMethod;
case 72: return Accessor;
case 1: return Array;
case 2: return Assertion;
case 3: return AssociatedType;
case 4: return Attribute;
case 5: return Axiom;
case 6: return Boolean;
case 7: return Class;
case 86: return Concept;
case 8: return Constant;
case 9: return Constructor;
case 62: return Contract;
case 10: return DataFamily;
case 73: return Delegate;
case 11: return Enum;
case 12: return EnumMember;
case 63: return Error;
case 13: return Event;
case 84: return Extension;
case 14: return Fact;
case 15: return Field;
case 16: return File;
case 17: return Function;
case 18: return Getter;
case 19: return Grammar;
case 20: return Instance;
case 21: return Interface;
case 22: return Key;
case 23: return Lang;
case 24: return Lemma;
case 64: return Library;
case 25: return Macro;
case 26: return Method;
case 74: return MethodAlias;
case 27: return MethodReceiver;
case 67: return MethodSpecification;
case 28: return Message;
case 85: return Mixin;
case 65: return Modifier;
case 29: return Module;
case 30: return Namespace;
case 31: return Null;
case 32: return Number;
case 33: return Object;
case 34: return Operator;
case 35: return Package;
case 36: return PackageObject;
case 37: return Parameter;
case 38: return ParameterLabel;
case 39: return Pattern;
case 40: return Predicate;
case 41: return Property;
case 42: return Protocol;
case 68: return ProtocolMethod;
case 69: return PureVirtualMethod;
case 43: return Quasiquoter;
case 44: return SelfParameter;
case 45: return Setter;
case 46: return Signature;
case 75: return SingletonClass;
case 76: return SingletonMethod;
case 77: return StaticDataMember;
case 78: return StaticEvent;
case 79: return StaticField;
case 80: return StaticMethod;
case 81: return StaticProperty;
case 82: return StaticVariable;
case 48: return String;
case 49: return Struct;
case 47: return Subscript;
case 50: return Tactic;
case 51: return Theorem;
case 52: return ThisParameter;
case 53: return Trait;
case 70: return TraitMethod;
case 54: return Type;
case 55: return TypeAlias;
case 56: return TypeClass;
case 71: return TypeClassMethod;
case 57: return TypeFamily;
case 58: return TypeParameter;
case 59: return Union;
case 60: return Value;
case 61: return Variable;
default: return null;
}
}
public static com.google.protobuf.Internal.EnumLiteMap<Kind>
internalGetValueMap() {
return internalValueMap;
}
private static final com.google.protobuf.Internal.EnumLiteMap<
Kind> internalValueMap =
new com.google.protobuf.Internal.EnumLiteMap<Kind>() {
public Kind findValueByNumber(int number) {
return Kind.forNumber(number);
}
};
public final com.google.protobuf.Descriptors.EnumValueDescriptor
getValueDescriptor() {
if (this == UNRECOGNIZED) {
throw new java.lang.IllegalStateException(
"Can't get the descriptor of an unrecognized enum value.");
}
return getDescriptor().getValues().get(ordinal());
}
public final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptorForType() {
return getDescriptor();
}
public static final com.google.protobuf.Descriptors.EnumDescriptor
getDescriptor() {
return scip.Scip.SymbolInformation.getDescriptor().getEnumTypes().get(0);
}
private static final Kind[] VALUES = values();
public static Kind valueOf(
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
if (desc.getType() != getDescriptor()) {
throw new java.lang.IllegalArgumentException(
"EnumValueDescriptor is not for this type.");
}
if (desc.getIndex() == -1) {
return UNRECOGNIZED;
}
return VALUES[desc.getIndex()];
}
private final int value;
private Kind(int value) {
this.value = value;
}
// @@protoc_insertion_point(enum_scope:scip.SymbolInformation.Kind)
}
public static final int SYMBOL_FIELD_NUMBER = 1;
private volatile java.lang.Object symbol_;
/**
* <pre>
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
* </pre>
*
* <code>string symbol = 1;</code>
* @return The symbol.
*/
@java.lang.Override
public java.lang.String getSymbol() {
java.lang.Object ref = symbol_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
symbol_ = s;
return s;
}
}
/**
* <pre>
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
* </pre>
*
* <code>string symbol = 1;</code>
* @return The bytes for symbol.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getSymbolBytes() {
java.lang.Object ref = symbol_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
symbol_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int DOCUMENTATION_FIELD_NUMBER = 3;
private com.google.protobuf.LazyStringList documentation_;
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @return A list containing the documentation.
*/
public com.google.protobuf.ProtocolStringList
getDocumentationList() {
return documentation_;
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @return The count of documentation.
*/
public int getDocumentationCount() {
return documentation_.size();
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @param index The index of the element to return.
* @return The documentation at the given index.
*/
public java.lang.String getDocumentation(int index) {
return documentation_.get(index);
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @param index The index of the value to return.
* @return The bytes of the documentation at the given index.
*/
public com.google.protobuf.ByteString
getDocumentationBytes(int index) {
return documentation_.getByteString(index);
}
public static final int RELATIONSHIPS_FIELD_NUMBER = 4;
private java.util.List<scip.Scip.Relationship> relationships_;
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
@java.lang.Override
public java.util.List<scip.Scip.Relationship> getRelationshipsList() {
return relationships_;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
@java.lang.Override
public java.util.List<? extends scip.Scip.RelationshipOrBuilder>
getRelationshipsOrBuilderList() {
return relationships_;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
@java.lang.Override
public int getRelationshipsCount() {
return relationships_.size();
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
@java.lang.Override
public scip.Scip.Relationship getRelationships(int index) {
return relationships_.get(index);
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
@java.lang.Override
public scip.Scip.RelationshipOrBuilder getRelationshipsOrBuilder(
int index) {
return relationships_.get(index);
}
public static final int KIND_FIELD_NUMBER = 5;
private int kind_;
/**
* <pre>
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
* </pre>
*
* <code>.scip.SymbolInformation.Kind kind = 5;</code>
* @return The enum numeric value on the wire for kind.
*/
@java.lang.Override public int getKindValue() {
return kind_;
}
/**
* <pre>
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
* </pre>
*
* <code>.scip.SymbolInformation.Kind kind = 5;</code>
* @return The kind.
*/
@java.lang.Override public scip.Scip.SymbolInformation.Kind getKind() {
@SuppressWarnings("deprecation")
scip.Scip.SymbolInformation.Kind result = scip.Scip.SymbolInformation.Kind.valueOf(kind_);
return result == null ? scip.Scip.SymbolInformation.Kind.UNRECOGNIZED : result;
}
public static final int DISPLAY_NAME_FIELD_NUMBER = 6;
private volatile java.lang.Object displayName_;
/**
* <pre>
* (optional) The name of this symbol as it should be displayed to the user.
* For example, the symbol "com/example/MyClass#myMethod(+1)." should have the
* display name "myMethod". The `symbol` field is not a reliable source of
* the display name for several reasons:
* - Local symbols don't encode the name.
* - Some languages have case-insensitive names, so the symbol is all-lowercase.
* - The symbol may encode names with special characters that should not be
* displayed to the user.
* </pre>
*
* <code>string display_name = 6;</code>
* @return The displayName.
*/
@java.lang.Override
public java.lang.String getDisplayName() {
java.lang.Object ref = displayName_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
displayName_ = s;
return s;
}
}
/**
* <pre>
* (optional) The name of this symbol as it should be displayed to the user.
* For example, the symbol "com/example/MyClass#myMethod(+1)." should have the
* display name "myMethod". The `symbol` field is not a reliable source of
* the display name for several reasons:
* - Local symbols don't encode the name.
* - Some languages have case-insensitive names, so the symbol is all-lowercase.
* - The symbol may encode names with special characters that should not be
* displayed to the user.
* </pre>
*
* <code>string display_name = 6;</code>
* @return The bytes for displayName.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getDisplayNameBytes() {
java.lang.Object ref = displayName_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
displayName_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int SIGNATURE_DOCUMENTATION_FIELD_NUMBER = 7;
private scip.Scip.Document signatureDocumentation_;
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
* @return Whether the signatureDocumentation field is set.
*/
@java.lang.Override
public boolean hasSignatureDocumentation() {
return signatureDocumentation_ != null;
}
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
* @return The signatureDocumentation.
*/
@java.lang.Override
public scip.Scip.Document getSignatureDocumentation() {
return signatureDocumentation_ == null ? scip.Scip.Document.getDefaultInstance() : signatureDocumentation_;
}
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
*/
@java.lang.Override
public scip.Scip.DocumentOrBuilder getSignatureDocumentationOrBuilder() {
return getSignatureDocumentation();
}
public static final int ENCLOSING_SYMBOL_FIELD_NUMBER = 8;
private volatile java.lang.Object enclosingSymbol_;
/**
* <pre>
* (optional) The enclosing symbol if this is a local symbol. For non-local
* symbols, the enclosing symbol should be parsed from the `symbol` field
* using the `Descriptor` grammar.
* The primary use-case for this field is to allow local symbol to be displayed
* in a symbol hierarchy for API documentation. It's OK to leave this field
* empty for local variables since local variables usually don't belong in API
* documentation. However, in the situation that you wish to include a local
* symbol in the hierarchy, then you can use `enclosing_symbol` to locate the
* "parent" or "owner" of this local symbol. For example, a Java indexer may
* choose to use local symbols for private class fields while providing an
* `enclosing_symbol` to reference the enclosing class to allow the field to
* be part of the class documentation hierarchy. From the perspective of an
* author of an indexer, the decision to use a local symbol or global symbol
* should exclusively be determined whether the local symbol is accessible
* outside the document, not by the capability to find the enclosing
* symbol.
* </pre>
*
* <code>string enclosing_symbol = 8;</code>
* @return The enclosingSymbol.
*/
@java.lang.Override
public java.lang.String getEnclosingSymbol() {
java.lang.Object ref = enclosingSymbol_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
enclosingSymbol_ = s;
return s;
}
}
/**
* <pre>
* (optional) The enclosing symbol if this is a local symbol. For non-local
* symbols, the enclosing symbol should be parsed from the `symbol` field
* using the `Descriptor` grammar.
* The primary use-case for this field is to allow local symbol to be displayed
* in a symbol hierarchy for API documentation. It's OK to leave this field
* empty for local variables since local variables usually don't belong in API
* documentation. However, in the situation that you wish to include a local
* symbol in the hierarchy, then you can use `enclosing_symbol` to locate the
* "parent" or "owner" of this local symbol. For example, a Java indexer may
* choose to use local symbols for private class fields while providing an
* `enclosing_symbol` to reference the enclosing class to allow the field to
* be part of the class documentation hierarchy. From the perspective of an
* author of an indexer, the decision to use a local symbol or global symbol
* should exclusively be determined whether the local symbol is accessible
* outside the document, not by the capability to find the enclosing
* symbol.
* </pre>
*
* <code>string enclosing_symbol = 8;</code>
* @return The bytes for enclosingSymbol.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getEnclosingSymbolBytes() {
java.lang.Object ref = enclosingSymbol_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
enclosingSymbol_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (!getSymbolBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 1, symbol_);
}
for (int i = 0; i < documentation_.size(); i++) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 3, documentation_.getRaw(i));
}
for (int i = 0; i < relationships_.size(); i++) {
output.writeMessage(4, relationships_.get(i));
}
if (kind_ != scip.Scip.SymbolInformation.Kind.UnspecifiedKind.getNumber()) {
output.writeEnum(5, kind_);
}
if (!getDisplayNameBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 6, displayName_);
}
if (signatureDocumentation_ != null) {
output.writeMessage(7, getSignatureDocumentation());
}
if (!getEnclosingSymbolBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 8, enclosingSymbol_);
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (!getSymbolBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, symbol_);
}
{
int dataSize = 0;
for (int i = 0; i < documentation_.size(); i++) {
dataSize += computeStringSizeNoTag(documentation_.getRaw(i));
}
size += dataSize;
size += 1 * getDocumentationList().size();
}
for (int i = 0; i < relationships_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(4, relationships_.get(i));
}
if (kind_ != scip.Scip.SymbolInformation.Kind.UnspecifiedKind.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(5, kind_);
}
if (!getDisplayNameBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, displayName_);
}
if (signatureDocumentation_ != null) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(7, getSignatureDocumentation());
}
if (!getEnclosingSymbolBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, enclosingSymbol_);
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.SymbolInformation)) {
return super.equals(obj);
}
scip.Scip.SymbolInformation other = (scip.Scip.SymbolInformation) obj;
if (!getSymbol()
.equals(other.getSymbol())) return false;
if (!getDocumentationList()
.equals(other.getDocumentationList())) return false;
if (!getRelationshipsList()
.equals(other.getRelationshipsList())) return false;
if (kind_ != other.kind_) return false;
if (!getDisplayName()
.equals(other.getDisplayName())) return false;
if (hasSignatureDocumentation() != other.hasSignatureDocumentation()) return false;
if (hasSignatureDocumentation()) {
if (!getSignatureDocumentation()
.equals(other.getSignatureDocumentation())) return false;
}
if (!getEnclosingSymbol()
.equals(other.getEnclosingSymbol())) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + SYMBOL_FIELD_NUMBER;
hash = (53 * hash) + getSymbol().hashCode();
if (getDocumentationCount() > 0) {
hash = (37 * hash) + DOCUMENTATION_FIELD_NUMBER;
hash = (53 * hash) + getDocumentationList().hashCode();
}
if (getRelationshipsCount() > 0) {
hash = (37 * hash) + RELATIONSHIPS_FIELD_NUMBER;
hash = (53 * hash) + getRelationshipsList().hashCode();
}
hash = (37 * hash) + KIND_FIELD_NUMBER;
hash = (53 * hash) + kind_;
hash = (37 * hash) + DISPLAY_NAME_FIELD_NUMBER;
hash = (53 * hash) + getDisplayName().hashCode();
if (hasSignatureDocumentation()) {
hash = (37 * hash) + SIGNATURE_DOCUMENTATION_FIELD_NUMBER;
hash = (53 * hash) + getSignatureDocumentation().hashCode();
}
hash = (37 * hash) + ENCLOSING_SYMBOL_FIELD_NUMBER;
hash = (53 * hash) + getEnclosingSymbol().hashCode();
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.SymbolInformation parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.SymbolInformation parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.SymbolInformation parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.SymbolInformation parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.SymbolInformation parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.SymbolInformation parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.SymbolInformation parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.SymbolInformation parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.SymbolInformation parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.SymbolInformation parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.SymbolInformation parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.SymbolInformation parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.SymbolInformation prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* <pre>
* SymbolInformation defines metadata about a symbol, such as the symbol's
* docstring or what package it's defined it.
* </pre>
*
* Protobuf type {@code scip.SymbolInformation}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.SymbolInformation)
scip.Scip.SymbolInformationOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_SymbolInformation_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_SymbolInformation_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.SymbolInformation.class, scip.Scip.SymbolInformation.Builder.class);
}
// Construct using scip.Scip.SymbolInformation.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
getRelationshipsFieldBuilder();
}
}
@java.lang.Override
public Builder clear() {
super.clear();
symbol_ = "";
documentation_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000001);
if (relationshipsBuilder_ == null) {
relationships_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
} else {
relationshipsBuilder_.clear();
}
kind_ = 0;
displayName_ = "";
if (signatureDocumentationBuilder_ == null) {
signatureDocumentation_ = null;
} else {
signatureDocumentation_ = null;
signatureDocumentationBuilder_ = null;
}
enclosingSymbol_ = "";
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_SymbolInformation_descriptor;
}
@java.lang.Override
public scip.Scip.SymbolInformation getDefaultInstanceForType() {
return scip.Scip.SymbolInformation.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.SymbolInformation build() {
scip.Scip.SymbolInformation result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.SymbolInformation buildPartial() {
scip.Scip.SymbolInformation result = new scip.Scip.SymbolInformation(this);
int from_bitField0_ = bitField0_;
result.symbol_ = symbol_;
if (((bitField0_ & 0x00000001) != 0)) {
documentation_ = documentation_.getUnmodifiableView();
bitField0_ = (bitField0_ & ~0x00000001);
}
result.documentation_ = documentation_;
if (relationshipsBuilder_ == null) {
if (((bitField0_ & 0x00000002) != 0)) {
relationships_ = java.util.Collections.unmodifiableList(relationships_);
bitField0_ = (bitField0_ & ~0x00000002);
}
result.relationships_ = relationships_;
} else {
result.relationships_ = relationshipsBuilder_.build();
}
result.kind_ = kind_;
result.displayName_ = displayName_;
if (signatureDocumentationBuilder_ == null) {
result.signatureDocumentation_ = signatureDocumentation_;
} else {
result.signatureDocumentation_ = signatureDocumentationBuilder_.build();
}
result.enclosingSymbol_ = enclosingSymbol_;
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.SymbolInformation) {
return mergeFrom((scip.Scip.SymbolInformation)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.SymbolInformation other) {
if (other == scip.Scip.SymbolInformation.getDefaultInstance()) return this;
if (!other.getSymbol().isEmpty()) {
symbol_ = other.symbol_;
onChanged();
}
if (!other.documentation_.isEmpty()) {
if (documentation_.isEmpty()) {
documentation_ = other.documentation_;
bitField0_ = (bitField0_ & ~0x00000001);
} else {
ensureDocumentationIsMutable();
documentation_.addAll(other.documentation_);
}
onChanged();
}
if (relationshipsBuilder_ == null) {
if (!other.relationships_.isEmpty()) {
if (relationships_.isEmpty()) {
relationships_ = other.relationships_;
bitField0_ = (bitField0_ & ~0x00000002);
} else {
ensureRelationshipsIsMutable();
relationships_.addAll(other.relationships_);
}
onChanged();
}
} else {
if (!other.relationships_.isEmpty()) {
if (relationshipsBuilder_.isEmpty()) {
relationshipsBuilder_.dispose();
relationshipsBuilder_ = null;
relationships_ = other.relationships_;
bitField0_ = (bitField0_ & ~0x00000002);
relationshipsBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getRelationshipsFieldBuilder() : null;
} else {
relationshipsBuilder_.addAllMessages(other.relationships_);
}
}
}
if (other.kind_ != 0) {
setKindValue(other.getKindValue());
}
if (!other.getDisplayName().isEmpty()) {
displayName_ = other.displayName_;
onChanged();
}
if (other.hasSignatureDocumentation()) {
mergeSignatureDocumentation(other.getSignatureDocumentation());
}
if (!other.getEnclosingSymbol().isEmpty()) {
enclosingSymbol_ = other.enclosingSymbol_;
onChanged();
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.SymbolInformation parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.SymbolInformation) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private java.lang.Object symbol_ = "";
/**
* <pre>
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
* </pre>
*
* <code>string symbol = 1;</code>
* @return The symbol.
*/
public java.lang.String getSymbol() {
java.lang.Object ref = symbol_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
symbol_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
* </pre>
*
* <code>string symbol = 1;</code>
* @return The bytes for symbol.
*/
public com.google.protobuf.ByteString
getSymbolBytes() {
java.lang.Object ref = symbol_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
symbol_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
* </pre>
*
* <code>string symbol = 1;</code>
* @param value The symbol to set.
* @return This builder for chaining.
*/
public Builder setSymbol(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
symbol_ = value;
onChanged();
return this;
}
/**
* <pre>
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
* </pre>
*
* <code>string symbol = 1;</code>
* @return This builder for chaining.
*/
public Builder clearSymbol() {
symbol_ = getDefaultInstance().getSymbol();
onChanged();
return this;
}
/**
* <pre>
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
* </pre>
*
* <code>string symbol = 1;</code>
* @param value The bytes for symbol to set.
* @return This builder for chaining.
*/
public Builder setSymbolBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
symbol_ = value;
onChanged();
return this;
}
private com.google.protobuf.LazyStringList documentation_ = com.google.protobuf.LazyStringArrayList.EMPTY;
private void ensureDocumentationIsMutable() {
if (!((bitField0_ & 0x00000001) != 0)) {
documentation_ = new com.google.protobuf.LazyStringArrayList(documentation_);
bitField0_ |= 0x00000001;
}
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @return A list containing the documentation.
*/
public com.google.protobuf.ProtocolStringList
getDocumentationList() {
return documentation_.getUnmodifiableView();
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @return The count of documentation.
*/
public int getDocumentationCount() {
return documentation_.size();
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @param index The index of the element to return.
* @return The documentation at the given index.
*/
public java.lang.String getDocumentation(int index) {
return documentation_.get(index);
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @param index The index of the value to return.
* @return The bytes of the documentation at the given index.
*/
public com.google.protobuf.ByteString
getDocumentationBytes(int index) {
return documentation_.getByteString(index);
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @param index The index to set the value at.
* @param value The documentation to set.
* @return This builder for chaining.
*/
public Builder setDocumentation(
int index, java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureDocumentationIsMutable();
documentation_.set(index, value);
onChanged();
return this;
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @param value The documentation to add.
* @return This builder for chaining.
*/
public Builder addDocumentation(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureDocumentationIsMutable();
documentation_.add(value);
onChanged();
return this;
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @param values The documentation to add.
* @return This builder for chaining.
*/
public Builder addAllDocumentation(
java.lang.Iterable<java.lang.String> values) {
ensureDocumentationIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, documentation_);
onChanged();
return this;
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @return This builder for chaining.
*/
public Builder clearDocumentation() {
documentation_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
return this;
}
/**
* <pre>
* (optional, but strongly recommended) The markdown-formatted documentation
* for this symbol. Use `SymbolInformation.signature_documentation` to
* document the method/class/type signature of this symbol.
* Due to historical reasons, indexers may include signature documentation in
* this field by rendering markdown code blocks. New indexers should only
* include non-code documentation in this field, for example docstrings.
* </pre>
*
* <code>repeated string documentation = 3;</code>
* @param value The bytes of the documentation to add.
* @return This builder for chaining.
*/
public Builder addDocumentationBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
ensureDocumentationIsMutable();
documentation_.add(value);
onChanged();
return this;
}
private java.util.List<scip.Scip.Relationship> relationships_ =
java.util.Collections.emptyList();
private void ensureRelationshipsIsMutable() {
if (!((bitField0_ & 0x00000002) != 0)) {
relationships_ = new java.util.ArrayList<scip.Scip.Relationship>(relationships_);
bitField0_ |= 0x00000002;
}
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Relationship, scip.Scip.Relationship.Builder, scip.Scip.RelationshipOrBuilder> relationshipsBuilder_;
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public java.util.List<scip.Scip.Relationship> getRelationshipsList() {
if (relationshipsBuilder_ == null) {
return java.util.Collections.unmodifiableList(relationships_);
} else {
return relationshipsBuilder_.getMessageList();
}
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public int getRelationshipsCount() {
if (relationshipsBuilder_ == null) {
return relationships_.size();
} else {
return relationshipsBuilder_.getCount();
}
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public scip.Scip.Relationship getRelationships(int index) {
if (relationshipsBuilder_ == null) {
return relationships_.get(index);
} else {
return relationshipsBuilder_.getMessage(index);
}
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public Builder setRelationships(
int index, scip.Scip.Relationship value) {
if (relationshipsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureRelationshipsIsMutable();
relationships_.set(index, value);
onChanged();
} else {
relationshipsBuilder_.setMessage(index, value);
}
return this;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public Builder setRelationships(
int index, scip.Scip.Relationship.Builder builderForValue) {
if (relationshipsBuilder_ == null) {
ensureRelationshipsIsMutable();
relationships_.set(index, builderForValue.build());
onChanged();
} else {
relationshipsBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public Builder addRelationships(scip.Scip.Relationship value) {
if (relationshipsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureRelationshipsIsMutable();
relationships_.add(value);
onChanged();
} else {
relationshipsBuilder_.addMessage(value);
}
return this;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public Builder addRelationships(
int index, scip.Scip.Relationship value) {
if (relationshipsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureRelationshipsIsMutable();
relationships_.add(index, value);
onChanged();
} else {
relationshipsBuilder_.addMessage(index, value);
}
return this;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public Builder addRelationships(
scip.Scip.Relationship.Builder builderForValue) {
if (relationshipsBuilder_ == null) {
ensureRelationshipsIsMutable();
relationships_.add(builderForValue.build());
onChanged();
} else {
relationshipsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public Builder addRelationships(
int index, scip.Scip.Relationship.Builder builderForValue) {
if (relationshipsBuilder_ == null) {
ensureRelationshipsIsMutable();
relationships_.add(index, builderForValue.build());
onChanged();
} else {
relationshipsBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public Builder addAllRelationships(
java.lang.Iterable<? extends scip.Scip.Relationship> values) {
if (relationshipsBuilder_ == null) {
ensureRelationshipsIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, relationships_);
onChanged();
} else {
relationshipsBuilder_.addAllMessages(values);
}
return this;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public Builder clearRelationships() {
if (relationshipsBuilder_ == null) {
relationships_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
onChanged();
} else {
relationshipsBuilder_.clear();
}
return this;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public Builder removeRelationships(int index) {
if (relationshipsBuilder_ == null) {
ensureRelationshipsIsMutable();
relationships_.remove(index);
onChanged();
} else {
relationshipsBuilder_.remove(index);
}
return this;
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public scip.Scip.Relationship.Builder getRelationshipsBuilder(
int index) {
return getRelationshipsFieldBuilder().getBuilder(index);
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public scip.Scip.RelationshipOrBuilder getRelationshipsOrBuilder(
int index) {
if (relationshipsBuilder_ == null) {
return relationships_.get(index); } else {
return relationshipsBuilder_.getMessageOrBuilder(index);
}
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public java.util.List<? extends scip.Scip.RelationshipOrBuilder>
getRelationshipsOrBuilderList() {
if (relationshipsBuilder_ != null) {
return relationshipsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(relationships_);
}
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public scip.Scip.Relationship.Builder addRelationshipsBuilder() {
return getRelationshipsFieldBuilder().addBuilder(
scip.Scip.Relationship.getDefaultInstance());
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public scip.Scip.Relationship.Builder addRelationshipsBuilder(
int index) {
return getRelationshipsFieldBuilder().addBuilder(
index, scip.Scip.Relationship.getDefaultInstance());
}
/**
* <pre>
* (optional) Relationships to other symbols (e.g., implements, type definition).
* </pre>
*
* <code>repeated .scip.Relationship relationships = 4;</code>
*/
public java.util.List<scip.Scip.Relationship.Builder>
getRelationshipsBuilderList() {
return getRelationshipsFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Relationship, scip.Scip.Relationship.Builder, scip.Scip.RelationshipOrBuilder>
getRelationshipsFieldBuilder() {
if (relationshipsBuilder_ == null) {
relationshipsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Relationship, scip.Scip.Relationship.Builder, scip.Scip.RelationshipOrBuilder>(
relationships_,
((bitField0_ & 0x00000002) != 0),
getParentForChildren(),
isClean());
relationships_ = null;
}
return relationshipsBuilder_;
}
private int kind_ = 0;
/**
* <pre>
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
* </pre>
*
* <code>.scip.SymbolInformation.Kind kind = 5;</code>
* @return The enum numeric value on the wire for kind.
*/
@java.lang.Override public int getKindValue() {
return kind_;
}
/**
* <pre>
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
* </pre>
*
* <code>.scip.SymbolInformation.Kind kind = 5;</code>
* @param value The enum numeric value on the wire for kind to set.
* @return This builder for chaining.
*/
public Builder setKindValue(int value) {
kind_ = value;
onChanged();
return this;
}
/**
* <pre>
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
* </pre>
*
* <code>.scip.SymbolInformation.Kind kind = 5;</code>
* @return The kind.
*/
@java.lang.Override
public scip.Scip.SymbolInformation.Kind getKind() {
@SuppressWarnings("deprecation")
scip.Scip.SymbolInformation.Kind result = scip.Scip.SymbolInformation.Kind.valueOf(kind_);
return result == null ? scip.Scip.SymbolInformation.Kind.UNRECOGNIZED : result;
}
/**
* <pre>
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
* </pre>
*
* <code>.scip.SymbolInformation.Kind kind = 5;</code>
* @param value The kind to set.
* @return This builder for chaining.
*/
public Builder setKind(scip.Scip.SymbolInformation.Kind value) {
if (value == null) {
throw new NullPointerException();
}
kind_ = value.getNumber();
onChanged();
return this;
}
/**
* <pre>
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
* </pre>
*
* <code>.scip.SymbolInformation.Kind kind = 5;</code>
* @return This builder for chaining.
*/
public Builder clearKind() {
kind_ = 0;
onChanged();
return this;
}
private java.lang.Object displayName_ = "";
/**
* <pre>
* (optional) The name of this symbol as it should be displayed to the user.
* For example, the symbol "com/example/MyClass#myMethod(+1)." should have the
* display name "myMethod". The `symbol` field is not a reliable source of
* the display name for several reasons:
* - Local symbols don't encode the name.
* - Some languages have case-insensitive names, so the symbol is all-lowercase.
* - The symbol may encode names with special characters that should not be
* displayed to the user.
* </pre>
*
* <code>string display_name = 6;</code>
* @return The displayName.
*/
public java.lang.String getDisplayName() {
java.lang.Object ref = displayName_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
displayName_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* (optional) The name of this symbol as it should be displayed to the user.
* For example, the symbol "com/example/MyClass#myMethod(+1)." should have the
* display name "myMethod". The `symbol` field is not a reliable source of
* the display name for several reasons:
* - Local symbols don't encode the name.
* - Some languages have case-insensitive names, so the symbol is all-lowercase.
* - The symbol may encode names with special characters that should not be
* displayed to the user.
* </pre>
*
* <code>string display_name = 6;</code>
* @return The bytes for displayName.
*/
public com.google.protobuf.ByteString
getDisplayNameBytes() {
java.lang.Object ref = displayName_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
displayName_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* (optional) The name of this symbol as it should be displayed to the user.
* For example, the symbol "com/example/MyClass#myMethod(+1)." should have the
* display name "myMethod". The `symbol` field is not a reliable source of
* the display name for several reasons:
* - Local symbols don't encode the name.
* - Some languages have case-insensitive names, so the symbol is all-lowercase.
* - The symbol may encode names with special characters that should not be
* displayed to the user.
* </pre>
*
* <code>string display_name = 6;</code>
* @param value The displayName to set.
* @return This builder for chaining.
*/
public Builder setDisplayName(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
displayName_ = value;
onChanged();
return this;
}
/**
* <pre>
* (optional) The name of this symbol as it should be displayed to the user.
* For example, the symbol "com/example/MyClass#myMethod(+1)." should have the
* display name "myMethod". The `symbol` field is not a reliable source of
* the display name for several reasons:
* - Local symbols don't encode the name.
* - Some languages have case-insensitive names, so the symbol is all-lowercase.
* - The symbol may encode names with special characters that should not be
* displayed to the user.
* </pre>
*
* <code>string display_name = 6;</code>
* @return This builder for chaining.
*/
public Builder clearDisplayName() {
displayName_ = getDefaultInstance().getDisplayName();
onChanged();
return this;
}
/**
* <pre>
* (optional) The name of this symbol as it should be displayed to the user.
* For example, the symbol "com/example/MyClass#myMethod(+1)." should have the
* display name "myMethod". The `symbol` field is not a reliable source of
* the display name for several reasons:
* - Local symbols don't encode the name.
* - Some languages have case-insensitive names, so the symbol is all-lowercase.
* - The symbol may encode names with special characters that should not be
* displayed to the user.
* </pre>
*
* <code>string display_name = 6;</code>
* @param value The bytes for displayName to set.
* @return This builder for chaining.
*/
public Builder setDisplayNameBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
displayName_ = value;
onChanged();
return this;
}
private scip.Scip.Document signatureDocumentation_;
private com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.Document, scip.Scip.Document.Builder, scip.Scip.DocumentOrBuilder> signatureDocumentationBuilder_;
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
* @return Whether the signatureDocumentation field is set.
*/
public boolean hasSignatureDocumentation() {
return signatureDocumentationBuilder_ != null || signatureDocumentation_ != null;
}
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
* @return The signatureDocumentation.
*/
public scip.Scip.Document getSignatureDocumentation() {
if (signatureDocumentationBuilder_ == null) {
return signatureDocumentation_ == null ? scip.Scip.Document.getDefaultInstance() : signatureDocumentation_;
} else {
return signatureDocumentationBuilder_.getMessage();
}
}
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
*/
public Builder setSignatureDocumentation(scip.Scip.Document value) {
if (signatureDocumentationBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
signatureDocumentation_ = value;
onChanged();
} else {
signatureDocumentationBuilder_.setMessage(value);
}
return this;
}
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
*/
public Builder setSignatureDocumentation(
scip.Scip.Document.Builder builderForValue) {
if (signatureDocumentationBuilder_ == null) {
signatureDocumentation_ = builderForValue.build();
onChanged();
} else {
signatureDocumentationBuilder_.setMessage(builderForValue.build());
}
return this;
}
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
*/
public Builder mergeSignatureDocumentation(scip.Scip.Document value) {
if (signatureDocumentationBuilder_ == null) {
if (signatureDocumentation_ != null) {
signatureDocumentation_ =
scip.Scip.Document.newBuilder(signatureDocumentation_).mergeFrom(value).buildPartial();
} else {
signatureDocumentation_ = value;
}
onChanged();
} else {
signatureDocumentationBuilder_.mergeFrom(value);
}
return this;
}
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
*/
public Builder clearSignatureDocumentation() {
if (signatureDocumentationBuilder_ == null) {
signatureDocumentation_ = null;
onChanged();
} else {
signatureDocumentation_ = null;
signatureDocumentationBuilder_ = null;
}
return this;
}
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
*/
public scip.Scip.Document.Builder getSignatureDocumentationBuilder() {
onChanged();
return getSignatureDocumentationFieldBuilder().getBuilder();
}
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
*/
public scip.Scip.DocumentOrBuilder getSignatureDocumentationOrBuilder() {
if (signatureDocumentationBuilder_ != null) {
return signatureDocumentationBuilder_.getMessageOrBuilder();
} else {
return signatureDocumentation_ == null ?
scip.Scip.Document.getDefaultInstance() : signatureDocumentation_;
}
}
/**
* <pre>
* (optional) The signature of this symbol as it's displayed in API
* documentation or in hover tooltips. For example, a Java method that adds
* two numbers this would have `Document.language = "java"` and `Document.text
* = "void add(int a, int b)". The `language` and `text` fields are required
* while other fields such as `Documentation.occurrences` can be optionally
* included to support hyperlinking referenced symbols in the signature.
* </pre>
*
* <code>.scip.Document signature_documentation = 7;</code>
*/
private com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.Document, scip.Scip.Document.Builder, scip.Scip.DocumentOrBuilder>
getSignatureDocumentationFieldBuilder() {
if (signatureDocumentationBuilder_ == null) {
signatureDocumentationBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
scip.Scip.Document, scip.Scip.Document.Builder, scip.Scip.DocumentOrBuilder>(
getSignatureDocumentation(),
getParentForChildren(),
isClean());
signatureDocumentation_ = null;
}
return signatureDocumentationBuilder_;
}
private java.lang.Object enclosingSymbol_ = "";
/**
* <pre>
* (optional) The enclosing symbol if this is a local symbol. For non-local
* symbols, the enclosing symbol should be parsed from the `symbol` field
* using the `Descriptor` grammar.
* The primary use-case for this field is to allow local symbol to be displayed
* in a symbol hierarchy for API documentation. It's OK to leave this field
* empty for local variables since local variables usually don't belong in API
* documentation. However, in the situation that you wish to include a local
* symbol in the hierarchy, then you can use `enclosing_symbol` to locate the
* "parent" or "owner" of this local symbol. For example, a Java indexer may
* choose to use local symbols for private class fields while providing an
* `enclosing_symbol` to reference the enclosing class to allow the field to
* be part of the class documentation hierarchy. From the perspective of an
* author of an indexer, the decision to use a local symbol or global symbol
* should exclusively be determined whether the local symbol is accessible
* outside the document, not by the capability to find the enclosing
* symbol.
* </pre>
*
* <code>string enclosing_symbol = 8;</code>
* @return The enclosingSymbol.
*/
public java.lang.String getEnclosingSymbol() {
java.lang.Object ref = enclosingSymbol_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
enclosingSymbol_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* (optional) The enclosing symbol if this is a local symbol. For non-local
* symbols, the enclosing symbol should be parsed from the `symbol` field
* using the `Descriptor` grammar.
* The primary use-case for this field is to allow local symbol to be displayed
* in a symbol hierarchy for API documentation. It's OK to leave this field
* empty for local variables since local variables usually don't belong in API
* documentation. However, in the situation that you wish to include a local
* symbol in the hierarchy, then you can use `enclosing_symbol` to locate the
* "parent" or "owner" of this local symbol. For example, a Java indexer may
* choose to use local symbols for private class fields while providing an
* `enclosing_symbol` to reference the enclosing class to allow the field to
* be part of the class documentation hierarchy. From the perspective of an
* author of an indexer, the decision to use a local symbol or global symbol
* should exclusively be determined whether the local symbol is accessible
* outside the document, not by the capability to find the enclosing
* symbol.
* </pre>
*
* <code>string enclosing_symbol = 8;</code>
* @return The bytes for enclosingSymbol.
*/
public com.google.protobuf.ByteString
getEnclosingSymbolBytes() {
java.lang.Object ref = enclosingSymbol_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
enclosingSymbol_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* (optional) The enclosing symbol if this is a local symbol. For non-local
* symbols, the enclosing symbol should be parsed from the `symbol` field
* using the `Descriptor` grammar.
* The primary use-case for this field is to allow local symbol to be displayed
* in a symbol hierarchy for API documentation. It's OK to leave this field
* empty for local variables since local variables usually don't belong in API
* documentation. However, in the situation that you wish to include a local
* symbol in the hierarchy, then you can use `enclosing_symbol` to locate the
* "parent" or "owner" of this local symbol. For example, a Java indexer may
* choose to use local symbols for private class fields while providing an
* `enclosing_symbol` to reference the enclosing class to allow the field to
* be part of the class documentation hierarchy. From the perspective of an
* author of an indexer, the decision to use a local symbol or global symbol
* should exclusively be determined whether the local symbol is accessible
* outside the document, not by the capability to find the enclosing
* symbol.
* </pre>
*
* <code>string enclosing_symbol = 8;</code>
* @param value The enclosingSymbol to set.
* @return This builder for chaining.
*/
public Builder setEnclosingSymbol(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
enclosingSymbol_ = value;
onChanged();
return this;
}
/**
* <pre>
* (optional) The enclosing symbol if this is a local symbol. For non-local
* symbols, the enclosing symbol should be parsed from the `symbol` field
* using the `Descriptor` grammar.
* The primary use-case for this field is to allow local symbol to be displayed
* in a symbol hierarchy for API documentation. It's OK to leave this field
* empty for local variables since local variables usually don't belong in API
* documentation. However, in the situation that you wish to include a local
* symbol in the hierarchy, then you can use `enclosing_symbol` to locate the
* "parent" or "owner" of this local symbol. For example, a Java indexer may
* choose to use local symbols for private class fields while providing an
* `enclosing_symbol` to reference the enclosing class to allow the field to
* be part of the class documentation hierarchy. From the perspective of an
* author of an indexer, the decision to use a local symbol or global symbol
* should exclusively be determined whether the local symbol is accessible
* outside the document, not by the capability to find the enclosing
* symbol.
* </pre>
*
* <code>string enclosing_symbol = 8;</code>
* @return This builder for chaining.
*/
public Builder clearEnclosingSymbol() {
enclosingSymbol_ = getDefaultInstance().getEnclosingSymbol();
onChanged();
return this;
}
/**
* <pre>
* (optional) The enclosing symbol if this is a local symbol. For non-local
* symbols, the enclosing symbol should be parsed from the `symbol` field
* using the `Descriptor` grammar.
* The primary use-case for this field is to allow local symbol to be displayed
* in a symbol hierarchy for API documentation. It's OK to leave this field
* empty for local variables since local variables usually don't belong in API
* documentation. However, in the situation that you wish to include a local
* symbol in the hierarchy, then you can use `enclosing_symbol` to locate the
* "parent" or "owner" of this local symbol. For example, a Java indexer may
* choose to use local symbols for private class fields while providing an
* `enclosing_symbol` to reference the enclosing class to allow the field to
* be part of the class documentation hierarchy. From the perspective of an
* author of an indexer, the decision to use a local symbol or global symbol
* should exclusively be determined whether the local symbol is accessible
* outside the document, not by the capability to find the enclosing
* symbol.
* </pre>
*
* <code>string enclosing_symbol = 8;</code>
* @param value The bytes for enclosingSymbol to set.
* @return This builder for chaining.
*/
public Builder setEnclosingSymbolBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
enclosingSymbol_ = value;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.SymbolInformation)
}
// @@protoc_insertion_point(class_scope:scip.SymbolInformation)
private static final scip.Scip.SymbolInformation DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.SymbolInformation();
}
public static scip.Scip.SymbolInformation getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<SymbolInformation>
PARSER = new com.google.protobuf.AbstractParser<SymbolInformation>() {
@java.lang.Override
public SymbolInformation parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new SymbolInformation(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<SymbolInformation> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<SymbolInformation> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.SymbolInformation getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface RelationshipOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.Relationship)
com.google.protobuf.MessageOrBuilder {
/**
* <code>string symbol = 1;</code>
* @return The symbol.
*/
java.lang.String getSymbol();
/**
* <code>string symbol = 1;</code>
* @return The bytes for symbol.
*/
com.google.protobuf.ByteString
getSymbolBytes();
/**
* <pre>
* When resolving "Find references", this field documents what other symbols
* should be included together with this symbol. For example, consider the
* following TypeScript code that defines two symbols `Animal#sound()` and
* `Dog#sound()`:
* ```ts
* interface Animal {
* ^^^^^^ definition Animal#
* sound(): string
* ^^^^^ definition Animal#sound()
* }
* class Dog implements Animal {
* ^^^ definition Dog#, relationships = [{symbol: "Animal#", is_implementation: true}]
* public sound(): string { return "woof" }
* ^^^^^ definition Dog#sound(), references_symbols = Animal#sound(), relationships = [{symbol: "Animal#sound()", is_implementation:true, is_reference: true}]
* }
* const animal: Animal = new Dog()
* ^^^^^^ reference Animal#
* console.log(animal.sound())
* ^^^^^ reference Animal#sound()
* ```
* Doing "Find references" on the symbol `Animal#sound()` should return
* references to the `Dog#sound()` method as well. Vice-versa, doing "Find
* references" on the `Dog#sound()` method should include references to the
* `Animal#sound()` method as well.
* </pre>
*
* <code>bool is_reference = 2;</code>
* @return The isReference.
*/
boolean getIsReference();
/**
* <pre>
* Similar to `is_reference` but for "Find implementations".
* It's common for `is_implementation` and `is_reference` to both be true but
* it's not always the case.
* In the TypeScript example above, observe that `Dog#` has an
* `is_implementation` relationship with `"Animal#"` but not `is_reference`.
* This is because "Find references" on the "Animal#" symbol should not return
* "Dog#". We only want "Dog#" to return as a result for "Find
* implementations" on the "Animal#" symbol.
* </pre>
*
* <code>bool is_implementation = 3;</code>
* @return The isImplementation.
*/
boolean getIsImplementation();
/**
* <pre>
* Similar to `references_symbols` but for "Go to type definition".
* </pre>
*
* <code>bool is_type_definition = 4;</code>
* @return The isTypeDefinition.
*/
boolean getIsTypeDefinition();
/**
* <pre>
* Allows overriding the behavior of "Go to definition" and "Find references"
* for symbols which do not have a definition of their own or could
* potentially have multiple definitions.
* For example, in a language with single inheritance and no field overriding,
* inherited fields can reuse the same symbol as the ancestor which declares
* the field. In such a situation, is_definition is not needed.
* On the other hand, in languages with single inheritance and some form
* of mixins, you can use is_definition to relate the symbol to the
* matching symbol in ancestor classes, and is_reference to relate the
* symbol to the matching symbol in mixins.
* NOTE: At the moment, due to limitations of the SCIP to LSIF conversion,
* only global symbols in an index are allowed to use is_definition.
* The relationship may not get recorded if either symbol is local.
* </pre>
*
* <code>bool is_definition = 5;</code>
* @return The isDefinition.
*/
boolean getIsDefinition();
}
/**
* Protobuf type {@code scip.Relationship}
*/
public static final class Relationship extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.Relationship)
RelationshipOrBuilder {
private static final long serialVersionUID = 0L;
// Use Relationship.newBuilder() to construct.
private Relationship(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private Relationship() {
symbol_ = "";
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Relationship();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Relationship(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 10: {
java.lang.String s = input.readStringRequireUtf8();
symbol_ = s;
break;
}
case 16: {
isReference_ = input.readBool();
break;
}
case 24: {
isImplementation_ = input.readBool();
break;
}
case 32: {
isTypeDefinition_ = input.readBool();
break;
}
case 40: {
isDefinition_ = input.readBool();
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Relationship_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Relationship_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Relationship.class, scip.Scip.Relationship.Builder.class);
}
public static final int SYMBOL_FIELD_NUMBER = 1;
private volatile java.lang.Object symbol_;
/**
* <code>string symbol = 1;</code>
* @return The symbol.
*/
@java.lang.Override
public java.lang.String getSymbol() {
java.lang.Object ref = symbol_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
symbol_ = s;
return s;
}
}
/**
* <code>string symbol = 1;</code>
* @return The bytes for symbol.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getSymbolBytes() {
java.lang.Object ref = symbol_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
symbol_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int IS_REFERENCE_FIELD_NUMBER = 2;
private boolean isReference_;
/**
* <pre>
* When resolving "Find references", this field documents what other symbols
* should be included together with this symbol. For example, consider the
* following TypeScript code that defines two symbols `Animal#sound()` and
* `Dog#sound()`:
* ```ts
* interface Animal {
* ^^^^^^ definition Animal#
* sound(): string
* ^^^^^ definition Animal#sound()
* }
* class Dog implements Animal {
* ^^^ definition Dog#, relationships = [{symbol: "Animal#", is_implementation: true}]
* public sound(): string { return "woof" }
* ^^^^^ definition Dog#sound(), references_symbols = Animal#sound(), relationships = [{symbol: "Animal#sound()", is_implementation:true, is_reference: true}]
* }
* const animal: Animal = new Dog()
* ^^^^^^ reference Animal#
* console.log(animal.sound())
* ^^^^^ reference Animal#sound()
* ```
* Doing "Find references" on the symbol `Animal#sound()` should return
* references to the `Dog#sound()` method as well. Vice-versa, doing "Find
* references" on the `Dog#sound()` method should include references to the
* `Animal#sound()` method as well.
* </pre>
*
* <code>bool is_reference = 2;</code>
* @return The isReference.
*/
@java.lang.Override
public boolean getIsReference() {
return isReference_;
}
public static final int IS_IMPLEMENTATION_FIELD_NUMBER = 3;
private boolean isImplementation_;
/**
* <pre>
* Similar to `is_reference` but for "Find implementations".
* It's common for `is_implementation` and `is_reference` to both be true but
* it's not always the case.
* In the TypeScript example above, observe that `Dog#` has an
* `is_implementation` relationship with `"Animal#"` but not `is_reference`.
* This is because "Find references" on the "Animal#" symbol should not return
* "Dog#". We only want "Dog#" to return as a result for "Find
* implementations" on the "Animal#" symbol.
* </pre>
*
* <code>bool is_implementation = 3;</code>
* @return The isImplementation.
*/
@java.lang.Override
public boolean getIsImplementation() {
return isImplementation_;
}
public static final int IS_TYPE_DEFINITION_FIELD_NUMBER = 4;
private boolean isTypeDefinition_;
/**
* <pre>
* Similar to `references_symbols` but for "Go to type definition".
* </pre>
*
* <code>bool is_type_definition = 4;</code>
* @return The isTypeDefinition.
*/
@java.lang.Override
public boolean getIsTypeDefinition() {
return isTypeDefinition_;
}
public static final int IS_DEFINITION_FIELD_NUMBER = 5;
private boolean isDefinition_;
/**
* <pre>
* Allows overriding the behavior of "Go to definition" and "Find references"
* for symbols which do not have a definition of their own or could
* potentially have multiple definitions.
* For example, in a language with single inheritance and no field overriding,
* inherited fields can reuse the same symbol as the ancestor which declares
* the field. In such a situation, is_definition is not needed.
* On the other hand, in languages with single inheritance and some form
* of mixins, you can use is_definition to relate the symbol to the
* matching symbol in ancestor classes, and is_reference to relate the
* symbol to the matching symbol in mixins.
* NOTE: At the moment, due to limitations of the SCIP to LSIF conversion,
* only global symbols in an index are allowed to use is_definition.
* The relationship may not get recorded if either symbol is local.
* </pre>
*
* <code>bool is_definition = 5;</code>
* @return The isDefinition.
*/
@java.lang.Override
public boolean getIsDefinition() {
return isDefinition_;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (!getSymbolBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 1, symbol_);
}
if (isReference_ != false) {
output.writeBool(2, isReference_);
}
if (isImplementation_ != false) {
output.writeBool(3, isImplementation_);
}
if (isTypeDefinition_ != false) {
output.writeBool(4, isTypeDefinition_);
}
if (isDefinition_ != false) {
output.writeBool(5, isDefinition_);
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (!getSymbolBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, symbol_);
}
if (isReference_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(2, isReference_);
}
if (isImplementation_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(3, isImplementation_);
}
if (isTypeDefinition_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(4, isTypeDefinition_);
}
if (isDefinition_ != false) {
size += com.google.protobuf.CodedOutputStream
.computeBoolSize(5, isDefinition_);
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.Relationship)) {
return super.equals(obj);
}
scip.Scip.Relationship other = (scip.Scip.Relationship) obj;
if (!getSymbol()
.equals(other.getSymbol())) return false;
if (getIsReference()
!= other.getIsReference()) return false;
if (getIsImplementation()
!= other.getIsImplementation()) return false;
if (getIsTypeDefinition()
!= other.getIsTypeDefinition()) return false;
if (getIsDefinition()
!= other.getIsDefinition()) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + SYMBOL_FIELD_NUMBER;
hash = (53 * hash) + getSymbol().hashCode();
hash = (37 * hash) + IS_REFERENCE_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getIsReference());
hash = (37 * hash) + IS_IMPLEMENTATION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getIsImplementation());
hash = (37 * hash) + IS_TYPE_DEFINITION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getIsTypeDefinition());
hash = (37 * hash) + IS_DEFINITION_FIELD_NUMBER;
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
getIsDefinition());
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.Relationship parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Relationship parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Relationship parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Relationship parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Relationship parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Relationship parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Relationship parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Relationship parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Relationship parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.Relationship parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Relationship parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Relationship parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.Relationship prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* Protobuf type {@code scip.Relationship}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.Relationship)
scip.Scip.RelationshipOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Relationship_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Relationship_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Relationship.class, scip.Scip.Relationship.Builder.class);
}
// Construct using scip.Scip.Relationship.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
@java.lang.Override
public Builder clear() {
super.clear();
symbol_ = "";
isReference_ = false;
isImplementation_ = false;
isTypeDefinition_ = false;
isDefinition_ = false;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_Relationship_descriptor;
}
@java.lang.Override
public scip.Scip.Relationship getDefaultInstanceForType() {
return scip.Scip.Relationship.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.Relationship build() {
scip.Scip.Relationship result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.Relationship buildPartial() {
scip.Scip.Relationship result = new scip.Scip.Relationship(this);
result.symbol_ = symbol_;
result.isReference_ = isReference_;
result.isImplementation_ = isImplementation_;
result.isTypeDefinition_ = isTypeDefinition_;
result.isDefinition_ = isDefinition_;
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.Relationship) {
return mergeFrom((scip.Scip.Relationship)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.Relationship other) {
if (other == scip.Scip.Relationship.getDefaultInstance()) return this;
if (!other.getSymbol().isEmpty()) {
symbol_ = other.symbol_;
onChanged();
}
if (other.getIsReference() != false) {
setIsReference(other.getIsReference());
}
if (other.getIsImplementation() != false) {
setIsImplementation(other.getIsImplementation());
}
if (other.getIsTypeDefinition() != false) {
setIsTypeDefinition(other.getIsTypeDefinition());
}
if (other.getIsDefinition() != false) {
setIsDefinition(other.getIsDefinition());
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.Relationship parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.Relationship) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private java.lang.Object symbol_ = "";
/**
* <code>string symbol = 1;</code>
* @return The symbol.
*/
public java.lang.String getSymbol() {
java.lang.Object ref = symbol_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
symbol_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <code>string symbol = 1;</code>
* @return The bytes for symbol.
*/
public com.google.protobuf.ByteString
getSymbolBytes() {
java.lang.Object ref = symbol_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
symbol_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <code>string symbol = 1;</code>
* @param value The symbol to set.
* @return This builder for chaining.
*/
public Builder setSymbol(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
symbol_ = value;
onChanged();
return this;
}
/**
* <code>string symbol = 1;</code>
* @return This builder for chaining.
*/
public Builder clearSymbol() {
symbol_ = getDefaultInstance().getSymbol();
onChanged();
return this;
}
/**
* <code>string symbol = 1;</code>
* @param value The bytes for symbol to set.
* @return This builder for chaining.
*/
public Builder setSymbolBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
symbol_ = value;
onChanged();
return this;
}
private boolean isReference_ ;
/**
* <pre>
* When resolving "Find references", this field documents what other symbols
* should be included together with this symbol. For example, consider the
* following TypeScript code that defines two symbols `Animal#sound()` and
* `Dog#sound()`:
* ```ts
* interface Animal {
* ^^^^^^ definition Animal#
* sound(): string
* ^^^^^ definition Animal#sound()
* }
* class Dog implements Animal {
* ^^^ definition Dog#, relationships = [{symbol: "Animal#", is_implementation: true}]
* public sound(): string { return "woof" }
* ^^^^^ definition Dog#sound(), references_symbols = Animal#sound(), relationships = [{symbol: "Animal#sound()", is_implementation:true, is_reference: true}]
* }
* const animal: Animal = new Dog()
* ^^^^^^ reference Animal#
* console.log(animal.sound())
* ^^^^^ reference Animal#sound()
* ```
* Doing "Find references" on the symbol `Animal#sound()` should return
* references to the `Dog#sound()` method as well. Vice-versa, doing "Find
* references" on the `Dog#sound()` method should include references to the
* `Animal#sound()` method as well.
* </pre>
*
* <code>bool is_reference = 2;</code>
* @return The isReference.
*/
@java.lang.Override
public boolean getIsReference() {
return isReference_;
}
/**
* <pre>
* When resolving "Find references", this field documents what other symbols
* should be included together with this symbol. For example, consider the
* following TypeScript code that defines two symbols `Animal#sound()` and
* `Dog#sound()`:
* ```ts
* interface Animal {
* ^^^^^^ definition Animal#
* sound(): string
* ^^^^^ definition Animal#sound()
* }
* class Dog implements Animal {
* ^^^ definition Dog#, relationships = [{symbol: "Animal#", is_implementation: true}]
* public sound(): string { return "woof" }
* ^^^^^ definition Dog#sound(), references_symbols = Animal#sound(), relationships = [{symbol: "Animal#sound()", is_implementation:true, is_reference: true}]
* }
* const animal: Animal = new Dog()
* ^^^^^^ reference Animal#
* console.log(animal.sound())
* ^^^^^ reference Animal#sound()
* ```
* Doing "Find references" on the symbol `Animal#sound()` should return
* references to the `Dog#sound()` method as well. Vice-versa, doing "Find
* references" on the `Dog#sound()` method should include references to the
* `Animal#sound()` method as well.
* </pre>
*
* <code>bool is_reference = 2;</code>
* @param value The isReference to set.
* @return This builder for chaining.
*/
public Builder setIsReference(boolean value) {
isReference_ = value;
onChanged();
return this;
}
/**
* <pre>
* When resolving "Find references", this field documents what other symbols
* should be included together with this symbol. For example, consider the
* following TypeScript code that defines two symbols `Animal#sound()` and
* `Dog#sound()`:
* ```ts
* interface Animal {
* ^^^^^^ definition Animal#
* sound(): string
* ^^^^^ definition Animal#sound()
* }
* class Dog implements Animal {
* ^^^ definition Dog#, relationships = [{symbol: "Animal#", is_implementation: true}]
* public sound(): string { return "woof" }
* ^^^^^ definition Dog#sound(), references_symbols = Animal#sound(), relationships = [{symbol: "Animal#sound()", is_implementation:true, is_reference: true}]
* }
* const animal: Animal = new Dog()
* ^^^^^^ reference Animal#
* console.log(animal.sound())
* ^^^^^ reference Animal#sound()
* ```
* Doing "Find references" on the symbol `Animal#sound()` should return
* references to the `Dog#sound()` method as well. Vice-versa, doing "Find
* references" on the `Dog#sound()` method should include references to the
* `Animal#sound()` method as well.
* </pre>
*
* <code>bool is_reference = 2;</code>
* @return This builder for chaining.
*/
public Builder clearIsReference() {
isReference_ = false;
onChanged();
return this;
}
private boolean isImplementation_ ;
/**
* <pre>
* Similar to `is_reference` but for "Find implementations".
* It's common for `is_implementation` and `is_reference` to both be true but
* it's not always the case.
* In the TypeScript example above, observe that `Dog#` has an
* `is_implementation` relationship with `"Animal#"` but not `is_reference`.
* This is because "Find references" on the "Animal#" symbol should not return
* "Dog#". We only want "Dog#" to return as a result for "Find
* implementations" on the "Animal#" symbol.
* </pre>
*
* <code>bool is_implementation = 3;</code>
* @return The isImplementation.
*/
@java.lang.Override
public boolean getIsImplementation() {
return isImplementation_;
}
/**
* <pre>
* Similar to `is_reference` but for "Find implementations".
* It's common for `is_implementation` and `is_reference` to both be true but
* it's not always the case.
* In the TypeScript example above, observe that `Dog#` has an
* `is_implementation` relationship with `"Animal#"` but not `is_reference`.
* This is because "Find references" on the "Animal#" symbol should not return
* "Dog#". We only want "Dog#" to return as a result for "Find
* implementations" on the "Animal#" symbol.
* </pre>
*
* <code>bool is_implementation = 3;</code>
* @param value The isImplementation to set.
* @return This builder for chaining.
*/
public Builder setIsImplementation(boolean value) {
isImplementation_ = value;
onChanged();
return this;
}
/**
* <pre>
* Similar to `is_reference` but for "Find implementations".
* It's common for `is_implementation` and `is_reference` to both be true but
* it's not always the case.
* In the TypeScript example above, observe that `Dog#` has an
* `is_implementation` relationship with `"Animal#"` but not `is_reference`.
* This is because "Find references" on the "Animal#" symbol should not return
* "Dog#". We only want "Dog#" to return as a result for "Find
* implementations" on the "Animal#" symbol.
* </pre>
*
* <code>bool is_implementation = 3;</code>
* @return This builder for chaining.
*/
public Builder clearIsImplementation() {
isImplementation_ = false;
onChanged();
return this;
}
private boolean isTypeDefinition_ ;
/**
* <pre>
* Similar to `references_symbols` but for "Go to type definition".
* </pre>
*
* <code>bool is_type_definition = 4;</code>
* @return The isTypeDefinition.
*/
@java.lang.Override
public boolean getIsTypeDefinition() {
return isTypeDefinition_;
}
/**
* <pre>
* Similar to `references_symbols` but for "Go to type definition".
* </pre>
*
* <code>bool is_type_definition = 4;</code>
* @param value The isTypeDefinition to set.
* @return This builder for chaining.
*/
public Builder setIsTypeDefinition(boolean value) {
isTypeDefinition_ = value;
onChanged();
return this;
}
/**
* <pre>
* Similar to `references_symbols` but for "Go to type definition".
* </pre>
*
* <code>bool is_type_definition = 4;</code>
* @return This builder for chaining.
*/
public Builder clearIsTypeDefinition() {
isTypeDefinition_ = false;
onChanged();
return this;
}
private boolean isDefinition_ ;
/**
* <pre>
* Allows overriding the behavior of "Go to definition" and "Find references"
* for symbols which do not have a definition of their own or could
* potentially have multiple definitions.
* For example, in a language with single inheritance and no field overriding,
* inherited fields can reuse the same symbol as the ancestor which declares
* the field. In such a situation, is_definition is not needed.
* On the other hand, in languages with single inheritance and some form
* of mixins, you can use is_definition to relate the symbol to the
* matching symbol in ancestor classes, and is_reference to relate the
* symbol to the matching symbol in mixins.
* NOTE: At the moment, due to limitations of the SCIP to LSIF conversion,
* only global symbols in an index are allowed to use is_definition.
* The relationship may not get recorded if either symbol is local.
* </pre>
*
* <code>bool is_definition = 5;</code>
* @return The isDefinition.
*/
@java.lang.Override
public boolean getIsDefinition() {
return isDefinition_;
}
/**
* <pre>
* Allows overriding the behavior of "Go to definition" and "Find references"
* for symbols which do not have a definition of their own or could
* potentially have multiple definitions.
* For example, in a language with single inheritance and no field overriding,
* inherited fields can reuse the same symbol as the ancestor which declares
* the field. In such a situation, is_definition is not needed.
* On the other hand, in languages with single inheritance and some form
* of mixins, you can use is_definition to relate the symbol to the
* matching symbol in ancestor classes, and is_reference to relate the
* symbol to the matching symbol in mixins.
* NOTE: At the moment, due to limitations of the SCIP to LSIF conversion,
* only global symbols in an index are allowed to use is_definition.
* The relationship may not get recorded if either symbol is local.
* </pre>
*
* <code>bool is_definition = 5;</code>
* @param value The isDefinition to set.
* @return This builder for chaining.
*/
public Builder setIsDefinition(boolean value) {
isDefinition_ = value;
onChanged();
return this;
}
/**
* <pre>
* Allows overriding the behavior of "Go to definition" and "Find references"
* for symbols which do not have a definition of their own or could
* potentially have multiple definitions.
* For example, in a language with single inheritance and no field overriding,
* inherited fields can reuse the same symbol as the ancestor which declares
* the field. In such a situation, is_definition is not needed.
* On the other hand, in languages with single inheritance and some form
* of mixins, you can use is_definition to relate the symbol to the
* matching symbol in ancestor classes, and is_reference to relate the
* symbol to the matching symbol in mixins.
* NOTE: At the moment, due to limitations of the SCIP to LSIF conversion,
* only global symbols in an index are allowed to use is_definition.
* The relationship may not get recorded if either symbol is local.
* </pre>
*
* <code>bool is_definition = 5;</code>
* @return This builder for chaining.
*/
public Builder clearIsDefinition() {
isDefinition_ = false;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.Relationship)
}
// @@protoc_insertion_point(class_scope:scip.Relationship)
private static final scip.Scip.Relationship DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.Relationship();
}
public static scip.Scip.Relationship getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<Relationship>
PARSER = new com.google.protobuf.AbstractParser<Relationship>() {
@java.lang.Override
public Relationship parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Relationship(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<Relationship> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<Relationship> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.Relationship getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface OccurrenceOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.Occurrence)
com.google.protobuf.MessageOrBuilder {
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @return A list containing the range.
*/
java.util.List<java.lang.Integer> getRangeList();
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @return The count of range.
*/
int getRangeCount();
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @param index The index of the element to return.
* @return The range at the given index.
*/
int getRange(int index);
/**
* <pre>
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
* </pre>
*
* <code>string symbol = 2;</code>
* @return The symbol.
*/
java.lang.String getSymbol();
/**
* <pre>
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
* </pre>
*
* <code>string symbol = 2;</code>
* @return The bytes for symbol.
*/
com.google.protobuf.ByteString
getSymbolBytes();
/**
* <pre>
* (optional) Bitset containing `SymbolRole`s in this occurrence.
* See `SymbolRole`'s documentation for how to read and write this field.
* </pre>
*
* <code>int32 symbol_roles = 3;</code>
* @return The symbolRoles.
*/
int getSymbolRoles();
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @return A list containing the overrideDocumentation.
*/
java.util.List<java.lang.String>
getOverrideDocumentationList();
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @return The count of overrideDocumentation.
*/
int getOverrideDocumentationCount();
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @param index The index of the element to return.
* @return The overrideDocumentation at the given index.
*/
java.lang.String getOverrideDocumentation(int index);
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @param index The index of the value to return.
* @return The bytes of the overrideDocumentation at the given index.
*/
com.google.protobuf.ByteString
getOverrideDocumentationBytes(int index);
/**
* <pre>
* (optional) What syntax highlighting class should be used for this range?
* </pre>
*
* <code>.scip.SyntaxKind syntax_kind = 5;</code>
* @return The enum numeric value on the wire for syntaxKind.
*/
int getSyntaxKindValue();
/**
* <pre>
* (optional) What syntax highlighting class should be used for this range?
* </pre>
*
* <code>.scip.SyntaxKind syntax_kind = 5;</code>
* @return The syntaxKind.
*/
scip.Scip.SyntaxKind getSyntaxKind();
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
java.util.List<scip.Scip.Diagnostic>
getDiagnosticsList();
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
scip.Scip.Diagnostic getDiagnostics(int index);
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
int getDiagnosticsCount();
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
java.util.List<? extends scip.Scip.DiagnosticOrBuilder>
getDiagnosticsOrBuilderList();
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
scip.Scip.DiagnosticOrBuilder getDiagnosticsOrBuilder(
int index);
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @return A list containing the enclosingRange.
*/
java.util.List<java.lang.Integer> getEnclosingRangeList();
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @return The count of enclosingRange.
*/
int getEnclosingRangeCount();
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @param index The index of the element to return.
* @return The enclosingRange at the given index.
*/
int getEnclosingRange(int index);
}
/**
* <pre>
* Occurrence associates a source position with a symbol and/or highlighting
* information.
* If possible, indexers should try to bundle logically related information
* across occurrences into a single occurrence to reduce payload sizes.
* </pre>
*
* Protobuf type {@code scip.Occurrence}
*/
public static final class Occurrence extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.Occurrence)
OccurrenceOrBuilder {
private static final long serialVersionUID = 0L;
// Use Occurrence.newBuilder() to construct.
private Occurrence(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private Occurrence() {
range_ = emptyIntList();
symbol_ = "";
overrideDocumentation_ = com.google.protobuf.LazyStringArrayList.EMPTY;
syntaxKind_ = 0;
diagnostics_ = java.util.Collections.emptyList();
enclosingRange_ = emptyIntList();
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Occurrence();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Occurrence(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 8: {
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
range_ = newIntList();
mutable_bitField0_ |= 0x00000001;
}
range_.addInt(input.readInt32());
break;
}
case 10: {
int length = input.readRawVarint32();
int limit = input.pushLimit(length);
if (!((mutable_bitField0_ & 0x00000001) != 0) && input.getBytesUntilLimit() > 0) {
range_ = newIntList();
mutable_bitField0_ |= 0x00000001;
}
while (input.getBytesUntilLimit() > 0) {
range_.addInt(input.readInt32());
}
input.popLimit(limit);
break;
}
case 18: {
java.lang.String s = input.readStringRequireUtf8();
symbol_ = s;
break;
}
case 24: {
symbolRoles_ = input.readInt32();
break;
}
case 34: {
java.lang.String s = input.readStringRequireUtf8();
if (!((mutable_bitField0_ & 0x00000002) != 0)) {
overrideDocumentation_ = new com.google.protobuf.LazyStringArrayList();
mutable_bitField0_ |= 0x00000002;
}
overrideDocumentation_.add(s);
break;
}
case 40: {
int rawValue = input.readEnum();
syntaxKind_ = rawValue;
break;
}
case 50: {
if (!((mutable_bitField0_ & 0x00000004) != 0)) {
diagnostics_ = new java.util.ArrayList<scip.Scip.Diagnostic>();
mutable_bitField0_ |= 0x00000004;
}
diagnostics_.add(
input.readMessage(scip.Scip.Diagnostic.parser(), extensionRegistry));
break;
}
case 56: {
if (!((mutable_bitField0_ & 0x00000008) != 0)) {
enclosingRange_ = newIntList();
mutable_bitField0_ |= 0x00000008;
}
enclosingRange_.addInt(input.readInt32());
break;
}
case 58: {
int length = input.readRawVarint32();
int limit = input.pushLimit(length);
if (!((mutable_bitField0_ & 0x00000008) != 0) && input.getBytesUntilLimit() > 0) {
enclosingRange_ = newIntList();
mutable_bitField0_ |= 0x00000008;
}
while (input.getBytesUntilLimit() > 0) {
enclosingRange_.addInt(input.readInt32());
}
input.popLimit(limit);
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000001) != 0)) {
range_.makeImmutable(); // C
}
if (((mutable_bitField0_ & 0x00000002) != 0)) {
overrideDocumentation_ = overrideDocumentation_.getUnmodifiableView();
}
if (((mutable_bitField0_ & 0x00000004) != 0)) {
diagnostics_ = java.util.Collections.unmodifiableList(diagnostics_);
}
if (((mutable_bitField0_ & 0x00000008) != 0)) {
enclosingRange_.makeImmutable(); // C
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Occurrence_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Occurrence_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Occurrence.class, scip.Scip.Occurrence.Builder.class);
}
public static final int RANGE_FIELD_NUMBER = 1;
private com.google.protobuf.Internal.IntList range_;
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @return A list containing the range.
*/
@java.lang.Override
public java.util.List<java.lang.Integer>
getRangeList() {
return range_;
}
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @return The count of range.
*/
public int getRangeCount() {
return range_.size();
}
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @param index The index of the element to return.
* @return The range at the given index.
*/
public int getRange(int index) {
return range_.getInt(index);
}
private int rangeMemoizedSerializedSize = -1;
public static final int SYMBOL_FIELD_NUMBER = 2;
private volatile java.lang.Object symbol_;
/**
* <pre>
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
* </pre>
*
* <code>string symbol = 2;</code>
* @return The symbol.
*/
@java.lang.Override
public java.lang.String getSymbol() {
java.lang.Object ref = symbol_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
symbol_ = s;
return s;
}
}
/**
* <pre>
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
* </pre>
*
* <code>string symbol = 2;</code>
* @return The bytes for symbol.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getSymbolBytes() {
java.lang.Object ref = symbol_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
symbol_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int SYMBOL_ROLES_FIELD_NUMBER = 3;
private int symbolRoles_;
/**
* <pre>
* (optional) Bitset containing `SymbolRole`s in this occurrence.
* See `SymbolRole`'s documentation for how to read and write this field.
* </pre>
*
* <code>int32 symbol_roles = 3;</code>
* @return The symbolRoles.
*/
@java.lang.Override
public int getSymbolRoles() {
return symbolRoles_;
}
public static final int OVERRIDE_DOCUMENTATION_FIELD_NUMBER = 4;
private com.google.protobuf.LazyStringList overrideDocumentation_;
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @return A list containing the overrideDocumentation.
*/
public com.google.protobuf.ProtocolStringList
getOverrideDocumentationList() {
return overrideDocumentation_;
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @return The count of overrideDocumentation.
*/
public int getOverrideDocumentationCount() {
return overrideDocumentation_.size();
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @param index The index of the element to return.
* @return The overrideDocumentation at the given index.
*/
public java.lang.String getOverrideDocumentation(int index) {
return overrideDocumentation_.get(index);
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @param index The index of the value to return.
* @return The bytes of the overrideDocumentation at the given index.
*/
public com.google.protobuf.ByteString
getOverrideDocumentationBytes(int index) {
return overrideDocumentation_.getByteString(index);
}
public static final int SYNTAX_KIND_FIELD_NUMBER = 5;
private int syntaxKind_;
/**
* <pre>
* (optional) What syntax highlighting class should be used for this range?
* </pre>
*
* <code>.scip.SyntaxKind syntax_kind = 5;</code>
* @return The enum numeric value on the wire for syntaxKind.
*/
@java.lang.Override public int getSyntaxKindValue() {
return syntaxKind_;
}
/**
* <pre>
* (optional) What syntax highlighting class should be used for this range?
* </pre>
*
* <code>.scip.SyntaxKind syntax_kind = 5;</code>
* @return The syntaxKind.
*/
@java.lang.Override public scip.Scip.SyntaxKind getSyntaxKind() {
@SuppressWarnings("deprecation")
scip.Scip.SyntaxKind result = scip.Scip.SyntaxKind.valueOf(syntaxKind_);
return result == null ? scip.Scip.SyntaxKind.UNRECOGNIZED : result;
}
public static final int DIAGNOSTICS_FIELD_NUMBER = 6;
private java.util.List<scip.Scip.Diagnostic> diagnostics_;
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
@java.lang.Override
public java.util.List<scip.Scip.Diagnostic> getDiagnosticsList() {
return diagnostics_;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
@java.lang.Override
public java.util.List<? extends scip.Scip.DiagnosticOrBuilder>
getDiagnosticsOrBuilderList() {
return diagnostics_;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
@java.lang.Override
public int getDiagnosticsCount() {
return diagnostics_.size();
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
@java.lang.Override
public scip.Scip.Diagnostic getDiagnostics(int index) {
return diagnostics_.get(index);
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
@java.lang.Override
public scip.Scip.DiagnosticOrBuilder getDiagnosticsOrBuilder(
int index) {
return diagnostics_.get(index);
}
public static final int ENCLOSING_RANGE_FIELD_NUMBER = 7;
private com.google.protobuf.Internal.IntList enclosingRange_;
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @return A list containing the enclosingRange.
*/
@java.lang.Override
public java.util.List<java.lang.Integer>
getEnclosingRangeList() {
return enclosingRange_;
}
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @return The count of enclosingRange.
*/
public int getEnclosingRangeCount() {
return enclosingRange_.size();
}
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @param index The index of the element to return.
* @return The enclosingRange at the given index.
*/
public int getEnclosingRange(int index) {
return enclosingRange_.getInt(index);
}
private int enclosingRangeMemoizedSerializedSize = -1;
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
getSerializedSize();
if (getRangeList().size() > 0) {
output.writeUInt32NoTag(10);
output.writeUInt32NoTag(rangeMemoizedSerializedSize);
}
for (int i = 0; i < range_.size(); i++) {
output.writeInt32NoTag(range_.getInt(i));
}
if (!getSymbolBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 2, symbol_);
}
if (symbolRoles_ != 0) {
output.writeInt32(3, symbolRoles_);
}
for (int i = 0; i < overrideDocumentation_.size(); i++) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 4, overrideDocumentation_.getRaw(i));
}
if (syntaxKind_ != scip.Scip.SyntaxKind.UnspecifiedSyntaxKind.getNumber()) {
output.writeEnum(5, syntaxKind_);
}
for (int i = 0; i < diagnostics_.size(); i++) {
output.writeMessage(6, diagnostics_.get(i));
}
if (getEnclosingRangeList().size() > 0) {
output.writeUInt32NoTag(58);
output.writeUInt32NoTag(enclosingRangeMemoizedSerializedSize);
}
for (int i = 0; i < enclosingRange_.size(); i++) {
output.writeInt32NoTag(enclosingRange_.getInt(i));
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
{
int dataSize = 0;
for (int i = 0; i < range_.size(); i++) {
dataSize += com.google.protobuf.CodedOutputStream
.computeInt32SizeNoTag(range_.getInt(i));
}
size += dataSize;
if (!getRangeList().isEmpty()) {
size += 1;
size += com.google.protobuf.CodedOutputStream
.computeInt32SizeNoTag(dataSize);
}
rangeMemoizedSerializedSize = dataSize;
}
if (!getSymbolBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, symbol_);
}
if (symbolRoles_ != 0) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(3, symbolRoles_);
}
{
int dataSize = 0;
for (int i = 0; i < overrideDocumentation_.size(); i++) {
dataSize += computeStringSizeNoTag(overrideDocumentation_.getRaw(i));
}
size += dataSize;
size += 1 * getOverrideDocumentationList().size();
}
if (syntaxKind_ != scip.Scip.SyntaxKind.UnspecifiedSyntaxKind.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(5, syntaxKind_);
}
for (int i = 0; i < diagnostics_.size(); i++) {
size += com.google.protobuf.CodedOutputStream
.computeMessageSize(6, diagnostics_.get(i));
}
{
int dataSize = 0;
for (int i = 0; i < enclosingRange_.size(); i++) {
dataSize += com.google.protobuf.CodedOutputStream
.computeInt32SizeNoTag(enclosingRange_.getInt(i));
}
size += dataSize;
if (!getEnclosingRangeList().isEmpty()) {
size += 1;
size += com.google.protobuf.CodedOutputStream
.computeInt32SizeNoTag(dataSize);
}
enclosingRangeMemoizedSerializedSize = dataSize;
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.Occurrence)) {
return super.equals(obj);
}
scip.Scip.Occurrence other = (scip.Scip.Occurrence) obj;
if (!getRangeList()
.equals(other.getRangeList())) return false;
if (!getSymbol()
.equals(other.getSymbol())) return false;
if (getSymbolRoles()
!= other.getSymbolRoles()) return false;
if (!getOverrideDocumentationList()
.equals(other.getOverrideDocumentationList())) return false;
if (syntaxKind_ != other.syntaxKind_) return false;
if (!getDiagnosticsList()
.equals(other.getDiagnosticsList())) return false;
if (!getEnclosingRangeList()
.equals(other.getEnclosingRangeList())) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
if (getRangeCount() > 0) {
hash = (37 * hash) + RANGE_FIELD_NUMBER;
hash = (53 * hash) + getRangeList().hashCode();
}
hash = (37 * hash) + SYMBOL_FIELD_NUMBER;
hash = (53 * hash) + getSymbol().hashCode();
hash = (37 * hash) + SYMBOL_ROLES_FIELD_NUMBER;
hash = (53 * hash) + getSymbolRoles();
if (getOverrideDocumentationCount() > 0) {
hash = (37 * hash) + OVERRIDE_DOCUMENTATION_FIELD_NUMBER;
hash = (53 * hash) + getOverrideDocumentationList().hashCode();
}
hash = (37 * hash) + SYNTAX_KIND_FIELD_NUMBER;
hash = (53 * hash) + syntaxKind_;
if (getDiagnosticsCount() > 0) {
hash = (37 * hash) + DIAGNOSTICS_FIELD_NUMBER;
hash = (53 * hash) + getDiagnosticsList().hashCode();
}
if (getEnclosingRangeCount() > 0) {
hash = (37 * hash) + ENCLOSING_RANGE_FIELD_NUMBER;
hash = (53 * hash) + getEnclosingRangeList().hashCode();
}
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.Occurrence parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Occurrence parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Occurrence parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Occurrence parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Occurrence parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Occurrence parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Occurrence parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Occurrence parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Occurrence parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.Occurrence parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Occurrence parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Occurrence parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.Occurrence prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* <pre>
* Occurrence associates a source position with a symbol and/or highlighting
* information.
* If possible, indexers should try to bundle logically related information
* across occurrences into a single occurrence to reduce payload sizes.
* </pre>
*
* Protobuf type {@code scip.Occurrence}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.Occurrence)
scip.Scip.OccurrenceOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Occurrence_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Occurrence_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Occurrence.class, scip.Scip.Occurrence.Builder.class);
}
// Construct using scip.Scip.Occurrence.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
getDiagnosticsFieldBuilder();
}
}
@java.lang.Override
public Builder clear() {
super.clear();
range_ = emptyIntList();
bitField0_ = (bitField0_ & ~0x00000001);
symbol_ = "";
symbolRoles_ = 0;
overrideDocumentation_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000002);
syntaxKind_ = 0;
if (diagnosticsBuilder_ == null) {
diagnostics_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000004);
} else {
diagnosticsBuilder_.clear();
}
enclosingRange_ = emptyIntList();
bitField0_ = (bitField0_ & ~0x00000008);
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_Occurrence_descriptor;
}
@java.lang.Override
public scip.Scip.Occurrence getDefaultInstanceForType() {
return scip.Scip.Occurrence.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.Occurrence build() {
scip.Scip.Occurrence result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.Occurrence buildPartial() {
scip.Scip.Occurrence result = new scip.Scip.Occurrence(this);
int from_bitField0_ = bitField0_;
if (((bitField0_ & 0x00000001) != 0)) {
range_.makeImmutable();
bitField0_ = (bitField0_ & ~0x00000001);
}
result.range_ = range_;
result.symbol_ = symbol_;
result.symbolRoles_ = symbolRoles_;
if (((bitField0_ & 0x00000002) != 0)) {
overrideDocumentation_ = overrideDocumentation_.getUnmodifiableView();
bitField0_ = (bitField0_ & ~0x00000002);
}
result.overrideDocumentation_ = overrideDocumentation_;
result.syntaxKind_ = syntaxKind_;
if (diagnosticsBuilder_ == null) {
if (((bitField0_ & 0x00000004) != 0)) {
diagnostics_ = java.util.Collections.unmodifiableList(diagnostics_);
bitField0_ = (bitField0_ & ~0x00000004);
}
result.diagnostics_ = diagnostics_;
} else {
result.diagnostics_ = diagnosticsBuilder_.build();
}
if (((bitField0_ & 0x00000008) != 0)) {
enclosingRange_.makeImmutable();
bitField0_ = (bitField0_ & ~0x00000008);
}
result.enclosingRange_ = enclosingRange_;
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.Occurrence) {
return mergeFrom((scip.Scip.Occurrence)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.Occurrence other) {
if (other == scip.Scip.Occurrence.getDefaultInstance()) return this;
if (!other.range_.isEmpty()) {
if (range_.isEmpty()) {
range_ = other.range_;
bitField0_ = (bitField0_ & ~0x00000001);
} else {
ensureRangeIsMutable();
range_.addAll(other.range_);
}
onChanged();
}
if (!other.getSymbol().isEmpty()) {
symbol_ = other.symbol_;
onChanged();
}
if (other.getSymbolRoles() != 0) {
setSymbolRoles(other.getSymbolRoles());
}
if (!other.overrideDocumentation_.isEmpty()) {
if (overrideDocumentation_.isEmpty()) {
overrideDocumentation_ = other.overrideDocumentation_;
bitField0_ = (bitField0_ & ~0x00000002);
} else {
ensureOverrideDocumentationIsMutable();
overrideDocumentation_.addAll(other.overrideDocumentation_);
}
onChanged();
}
if (other.syntaxKind_ != 0) {
setSyntaxKindValue(other.getSyntaxKindValue());
}
if (diagnosticsBuilder_ == null) {
if (!other.diagnostics_.isEmpty()) {
if (diagnostics_.isEmpty()) {
diagnostics_ = other.diagnostics_;
bitField0_ = (bitField0_ & ~0x00000004);
} else {
ensureDiagnosticsIsMutable();
diagnostics_.addAll(other.diagnostics_);
}
onChanged();
}
} else {
if (!other.diagnostics_.isEmpty()) {
if (diagnosticsBuilder_.isEmpty()) {
diagnosticsBuilder_.dispose();
diagnosticsBuilder_ = null;
diagnostics_ = other.diagnostics_;
bitField0_ = (bitField0_ & ~0x00000004);
diagnosticsBuilder_ =
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
getDiagnosticsFieldBuilder() : null;
} else {
diagnosticsBuilder_.addAllMessages(other.diagnostics_);
}
}
}
if (!other.enclosingRange_.isEmpty()) {
if (enclosingRange_.isEmpty()) {
enclosingRange_ = other.enclosingRange_;
bitField0_ = (bitField0_ & ~0x00000008);
} else {
ensureEnclosingRangeIsMutable();
enclosingRange_.addAll(other.enclosingRange_);
}
onChanged();
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.Occurrence parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.Occurrence) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private com.google.protobuf.Internal.IntList range_ = emptyIntList();
private void ensureRangeIsMutable() {
if (!((bitField0_ & 0x00000001) != 0)) {
range_ = mutableCopy(range_);
bitField0_ |= 0x00000001;
}
}
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @return A list containing the range.
*/
public java.util.List<java.lang.Integer>
getRangeList() {
return ((bitField0_ & 0x00000001) != 0) ?
java.util.Collections.unmodifiableList(range_) : range_;
}
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @return The count of range.
*/
public int getRangeCount() {
return range_.size();
}
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @param index The index of the element to return.
* @return The range at the given index.
*/
public int getRange(int index) {
return range_.getInt(index);
}
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @param index The index to set the value at.
* @param value The range to set.
* @return This builder for chaining.
*/
public Builder setRange(
int index, int value) {
ensureRangeIsMutable();
range_.setInt(index, value);
onChanged();
return this;
}
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @param value The range to add.
* @return This builder for chaining.
*/
public Builder addRange(int value) {
ensureRangeIsMutable();
range_.addInt(value);
onChanged();
return this;
}
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @param values The range to add.
* @return This builder for chaining.
*/
public Builder addAllRange(
java.lang.Iterable<? extends java.lang.Integer> values) {
ensureRangeIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, range_);
onChanged();
return this;
}
/**
* <pre>
* Half-open [start, end) range of this occurrence. Must be exactly three or four
* elements:
* - Four elements: `[startLine, startCharacter, endLine, endCharacter]`
* - Three elements: `[startLine, startCharacter, endCharacter]`. The end line
* is inferred to have the same value as the start line.
* It is allowed for the range to be empty (i.e. start==end).
* Line numbers and characters are always 0-based. Make sure to increment the
* line/character values before displaying them in an editor-like UI because
* editors conventionally use 1-based numbers.
* The 'character' value is interpreted based on the PositionEncoding for
* the Document.
* Historical note: the original draft of this schema had a `Range` message
* type with `start` and `end` fields of type `Position`, mirroring LSP.
* Benchmarks revealed that this encoding was inefficient and that we could
* reduce the total payload size of an index by 50% by using `repeated int32`
* instead. The `repeated int32` encoding is admittedly more embarrassing to
* work with in some programming languages but we hope the performance
* improvements make up for it.
* </pre>
*
* <code>repeated int32 range = 1;</code>
* @return This builder for chaining.
*/
public Builder clearRange() {
range_ = emptyIntList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
return this;
}
private java.lang.Object symbol_ = "";
/**
* <pre>
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
* </pre>
*
* <code>string symbol = 2;</code>
* @return The symbol.
*/
public java.lang.String getSymbol() {
java.lang.Object ref = symbol_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
symbol_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
* </pre>
*
* <code>string symbol = 2;</code>
* @return The bytes for symbol.
*/
public com.google.protobuf.ByteString
getSymbolBytes() {
java.lang.Object ref = symbol_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
symbol_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
* </pre>
*
* <code>string symbol = 2;</code>
* @param value The symbol to set.
* @return This builder for chaining.
*/
public Builder setSymbol(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
symbol_ = value;
onChanged();
return this;
}
/**
* <pre>
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
* </pre>
*
* <code>string symbol = 2;</code>
* @return This builder for chaining.
*/
public Builder clearSymbol() {
symbol_ = getDefaultInstance().getSymbol();
onChanged();
return this;
}
/**
* <pre>
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
* </pre>
*
* <code>string symbol = 2;</code>
* @param value The bytes for symbol to set.
* @return This builder for chaining.
*/
public Builder setSymbolBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
symbol_ = value;
onChanged();
return this;
}
private int symbolRoles_ ;
/**
* <pre>
* (optional) Bitset containing `SymbolRole`s in this occurrence.
* See `SymbolRole`'s documentation for how to read and write this field.
* </pre>
*
* <code>int32 symbol_roles = 3;</code>
* @return The symbolRoles.
*/
@java.lang.Override
public int getSymbolRoles() {
return symbolRoles_;
}
/**
* <pre>
* (optional) Bitset containing `SymbolRole`s in this occurrence.
* See `SymbolRole`'s documentation for how to read and write this field.
* </pre>
*
* <code>int32 symbol_roles = 3;</code>
* @param value The symbolRoles to set.
* @return This builder for chaining.
*/
public Builder setSymbolRoles(int value) {
symbolRoles_ = value;
onChanged();
return this;
}
/**
* <pre>
* (optional) Bitset containing `SymbolRole`s in this occurrence.
* See `SymbolRole`'s documentation for how to read and write this field.
* </pre>
*
* <code>int32 symbol_roles = 3;</code>
* @return This builder for chaining.
*/
public Builder clearSymbolRoles() {
symbolRoles_ = 0;
onChanged();
return this;
}
private com.google.protobuf.LazyStringList overrideDocumentation_ = com.google.protobuf.LazyStringArrayList.EMPTY;
private void ensureOverrideDocumentationIsMutable() {
if (!((bitField0_ & 0x00000002) != 0)) {
overrideDocumentation_ = new com.google.protobuf.LazyStringArrayList(overrideDocumentation_);
bitField0_ |= 0x00000002;
}
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @return A list containing the overrideDocumentation.
*/
public com.google.protobuf.ProtocolStringList
getOverrideDocumentationList() {
return overrideDocumentation_.getUnmodifiableView();
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @return The count of overrideDocumentation.
*/
public int getOverrideDocumentationCount() {
return overrideDocumentation_.size();
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @param index The index of the element to return.
* @return The overrideDocumentation at the given index.
*/
public java.lang.String getOverrideDocumentation(int index) {
return overrideDocumentation_.get(index);
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @param index The index of the value to return.
* @return The bytes of the overrideDocumentation at the given index.
*/
public com.google.protobuf.ByteString
getOverrideDocumentationBytes(int index) {
return overrideDocumentation_.getByteString(index);
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @param index The index to set the value at.
* @param value The overrideDocumentation to set.
* @return This builder for chaining.
*/
public Builder setOverrideDocumentation(
int index, java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureOverrideDocumentationIsMutable();
overrideDocumentation_.set(index, value);
onChanged();
return this;
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @param value The overrideDocumentation to add.
* @return This builder for chaining.
*/
public Builder addOverrideDocumentation(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
ensureOverrideDocumentationIsMutable();
overrideDocumentation_.add(value);
onChanged();
return this;
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @param values The overrideDocumentation to add.
* @return This builder for chaining.
*/
public Builder addAllOverrideDocumentation(
java.lang.Iterable<java.lang.String> values) {
ensureOverrideDocumentationIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, overrideDocumentation_);
onChanged();
return this;
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @return This builder for chaining.
*/
public Builder clearOverrideDocumentation() {
overrideDocumentation_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000002);
onChanged();
return this;
}
/**
* <pre>
* (optional) CommonMark-formatted documentation for this specific range. If
* empty, the `Symbol.documentation` field is used instead. One example
* where this field might be useful is when the symbol represents a generic
* function (with abstract type parameters such as `List&lt;T&gt;`) and at this
* occurrence we know the exact values (such as `List&lt;String&gt;`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
* </pre>
*
* <code>repeated string override_documentation = 4;</code>
* @param value The bytes of the overrideDocumentation to add.
* @return This builder for chaining.
*/
public Builder addOverrideDocumentationBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
ensureOverrideDocumentationIsMutable();
overrideDocumentation_.add(value);
onChanged();
return this;
}
private int syntaxKind_ = 0;
/**
* <pre>
* (optional) What syntax highlighting class should be used for this range?
* </pre>
*
* <code>.scip.SyntaxKind syntax_kind = 5;</code>
* @return The enum numeric value on the wire for syntaxKind.
*/
@java.lang.Override public int getSyntaxKindValue() {
return syntaxKind_;
}
/**
* <pre>
* (optional) What syntax highlighting class should be used for this range?
* </pre>
*
* <code>.scip.SyntaxKind syntax_kind = 5;</code>
* @param value The enum numeric value on the wire for syntaxKind to set.
* @return This builder for chaining.
*/
public Builder setSyntaxKindValue(int value) {
syntaxKind_ = value;
onChanged();
return this;
}
/**
* <pre>
* (optional) What syntax highlighting class should be used for this range?
* </pre>
*
* <code>.scip.SyntaxKind syntax_kind = 5;</code>
* @return The syntaxKind.
*/
@java.lang.Override
public scip.Scip.SyntaxKind getSyntaxKind() {
@SuppressWarnings("deprecation")
scip.Scip.SyntaxKind result = scip.Scip.SyntaxKind.valueOf(syntaxKind_);
return result == null ? scip.Scip.SyntaxKind.UNRECOGNIZED : result;
}
/**
* <pre>
* (optional) What syntax highlighting class should be used for this range?
* </pre>
*
* <code>.scip.SyntaxKind syntax_kind = 5;</code>
* @param value The syntaxKind to set.
* @return This builder for chaining.
*/
public Builder setSyntaxKind(scip.Scip.SyntaxKind value) {
if (value == null) {
throw new NullPointerException();
}
syntaxKind_ = value.getNumber();
onChanged();
return this;
}
/**
* <pre>
* (optional) What syntax highlighting class should be used for this range?
* </pre>
*
* <code>.scip.SyntaxKind syntax_kind = 5;</code>
* @return This builder for chaining.
*/
public Builder clearSyntaxKind() {
syntaxKind_ = 0;
onChanged();
return this;
}
private java.util.List<scip.Scip.Diagnostic> diagnostics_ =
java.util.Collections.emptyList();
private void ensureDiagnosticsIsMutable() {
if (!((bitField0_ & 0x00000004) != 0)) {
diagnostics_ = new java.util.ArrayList<scip.Scip.Diagnostic>(diagnostics_);
bitField0_ |= 0x00000004;
}
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Diagnostic, scip.Scip.Diagnostic.Builder, scip.Scip.DiagnosticOrBuilder> diagnosticsBuilder_;
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public java.util.List<scip.Scip.Diagnostic> getDiagnosticsList() {
if (diagnosticsBuilder_ == null) {
return java.util.Collections.unmodifiableList(diagnostics_);
} else {
return diagnosticsBuilder_.getMessageList();
}
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public int getDiagnosticsCount() {
if (diagnosticsBuilder_ == null) {
return diagnostics_.size();
} else {
return diagnosticsBuilder_.getCount();
}
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public scip.Scip.Diagnostic getDiagnostics(int index) {
if (diagnosticsBuilder_ == null) {
return diagnostics_.get(index);
} else {
return diagnosticsBuilder_.getMessage(index);
}
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public Builder setDiagnostics(
int index, scip.Scip.Diagnostic value) {
if (diagnosticsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDiagnosticsIsMutable();
diagnostics_.set(index, value);
onChanged();
} else {
diagnosticsBuilder_.setMessage(index, value);
}
return this;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public Builder setDiagnostics(
int index, scip.Scip.Diagnostic.Builder builderForValue) {
if (diagnosticsBuilder_ == null) {
ensureDiagnosticsIsMutable();
diagnostics_.set(index, builderForValue.build());
onChanged();
} else {
diagnosticsBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public Builder addDiagnostics(scip.Scip.Diagnostic value) {
if (diagnosticsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDiagnosticsIsMutable();
diagnostics_.add(value);
onChanged();
} else {
diagnosticsBuilder_.addMessage(value);
}
return this;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public Builder addDiagnostics(
int index, scip.Scip.Diagnostic value) {
if (diagnosticsBuilder_ == null) {
if (value == null) {
throw new NullPointerException();
}
ensureDiagnosticsIsMutable();
diagnostics_.add(index, value);
onChanged();
} else {
diagnosticsBuilder_.addMessage(index, value);
}
return this;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public Builder addDiagnostics(
scip.Scip.Diagnostic.Builder builderForValue) {
if (diagnosticsBuilder_ == null) {
ensureDiagnosticsIsMutable();
diagnostics_.add(builderForValue.build());
onChanged();
} else {
diagnosticsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public Builder addDiagnostics(
int index, scip.Scip.Diagnostic.Builder builderForValue) {
if (diagnosticsBuilder_ == null) {
ensureDiagnosticsIsMutable();
diagnostics_.add(index, builderForValue.build());
onChanged();
} else {
diagnosticsBuilder_.addMessage(index, builderForValue.build());
}
return this;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public Builder addAllDiagnostics(
java.lang.Iterable<? extends scip.Scip.Diagnostic> values) {
if (diagnosticsBuilder_ == null) {
ensureDiagnosticsIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, diagnostics_);
onChanged();
} else {
diagnosticsBuilder_.addAllMessages(values);
}
return this;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public Builder clearDiagnostics() {
if (diagnosticsBuilder_ == null) {
diagnostics_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000004);
onChanged();
} else {
diagnosticsBuilder_.clear();
}
return this;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public Builder removeDiagnostics(int index) {
if (diagnosticsBuilder_ == null) {
ensureDiagnosticsIsMutable();
diagnostics_.remove(index);
onChanged();
} else {
diagnosticsBuilder_.remove(index);
}
return this;
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public scip.Scip.Diagnostic.Builder getDiagnosticsBuilder(
int index) {
return getDiagnosticsFieldBuilder().getBuilder(index);
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public scip.Scip.DiagnosticOrBuilder getDiagnosticsOrBuilder(
int index) {
if (diagnosticsBuilder_ == null) {
return diagnostics_.get(index); } else {
return diagnosticsBuilder_.getMessageOrBuilder(index);
}
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public java.util.List<? extends scip.Scip.DiagnosticOrBuilder>
getDiagnosticsOrBuilderList() {
if (diagnosticsBuilder_ != null) {
return diagnosticsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(diagnostics_);
}
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public scip.Scip.Diagnostic.Builder addDiagnosticsBuilder() {
return getDiagnosticsFieldBuilder().addBuilder(
scip.Scip.Diagnostic.getDefaultInstance());
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public scip.Scip.Diagnostic.Builder addDiagnosticsBuilder(
int index) {
return getDiagnosticsFieldBuilder().addBuilder(
index, scip.Scip.Diagnostic.getDefaultInstance());
}
/**
* <pre>
* (optional) Diagnostics that have been reported for this specific range.
* </pre>
*
* <code>repeated .scip.Diagnostic diagnostics = 6;</code>
*/
public java.util.List<scip.Scip.Diagnostic.Builder>
getDiagnosticsBuilderList() {
return getDiagnosticsFieldBuilder().getBuilderList();
}
private com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Diagnostic, scip.Scip.Diagnostic.Builder, scip.Scip.DiagnosticOrBuilder>
getDiagnosticsFieldBuilder() {
if (diagnosticsBuilder_ == null) {
diagnosticsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
scip.Scip.Diagnostic, scip.Scip.Diagnostic.Builder, scip.Scip.DiagnosticOrBuilder>(
diagnostics_,
((bitField0_ & 0x00000004) != 0),
getParentForChildren(),
isClean());
diagnostics_ = null;
}
return diagnosticsBuilder_;
}
private com.google.protobuf.Internal.IntList enclosingRange_ = emptyIntList();
private void ensureEnclosingRangeIsMutable() {
if (!((bitField0_ & 0x00000008) != 0)) {
enclosingRange_ = mutableCopy(enclosingRange_);
bitField0_ |= 0x00000008;
}
}
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @return A list containing the enclosingRange.
*/
public java.util.List<java.lang.Integer>
getEnclosingRangeList() {
return ((bitField0_ & 0x00000008) != 0) ?
java.util.Collections.unmodifiableList(enclosingRange_) : enclosingRange_;
}
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @return The count of enclosingRange.
*/
public int getEnclosingRangeCount() {
return enclosingRange_.size();
}
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @param index The index of the element to return.
* @return The enclosingRange at the given index.
*/
public int getEnclosingRange(int index) {
return enclosingRange_.getInt(index);
}
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @param index The index to set the value at.
* @param value The enclosingRange to set.
* @return This builder for chaining.
*/
public Builder setEnclosingRange(
int index, int value) {
ensureEnclosingRangeIsMutable();
enclosingRange_.setInt(index, value);
onChanged();
return this;
}
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @param value The enclosingRange to add.
* @return This builder for chaining.
*/
public Builder addEnclosingRange(int value) {
ensureEnclosingRangeIsMutable();
enclosingRange_.addInt(value);
onChanged();
return this;
}
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @param values The enclosingRange to add.
* @return This builder for chaining.
*/
public Builder addAllEnclosingRange(
java.lang.Iterable<? extends java.lang.Integer> values) {
ensureEnclosingRangeIsMutable();
com.google.protobuf.AbstractMessageLite.Builder.addAll(
values, enclosingRange_);
onChanged();
return this;
}
/**
* <pre>
* (optional) Using the same encoding as the sibling `range` field, half-open
* source range of the nearest non-trivial enclosing AST node. This range must
* enclose the `range` field. Example applications that make use of the
* enclosing_range field:
* - Call hierarchies: to determine what symbols are references from the body
* of a function
* - Symbol outline: to display breadcrumbs from the cursor position to the
* root of the file
* - Expand selection: to select the nearest enclosing AST node.
* - Highlight range: to indicate the AST expression that is associated with a
* hover popover
* For definition occurrences, the enclosing range should indicate the
* start/end bounds of the entire definition AST node, including
* documentation.
* ```
* const n = 3
* ^ range
* ^^^^^^^^^^^ enclosing_range
* /&#42;* Parses the string into something *&#47;
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end &lt;---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* &#64;cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* &lt; enclosing_range end-----------------------|
* ```
* For reference occurrences, the enclosing range should indicate the start/end
* bounds of the parent expression.
* ```
* const a = a.b
* ^ range
* ^^^ enclosing_range
* const b = a.b(41).f(42).g(43)
* ^ range
* ^^^^^^^^^^^^^ enclosing_range
* ```
* </pre>
*
* <code>repeated int32 enclosing_range = 7;</code>
* @return This builder for chaining.
*/
public Builder clearEnclosingRange() {
enclosingRange_ = emptyIntList();
bitField0_ = (bitField0_ & ~0x00000008);
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.Occurrence)
}
// @@protoc_insertion_point(class_scope:scip.Occurrence)
private static final scip.Scip.Occurrence DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.Occurrence();
}
public static scip.Scip.Occurrence getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<Occurrence>
PARSER = new com.google.protobuf.AbstractParser<Occurrence>() {
@java.lang.Override
public Occurrence parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Occurrence(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<Occurrence> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<Occurrence> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.Occurrence getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
public interface DiagnosticOrBuilder extends
// @@protoc_insertion_point(interface_extends:scip.Diagnostic)
com.google.protobuf.MessageOrBuilder {
/**
* <pre>
* Should this diagnostic be reported as an error, warning, info, or hint?
* </pre>
*
* <code>.scip.Severity severity = 1;</code>
* @return The enum numeric value on the wire for severity.
*/
int getSeverityValue();
/**
* <pre>
* Should this diagnostic be reported as an error, warning, info, or hint?
* </pre>
*
* <code>.scip.Severity severity = 1;</code>
* @return The severity.
*/
scip.Scip.Severity getSeverity();
/**
* <pre>
* (optional) Code of this diagnostic, which might appear in the user interface.
* </pre>
*
* <code>string code = 2;</code>
* @return The code.
*/
java.lang.String getCode();
/**
* <pre>
* (optional) Code of this diagnostic, which might appear in the user interface.
* </pre>
*
* <code>string code = 2;</code>
* @return The bytes for code.
*/
com.google.protobuf.ByteString
getCodeBytes();
/**
* <pre>
* Message of this diagnostic.
* </pre>
*
* <code>string message = 3;</code>
* @return The message.
*/
java.lang.String getMessage();
/**
* <pre>
* Message of this diagnostic.
* </pre>
*
* <code>string message = 3;</code>
* @return The bytes for message.
*/
com.google.protobuf.ByteString
getMessageBytes();
/**
* <pre>
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
* </pre>
*
* <code>string source = 4;</code>
* @return The source.
*/
java.lang.String getSource();
/**
* <pre>
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
* </pre>
*
* <code>string source = 4;</code>
* @return The bytes for source.
*/
com.google.protobuf.ByteString
getSourceBytes();
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @return A list containing the tags.
*/
java.util.List<scip.Scip.DiagnosticTag> getTagsList();
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @return The count of tags.
*/
int getTagsCount();
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param index The index of the element to return.
* @return The tags at the given index.
*/
scip.Scip.DiagnosticTag getTags(int index);
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @return A list containing the enum numeric values on the wire for tags.
*/
java.util.List<java.lang.Integer>
getTagsValueList();
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param index The index of the value to return.
* @return The enum numeric value on the wire of tags at the given index.
*/
int getTagsValue(int index);
}
/**
* <pre>
* Represents a diagnostic, such as a compiler error or warning, which should be
* reported for a document.
* </pre>
*
* Protobuf type {@code scip.Diagnostic}
*/
public static final class Diagnostic extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:scip.Diagnostic)
DiagnosticOrBuilder {
private static final long serialVersionUID = 0L;
// Use Diagnostic.newBuilder() to construct.
private Diagnostic(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private Diagnostic() {
severity_ = 0;
code_ = "";
message_ = "";
source_ = "";
tags_ = java.util.Collections.emptyList();
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new Diagnostic();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private Diagnostic(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
int mutable_bitField0_ = 0;
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 8: {
int rawValue = input.readEnum();
severity_ = rawValue;
break;
}
case 18: {
java.lang.String s = input.readStringRequireUtf8();
code_ = s;
break;
}
case 26: {
java.lang.String s = input.readStringRequireUtf8();
message_ = s;
break;
}
case 34: {
java.lang.String s = input.readStringRequireUtf8();
source_ = s;
break;
}
case 40: {
int rawValue = input.readEnum();
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
tags_ = new java.util.ArrayList<java.lang.Integer>();
mutable_bitField0_ |= 0x00000001;
}
tags_.add(rawValue);
break;
}
case 42: {
int length = input.readRawVarint32();
int oldLimit = input.pushLimit(length);
while(input.getBytesUntilLimit() > 0) {
int rawValue = input.readEnum();
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
tags_ = new java.util.ArrayList<java.lang.Integer>();
mutable_bitField0_ |= 0x00000001;
}
tags_.add(rawValue);
}
input.popLimit(oldLimit);
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
if (((mutable_bitField0_ & 0x00000001) != 0)) {
tags_ = java.util.Collections.unmodifiableList(tags_);
}
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Diagnostic_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Diagnostic_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Diagnostic.class, scip.Scip.Diagnostic.Builder.class);
}
public static final int SEVERITY_FIELD_NUMBER = 1;
private int severity_;
/**
* <pre>
* Should this diagnostic be reported as an error, warning, info, or hint?
* </pre>
*
* <code>.scip.Severity severity = 1;</code>
* @return The enum numeric value on the wire for severity.
*/
@java.lang.Override public int getSeverityValue() {
return severity_;
}
/**
* <pre>
* Should this diagnostic be reported as an error, warning, info, or hint?
* </pre>
*
* <code>.scip.Severity severity = 1;</code>
* @return The severity.
*/
@java.lang.Override public scip.Scip.Severity getSeverity() {
@SuppressWarnings("deprecation")
scip.Scip.Severity result = scip.Scip.Severity.valueOf(severity_);
return result == null ? scip.Scip.Severity.UNRECOGNIZED : result;
}
public static final int CODE_FIELD_NUMBER = 2;
private volatile java.lang.Object code_;
/**
* <pre>
* (optional) Code of this diagnostic, which might appear in the user interface.
* </pre>
*
* <code>string code = 2;</code>
* @return The code.
*/
@java.lang.Override
public java.lang.String getCode() {
java.lang.Object ref = code_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
code_ = s;
return s;
}
}
/**
* <pre>
* (optional) Code of this diagnostic, which might appear in the user interface.
* </pre>
*
* <code>string code = 2;</code>
* @return The bytes for code.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getCodeBytes() {
java.lang.Object ref = code_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
code_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int MESSAGE_FIELD_NUMBER = 3;
private volatile java.lang.Object message_;
/**
* <pre>
* Message of this diagnostic.
* </pre>
*
* <code>string message = 3;</code>
* @return The message.
*/
@java.lang.Override
public java.lang.String getMessage() {
java.lang.Object ref = message_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
message_ = s;
return s;
}
}
/**
* <pre>
* Message of this diagnostic.
* </pre>
*
* <code>string message = 3;</code>
* @return The bytes for message.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getMessageBytes() {
java.lang.Object ref = message_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
message_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int SOURCE_FIELD_NUMBER = 4;
private volatile java.lang.Object source_;
/**
* <pre>
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
* </pre>
*
* <code>string source = 4;</code>
* @return The source.
*/
@java.lang.Override
public java.lang.String getSource() {
java.lang.Object ref = source_;
if (ref instanceof java.lang.String) {
return (java.lang.String) ref;
} else {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
source_ = s;
return s;
}
}
/**
* <pre>
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
* </pre>
*
* <code>string source = 4;</code>
* @return The bytes for source.
*/
@java.lang.Override
public com.google.protobuf.ByteString
getSourceBytes() {
java.lang.Object ref = source_;
if (ref instanceof java.lang.String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
source_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
public static final int TAGS_FIELD_NUMBER = 5;
private java.util.List<java.lang.Integer> tags_;
private static final com.google.protobuf.Internal.ListAdapter.Converter<
java.lang.Integer, scip.Scip.DiagnosticTag> tags_converter_ =
new com.google.protobuf.Internal.ListAdapter.Converter<
java.lang.Integer, scip.Scip.DiagnosticTag>() {
public scip.Scip.DiagnosticTag convert(java.lang.Integer from) {
@SuppressWarnings("deprecation")
scip.Scip.DiagnosticTag result = scip.Scip.DiagnosticTag.valueOf(from);
return result == null ? scip.Scip.DiagnosticTag.UNRECOGNIZED : result;
}
};
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @return A list containing the tags.
*/
@java.lang.Override
public java.util.List<scip.Scip.DiagnosticTag> getTagsList() {
return new com.google.protobuf.Internal.ListAdapter<
java.lang.Integer, scip.Scip.DiagnosticTag>(tags_, tags_converter_);
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @return The count of tags.
*/
@java.lang.Override
public int getTagsCount() {
return tags_.size();
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param index The index of the element to return.
* @return The tags at the given index.
*/
@java.lang.Override
public scip.Scip.DiagnosticTag getTags(int index) {
return tags_converter_.convert(tags_.get(index));
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @return A list containing the enum numeric values on the wire for tags.
*/
@java.lang.Override
public java.util.List<java.lang.Integer>
getTagsValueList() {
return tags_;
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param index The index of the value to return.
* @return The enum numeric value on the wire of tags at the given index.
*/
@java.lang.Override
public int getTagsValue(int index) {
return tags_.get(index);
}
private int tagsMemoizedSerializedSize;
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
getSerializedSize();
if (severity_ != scip.Scip.Severity.UnspecifiedSeverity.getNumber()) {
output.writeEnum(1, severity_);
}
if (!getCodeBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 2, code_);
}
if (!getMessageBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 3, message_);
}
if (!getSourceBytes().isEmpty()) {
com.google.protobuf.GeneratedMessageV3.writeString(output, 4, source_);
}
if (getTagsList().size() > 0) {
output.writeUInt32NoTag(42);
output.writeUInt32NoTag(tagsMemoizedSerializedSize);
}
for (int i = 0; i < tags_.size(); i++) {
output.writeEnumNoTag(tags_.get(i));
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (severity_ != scip.Scip.Severity.UnspecifiedSeverity.getNumber()) {
size += com.google.protobuf.CodedOutputStream
.computeEnumSize(1, severity_);
}
if (!getCodeBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, code_);
}
if (!getMessageBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, message_);
}
if (!getSourceBytes().isEmpty()) {
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, source_);
}
{
int dataSize = 0;
for (int i = 0; i < tags_.size(); i++) {
dataSize += com.google.protobuf.CodedOutputStream
.computeEnumSizeNoTag(tags_.get(i));
}
size += dataSize;
if (!getTagsList().isEmpty()) { size += 1;
size += com.google.protobuf.CodedOutputStream
.computeUInt32SizeNoTag(dataSize);
}tagsMemoizedSerializedSize = dataSize;
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof scip.Scip.Diagnostic)) {
return super.equals(obj);
}
scip.Scip.Diagnostic other = (scip.Scip.Diagnostic) obj;
if (severity_ != other.severity_) return false;
if (!getCode()
.equals(other.getCode())) return false;
if (!getMessage()
.equals(other.getMessage())) return false;
if (!getSource()
.equals(other.getSource())) return false;
if (!tags_.equals(other.tags_)) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + SEVERITY_FIELD_NUMBER;
hash = (53 * hash) + severity_;
hash = (37 * hash) + CODE_FIELD_NUMBER;
hash = (53 * hash) + getCode().hashCode();
hash = (37 * hash) + MESSAGE_FIELD_NUMBER;
hash = (53 * hash) + getMessage().hashCode();
hash = (37 * hash) + SOURCE_FIELD_NUMBER;
hash = (53 * hash) + getSource().hashCode();
if (getTagsCount() > 0) {
hash = (37 * hash) + TAGS_FIELD_NUMBER;
hash = (53 * hash) + tags_.hashCode();
}
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static scip.Scip.Diagnostic parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Diagnostic parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Diagnostic parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Diagnostic parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Diagnostic parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static scip.Scip.Diagnostic parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static scip.Scip.Diagnostic parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Diagnostic parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Diagnostic parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static scip.Scip.Diagnostic parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static scip.Scip.Diagnostic parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static scip.Scip.Diagnostic parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(scip.Scip.Diagnostic prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* <pre>
* Represents a diagnostic, such as a compiler error or warning, which should be
* reported for a document.
* </pre>
*
* Protobuf type {@code scip.Diagnostic}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:scip.Diagnostic)
scip.Scip.DiagnosticOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return scip.Scip.internal_static_scip_Diagnostic_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return scip.Scip.internal_static_scip_Diagnostic_fieldAccessorTable
.ensureFieldAccessorsInitialized(
scip.Scip.Diagnostic.class, scip.Scip.Diagnostic.Builder.class);
}
// Construct using scip.Scip.Diagnostic.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
@java.lang.Override
public Builder clear() {
super.clear();
severity_ = 0;
code_ = "";
message_ = "";
source_ = "";
tags_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return scip.Scip.internal_static_scip_Diagnostic_descriptor;
}
@java.lang.Override
public scip.Scip.Diagnostic getDefaultInstanceForType() {
return scip.Scip.Diagnostic.getDefaultInstance();
}
@java.lang.Override
public scip.Scip.Diagnostic build() {
scip.Scip.Diagnostic result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public scip.Scip.Diagnostic buildPartial() {
scip.Scip.Diagnostic result = new scip.Scip.Diagnostic(this);
int from_bitField0_ = bitField0_;
result.severity_ = severity_;
result.code_ = code_;
result.message_ = message_;
result.source_ = source_;
if (((bitField0_ & 0x00000001) != 0)) {
tags_ = java.util.Collections.unmodifiableList(tags_);
bitField0_ = (bitField0_ & ~0x00000001);
}
result.tags_ = tags_;
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof scip.Scip.Diagnostic) {
return mergeFrom((scip.Scip.Diagnostic)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(scip.Scip.Diagnostic other) {
if (other == scip.Scip.Diagnostic.getDefaultInstance()) return this;
if (other.severity_ != 0) {
setSeverityValue(other.getSeverityValue());
}
if (!other.getCode().isEmpty()) {
code_ = other.code_;
onChanged();
}
if (!other.getMessage().isEmpty()) {
message_ = other.message_;
onChanged();
}
if (!other.getSource().isEmpty()) {
source_ = other.source_;
onChanged();
}
if (!other.tags_.isEmpty()) {
if (tags_.isEmpty()) {
tags_ = other.tags_;
bitField0_ = (bitField0_ & ~0x00000001);
} else {
ensureTagsIsMutable();
tags_.addAll(other.tags_);
}
onChanged();
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
scip.Scip.Diagnostic parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (scip.Scip.Diagnostic) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int bitField0_;
private int severity_ = 0;
/**
* <pre>
* Should this diagnostic be reported as an error, warning, info, or hint?
* </pre>
*
* <code>.scip.Severity severity = 1;</code>
* @return The enum numeric value on the wire for severity.
*/
@java.lang.Override public int getSeverityValue() {
return severity_;
}
/**
* <pre>
* Should this diagnostic be reported as an error, warning, info, or hint?
* </pre>
*
* <code>.scip.Severity severity = 1;</code>
* @param value The enum numeric value on the wire for severity to set.
* @return This builder for chaining.
*/
public Builder setSeverityValue(int value) {
severity_ = value;
onChanged();
return this;
}
/**
* <pre>
* Should this diagnostic be reported as an error, warning, info, or hint?
* </pre>
*
* <code>.scip.Severity severity = 1;</code>
* @return The severity.
*/
@java.lang.Override
public scip.Scip.Severity getSeverity() {
@SuppressWarnings("deprecation")
scip.Scip.Severity result = scip.Scip.Severity.valueOf(severity_);
return result == null ? scip.Scip.Severity.UNRECOGNIZED : result;
}
/**
* <pre>
* Should this diagnostic be reported as an error, warning, info, or hint?
* </pre>
*
* <code>.scip.Severity severity = 1;</code>
* @param value The severity to set.
* @return This builder for chaining.
*/
public Builder setSeverity(scip.Scip.Severity value) {
if (value == null) {
throw new NullPointerException();
}
severity_ = value.getNumber();
onChanged();
return this;
}
/**
* <pre>
* Should this diagnostic be reported as an error, warning, info, or hint?
* </pre>
*
* <code>.scip.Severity severity = 1;</code>
* @return This builder for chaining.
*/
public Builder clearSeverity() {
severity_ = 0;
onChanged();
return this;
}
private java.lang.Object code_ = "";
/**
* <pre>
* (optional) Code of this diagnostic, which might appear in the user interface.
* </pre>
*
* <code>string code = 2;</code>
* @return The code.
*/
public java.lang.String getCode() {
java.lang.Object ref = code_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
code_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* (optional) Code of this diagnostic, which might appear in the user interface.
* </pre>
*
* <code>string code = 2;</code>
* @return The bytes for code.
*/
public com.google.protobuf.ByteString
getCodeBytes() {
java.lang.Object ref = code_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
code_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* (optional) Code of this diagnostic, which might appear in the user interface.
* </pre>
*
* <code>string code = 2;</code>
* @param value The code to set.
* @return This builder for chaining.
*/
public Builder setCode(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
code_ = value;
onChanged();
return this;
}
/**
* <pre>
* (optional) Code of this diagnostic, which might appear in the user interface.
* </pre>
*
* <code>string code = 2;</code>
* @return This builder for chaining.
*/
public Builder clearCode() {
code_ = getDefaultInstance().getCode();
onChanged();
return this;
}
/**
* <pre>
* (optional) Code of this diagnostic, which might appear in the user interface.
* </pre>
*
* <code>string code = 2;</code>
* @param value The bytes for code to set.
* @return This builder for chaining.
*/
public Builder setCodeBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
code_ = value;
onChanged();
return this;
}
private java.lang.Object message_ = "";
/**
* <pre>
* Message of this diagnostic.
* </pre>
*
* <code>string message = 3;</code>
* @return The message.
*/
public java.lang.String getMessage() {
java.lang.Object ref = message_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
message_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* Message of this diagnostic.
* </pre>
*
* <code>string message = 3;</code>
* @return The bytes for message.
*/
public com.google.protobuf.ByteString
getMessageBytes() {
java.lang.Object ref = message_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
message_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* Message of this diagnostic.
* </pre>
*
* <code>string message = 3;</code>
* @param value The message to set.
* @return This builder for chaining.
*/
public Builder setMessage(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
message_ = value;
onChanged();
return this;
}
/**
* <pre>
* Message of this diagnostic.
* </pre>
*
* <code>string message = 3;</code>
* @return This builder for chaining.
*/
public Builder clearMessage() {
message_ = getDefaultInstance().getMessage();
onChanged();
return this;
}
/**
* <pre>
* Message of this diagnostic.
* </pre>
*
* <code>string message = 3;</code>
* @param value The bytes for message to set.
* @return This builder for chaining.
*/
public Builder setMessageBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
message_ = value;
onChanged();
return this;
}
private java.lang.Object source_ = "";
/**
* <pre>
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
* </pre>
*
* <code>string source = 4;</code>
* @return The source.
*/
public java.lang.String getSource() {
java.lang.Object ref = source_;
if (!(ref instanceof java.lang.String)) {
com.google.protobuf.ByteString bs =
(com.google.protobuf.ByteString) ref;
java.lang.String s = bs.toStringUtf8();
source_ = s;
return s;
} else {
return (java.lang.String) ref;
}
}
/**
* <pre>
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
* </pre>
*
* <code>string source = 4;</code>
* @return The bytes for source.
*/
public com.google.protobuf.ByteString
getSourceBytes() {
java.lang.Object ref = source_;
if (ref instanceof String) {
com.google.protobuf.ByteString b =
com.google.protobuf.ByteString.copyFromUtf8(
(java.lang.String) ref);
source_ = b;
return b;
} else {
return (com.google.protobuf.ByteString) ref;
}
}
/**
* <pre>
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
* </pre>
*
* <code>string source = 4;</code>
* @param value The source to set.
* @return This builder for chaining.
*/
public Builder setSource(
java.lang.String value) {
if (value == null) {
throw new NullPointerException();
}
source_ = value;
onChanged();
return this;
}
/**
* <pre>
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
* </pre>
*
* <code>string source = 4;</code>
* @return This builder for chaining.
*/
public Builder clearSource() {
source_ = getDefaultInstance().getSource();
onChanged();
return this;
}
/**
* <pre>
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
* </pre>
*
* <code>string source = 4;</code>
* @param value The bytes for source to set.
* @return This builder for chaining.
*/
public Builder setSourceBytes(
com.google.protobuf.ByteString value) {
if (value == null) {
throw new NullPointerException();
}
checkByteStringIsUtf8(value);
source_ = value;
onChanged();
return this;
}
private java.util.List<java.lang.Integer> tags_ =
java.util.Collections.emptyList();
private void ensureTagsIsMutable() {
if (!((bitField0_ & 0x00000001) != 0)) {
tags_ = new java.util.ArrayList<java.lang.Integer>(tags_);
bitField0_ |= 0x00000001;
}
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @return A list containing the tags.
*/
public java.util.List<scip.Scip.DiagnosticTag> getTagsList() {
return new com.google.protobuf.Internal.ListAdapter<
java.lang.Integer, scip.Scip.DiagnosticTag>(tags_, tags_converter_);
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @return The count of tags.
*/
public int getTagsCount() {
return tags_.size();
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param index The index of the element to return.
* @return The tags at the given index.
*/
public scip.Scip.DiagnosticTag getTags(int index) {
return tags_converter_.convert(tags_.get(index));
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param index The index to set the value at.
* @param value The tags to set.
* @return This builder for chaining.
*/
public Builder setTags(
int index, scip.Scip.DiagnosticTag value) {
if (value == null) {
throw new NullPointerException();
}
ensureTagsIsMutable();
tags_.set(index, value.getNumber());
onChanged();
return this;
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param value The tags to add.
* @return This builder for chaining.
*/
public Builder addTags(scip.Scip.DiagnosticTag value) {
if (value == null) {
throw new NullPointerException();
}
ensureTagsIsMutable();
tags_.add(value.getNumber());
onChanged();
return this;
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param values The tags to add.
* @return This builder for chaining.
*/
public Builder addAllTags(
java.lang.Iterable<? extends scip.Scip.DiagnosticTag> values) {
ensureTagsIsMutable();
for (scip.Scip.DiagnosticTag value : values) {
tags_.add(value.getNumber());
}
onChanged();
return this;
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @return This builder for chaining.
*/
public Builder clearTags() {
tags_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
return this;
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @return A list containing the enum numeric values on the wire for tags.
*/
public java.util.List<java.lang.Integer>
getTagsValueList() {
return java.util.Collections.unmodifiableList(tags_);
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param index The index of the value to return.
* @return The enum numeric value on the wire of tags at the given index.
*/
public int getTagsValue(int index) {
return tags_.get(index);
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param index The index of the value to return.
* @return The enum numeric value on the wire of tags at the given index.
* @return This builder for chaining.
*/
public Builder setTagsValue(
int index, int value) {
ensureTagsIsMutable();
tags_.set(index, value);
onChanged();
return this;
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param value The enum numeric value on the wire for tags to add.
* @return This builder for chaining.
*/
public Builder addTagsValue(int value) {
ensureTagsIsMutable();
tags_.add(value);
onChanged();
return this;
}
/**
* <code>repeated .scip.DiagnosticTag tags = 5;</code>
* @param values The enum numeric values on the wire for tags to add.
* @return This builder for chaining.
*/
public Builder addAllTagsValue(
java.lang.Iterable<java.lang.Integer> values) {
ensureTagsIsMutable();
for (int value : values) {
tags_.add(value);
}
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:scip.Diagnostic)
}
// @@protoc_insertion_point(class_scope:scip.Diagnostic)
private static final scip.Scip.Diagnostic DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new scip.Scip.Diagnostic();
}
public static scip.Scip.Diagnostic getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<Diagnostic>
PARSER = new com.google.protobuf.AbstractParser<Diagnostic>() {
@java.lang.Override
public Diagnostic parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new Diagnostic(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<Diagnostic> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<Diagnostic> getParserForType() {
return PARSER;
}
@java.lang.Override
public scip.Scip.Diagnostic getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_Index_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_Index_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_Metadata_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_Metadata_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_ToolInfo_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_ToolInfo_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_Document_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_Document_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_Symbol_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_Symbol_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_Package_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_Package_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_Descriptor_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_Descriptor_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_SymbolInformation_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_SymbolInformation_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_Relationship_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_Relationship_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_Occurrence_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_Occurrence_fieldAccessorTable;
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_scip_Diagnostic_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_scip_Diagnostic_fieldAccessorTable;
public static com.google.protobuf.Descriptors.FileDescriptor
getDescriptor() {
return descriptor;
}
private static com.google.protobuf.Descriptors.FileDescriptor
descriptor;
static {
java.lang.String[] descriptorData = {
"\n\020proto/scip.proto\022\004scip\"\177\n\005Index\022 \n\010met" +
"adata\030\001 \001(\0132\016.scip.Metadata\022!\n\tdocuments" +
"\030\002 \003(\0132\016.scip.Document\0221\n\020external_symbo" +
"ls\030\003 \003(\0132\027.scip.SymbolInformation\"\237\001\n\010Me" +
"tadata\022&\n\007version\030\001 \001(\0162\025.scip.ProtocolV" +
"ersion\022!\n\ttool_info\030\002 \001(\0132\016.scip.ToolInf" +
"o\022\024\n\014project_root\030\003 \001(\t\0222\n\026text_document" +
"_encoding\030\004 \001(\0162\022.scip.TextEncoding\"<\n\010T" +
"oolInfo\022\014\n\004name\030\001 \001(\t\022\017\n\007version\030\002 \001(\t\022\021" +
"\n\targuments\030\003 \003(\t\"\305\001\n\010Document\022\020\n\010langua" +
"ge\030\004 \001(\t\022\025\n\rrelative_path\030\001 \001(\t\022%\n\013occur" +
"rences\030\002 \003(\0132\020.scip.Occurrence\022(\n\007symbol" +
"s\030\003 \003(\0132\027.scip.SymbolInformation\022\014\n\004text" +
"\030\005 \001(\t\0221\n\021position_encoding\030\006 \001(\0162\026.scip" +
".PositionEncoding\"_\n\006Symbol\022\016\n\006scheme\030\001 " +
"\001(\t\022\036\n\007package\030\002 \001(\0132\r.scip.Package\022%\n\013d" +
"escriptors\030\003 \003(\0132\020.scip.Descriptor\"9\n\007Pa" +
"ckage\022\017\n\007manager\030\001 \001(\t\022\014\n\004name\030\002 \001(\t\022\017\n\007" +
"version\030\003 \001(\t\"\202\002\n\nDescriptor\022\014\n\004name\030\001 \001" +
"(\t\022\025\n\rdisambiguator\030\002 \001(\t\022\'\n\006suffix\030\003 \001(" +
"\0162\027.scip.Descriptor.Suffix\"\245\001\n\006Suffix\022\025\n" +
"\021UnspecifiedSuffix\020\000\022\r\n\tNamespace\020\001\022\017\n\007P" +
"ackage\020\001\032\002\010\001\022\010\n\004Type\020\002\022\010\n\004Term\020\003\022\n\n\006Meth" +
"od\020\004\022\021\n\rTypeParameter\020\005\022\r\n\tParameter\020\006\022\010" +
"\n\004Meta\020\007\022\t\n\005Local\020\010\022\t\n\005Macro\020\t\032\002\020\001\"\360\013\n\021S" +
"ymbolInformation\022\016\n\006symbol\030\001 \001(\t\022\025\n\rdocu" +
"mentation\030\003 \003(\t\022)\n\rrelationships\030\004 \003(\0132\022" +
".scip.Relationship\022*\n\004kind\030\005 \001(\0162\034.scip." +
"SymbolInformation.Kind\022\024\n\014display_name\030\006" +
" \001(\t\022/\n\027signature_documentation\030\007 \001(\0132\016." +
"scip.Document\022\030\n\020enclosing_symbol\030\010 \001(\t\"" +
"\373\t\n\004Kind\022\023\n\017UnspecifiedKind\020\000\022\022\n\016Abstrac" +
"tMethod\020B\022\014\n\010Accessor\020H\022\t\n\005Array\020\001\022\r\n\tAs" +
"sertion\020\002\022\022\n\016AssociatedType\020\003\022\r\n\tAttribu" +
"te\020\004\022\t\n\005Axiom\020\005\022\013\n\007Boolean\020\006\022\t\n\005Class\020\007\022" +
"\013\n\007Concept\020V\022\014\n\010Constant\020\010\022\017\n\013Constructo" +
"r\020\t\022\014\n\010Contract\020>\022\016\n\nDataFamily\020\n\022\014\n\010Del" +
"egate\020I\022\010\n\004Enum\020\013\022\016\n\nEnumMember\020\014\022\t\n\005Err" +
"or\020?\022\t\n\005Event\020\r\022\r\n\tExtension\020T\022\010\n\004Fact\020\016" +
"\022\t\n\005Field\020\017\022\010\n\004File\020\020\022\014\n\010Function\020\021\022\n\n\006G" +
"etter\020\022\022\013\n\007Grammar\020\023\022\014\n\010Instance\020\024\022\r\n\tIn" +
"terface\020\025\022\007\n\003Key\020\026\022\010\n\004Lang\020\027\022\t\n\005Lemma\020\030\022" +
"\013\n\007Library\020@\022\t\n\005Macro\020\031\022\n\n\006Method\020\032\022\017\n\013M" +
"ethodAlias\020J\022\022\n\016MethodReceiver\020\033\022\027\n\023Meth" +
"odSpecification\020C\022\013\n\007Message\020\034\022\t\n\005Mixin\020" +
"U\022\014\n\010Modifier\020A\022\n\n\006Module\020\035\022\r\n\tNamespace" +
"\020\036\022\010\n\004Null\020\037\022\n\n\006Number\020 \022\n\n\006Object\020!\022\014\n\010" +
"Operator\020\"\022\013\n\007Package\020#\022\021\n\rPackageObject" +
"\020$\022\r\n\tParameter\020%\022\022\n\016ParameterLabel\020&\022\013\n" +
"\007Pattern\020\'\022\r\n\tPredicate\020(\022\014\n\010Property\020)\022" +
"\014\n\010Protocol\020*\022\022\n\016ProtocolMethod\020D\022\025\n\021Pur" +
"eVirtualMethod\020E\022\017\n\013Quasiquoter\020+\022\021\n\rSel" +
"fParameter\020,\022\n\n\006Setter\020-\022\r\n\tSignature\020.\022" +
"\022\n\016SingletonClass\020K\022\023\n\017SingletonMethod\020L" +
"\022\024\n\020StaticDataMember\020M\022\017\n\013StaticEvent\020N\022" +
"\017\n\013StaticField\020O\022\020\n\014StaticMethod\020P\022\022\n\016St" +
"aticProperty\020Q\022\022\n\016StaticVariable\020R\022\n\n\006St" +
"ring\0200\022\n\n\006Struct\0201\022\r\n\tSubscript\020/\022\n\n\006Tac" +
"tic\0202\022\013\n\007Theorem\0203\022\021\n\rThisParameter\0204\022\t\n" +
"\005Trait\0205\022\017\n\013TraitMethod\020F\022\010\n\004Type\0206\022\r\n\tT" +
"ypeAlias\0207\022\r\n\tTypeClass\0208\022\023\n\017TypeClassMe" +
"thod\020G\022\016\n\nTypeFamily\0209\022\021\n\rTypeParameter\020" +
":\022\t\n\005Union\020;\022\t\n\005Value\020<\022\014\n\010Variable\020=\"\202\001" +
"\n\014Relationship\022\016\n\006symbol\030\001 \001(\t\022\024\n\014is_ref" +
"erence\030\002 \001(\010\022\031\n\021is_implementation\030\003 \001(\010\022" +
"\032\n\022is_type_definition\030\004 \001(\010\022\025\n\ris_defini" +
"tion\030\005 \001(\010\"\310\001\n\nOccurrence\022\r\n\005range\030\001 \003(\005" +
"\022\016\n\006symbol\030\002 \001(\t\022\024\n\014symbol_roles\030\003 \001(\005\022\036" +
"\n\026override_documentation\030\004 \003(\t\022%\n\013syntax" +
"_kind\030\005 \001(\0162\020.scip.SyntaxKind\022%\n\013diagnos" +
"tics\030\006 \003(\0132\020.scip.Diagnostic\022\027\n\017enclosin" +
"g_range\030\007 \003(\005\"\200\001\n\nDiagnostic\022 \n\010severity" +
"\030\001 \001(\0162\016.scip.Severity\022\014\n\004code\030\002 \001(\t\022\017\n\007" +
"message\030\003 \001(\t\022\016\n\006source\030\004 \001(\t\022!\n\004tags\030\005 " +
"\003(\0162\023.scip.DiagnosticTag*1\n\017ProtocolVers" +
"ion\022\036\n\032UnspecifiedProtocolVersion\020\000*@\n\014T" +
"extEncoding\022\033\n\027UnspecifiedTextEncoding\020\000" +
"\022\010\n\004UTF8\020\001\022\t\n\005UTF16\020\002*\244\001\n\020PositionEncodi" +
"ng\022\037\n\033UnspecifiedPositionEncoding\020\000\022#\n\037U" +
"TF8CodeUnitOffsetFromLineStart\020\001\022$\n UTF1" +
"6CodeUnitOffsetFromLineStart\020\002\022$\n UTF32C" +
"odeUnitOffsetFromLineStart\020\003*\224\001\n\nSymbolR" +
"ole\022\031\n\025UnspecifiedSymbolRole\020\000\022\016\n\nDefini" +
"tion\020\001\022\n\n\006Import\020\002\022\017\n\013WriteAccess\020\004\022\016\n\nR" +
"eadAccess\020\010\022\r\n\tGenerated\020\020\022\010\n\004Test\020 \022\025\n\021" +
"ForwardDefinition\020@*\352\006\n\nSyntaxKind\022\031\n\025Un" +
"specifiedSyntaxKind\020\000\022\013\n\007Comment\020\001\022\030\n\024Pu" +
"nctuationDelimiter\020\002\022\026\n\022PunctuationBrack" +
"et\020\003\022\013\n\007Keyword\020\004\022\031\n\021IdentifierKeyword\020\004" +
"\032\002\010\001\022\026\n\022IdentifierOperator\020\005\022\016\n\nIdentifi" +
"er\020\006\022\025\n\021IdentifierBuiltin\020\007\022\022\n\016Identifie" +
"rNull\020\010\022\026\n\022IdentifierConstant\020\t\022\033\n\027Ident" +
"ifierMutableGlobal\020\n\022\027\n\023IdentifierParame" +
"ter\020\013\022\023\n\017IdentifierLocal\020\014\022\026\n\022Identifier" +
"Shadowed\020\r\022\027\n\023IdentifierNamespace\020\016\022\030\n\020I" +
"dentifierModule\020\016\032\002\010\001\022\026\n\022IdentifierFunct" +
"ion\020\017\022 \n\034IdentifierFunctionDefinition\020\020\022" +
"\023\n\017IdentifierMacro\020\021\022\035\n\031IdentifierMacroD" +
"efinition\020\022\022\022\n\016IdentifierType\020\023\022\031\n\025Ident" +
"ifierBuiltinType\020\024\022\027\n\023IdentifierAttribut" +
"e\020\025\022\017\n\013RegexEscape\020\026\022\021\n\rRegexRepeated\020\027\022" +
"\021\n\rRegexWildcard\020\030\022\022\n\016RegexDelimiter\020\031\022\r" +
"\n\tRegexJoin\020\032\022\021\n\rStringLiteral\020\033\022\027\n\023Stri" +
"ngLiteralEscape\020\034\022\030\n\024StringLiteralSpecia" +
"l\020\035\022\024\n\020StringLiteralKey\020\036\022\024\n\020CharacterLi" +
"teral\020\037\022\022\n\016NumericLiteral\020 \022\022\n\016BooleanLi" +
"teral\020!\022\007\n\003Tag\020\"\022\020\n\014TagAttribute\020#\022\020\n\014Ta" +
"gDelimiter\020$\032\002\020\001*V\n\010Severity\022\027\n\023Unspecif" +
"iedSeverity\020\000\022\t\n\005Error\020\001\022\013\n\007Warning\020\002\022\017\n" +
"\013Information\020\003\022\010\n\004Hint\020\004*N\n\rDiagnosticTa" +
"g\022\034\n\030UnspecifiedDiagnosticTag\020\000\022\017\n\013Unnec" +
"essary\020\001\022\016\n\nDeprecated\020\002*\233\n\n\010Language\022\027\n" +
"\023UnspecifiedLanguage\020\000\022\010\n\004ABAP\020<\022\010\n\004Apex" +
"\020`\022\007\n\003APL\0201\022\007\n\003Ada\020\'\022\010\n\004Agda\020-\022\014\n\010AsciiD" +
"oc\020V\022\014\n\010Assembly\020:\022\007\n\003Awk\020B\022\007\n\003Bat\020D\022\n\n\006" +
"BibTeX\020Q\022\005\n\001C\020\"\022\t\n\005COBOL\020;\022\007\n\003CPP\020#\022\007\n\003C" +
"SS\020\032\022\n\n\006CSharp\020\001\022\013\n\007Clojure\020\010\022\020\n\014Coffees" +
"cript\020\025\022\016\n\nCommonLisp\020\t\022\007\n\003Coq\020/\022\010\n\004CUDA" +
"\020a\022\010\n\004Dart\020\003\022\n\n\006Delphi\0209\022\010\n\004Diff\020X\022\016\n\nDo" +
"ckerfile\020P\022\n\n\006Dyalog\0202\022\n\n\006Elixir\020\021\022\n\n\006Er" +
"lang\020\022\022\n\n\006FSharp\020*\022\010\n\004Fish\020A\022\010\n\004Flow\020\030\022\013" +
"\n\007Fortran\0208\022\016\n\nGit_Commit\020[\022\016\n\nGit_Confi" +
"g\020Y\022\016\n\nGit_Rebase\020\\\022\006\n\002Go\020!\022\013\n\007GraphQL\020b" +
"\022\n\n\006Groovy\020\007\022\010\n\004HTML\020\036\022\010\n\004Hack\020\024\022\016\n\nHand" +
"lebars\020Z\022\013\n\007Haskell\020,\022\t\n\005Idris\020.\022\007\n\003Ini\020" +
"H\022\005\n\001J\0203\022\010\n\004JSON\020K\022\010\n\004Java\020\006\022\016\n\nJavaScri" +
"pt\020\026\022\023\n\017JavaScriptReact\020]\022\013\n\007Jsonnet\020L\022\t" +
"\n\005Julia\0207\022\014\n\010Justfile\020m\022\n\n\006Kotlin\020\004\022\t\n\005L" +
"aTeX\020S\022\010\n\004Lean\0200\022\010\n\004Less\020\033\022\007\n\003Lua\020\014\022\010\n\004L" +
"uau\020l\022\014\n\010Makefile\020O\022\014\n\010Markdown\020T\022\n\n\006Mat" +
"lab\0204\022\n\n\006Nickel\020n\022\007\n\003Nix\020M\022\t\n\005OCaml\020)\022\017\n" +
"\013Objective_C\020$\022\021\n\rObjective_CPP\020%\022\n\n\006Pas" +
"cal\020c\022\007\n\003PHP\020\023\022\t\n\005PLSQL\020F\022\010\n\004Perl\020\r\022\016\n\nP" +
"owerShell\020C\022\n\n\006Prolog\020G\022\014\n\010Protobuf\020d\022\n\n" +
"\006Python\020\017\022\005\n\001R\0206\022\n\n\006Racket\020\013\022\010\n\004Raku\020\016\022\t" +
"\n\005Razor\020>\022\t\n\005Repro\020f\022\010\n\004ReST\020U\022\010\n\004Ruby\020\020" +
"\022\010\n\004Rust\020(\022\007\n\003SAS\020=\022\010\n\004SCSS\020\035\022\007\n\003SML\020+\022\007" +
"\n\003SQL\020E\022\010\n\004Sass\020\034\022\t\n\005Scala\020\005\022\n\n\006Scheme\020\n" +
"\022\017\n\013ShellScript\020@\022\013\n\007Skylark\020N\022\t\n\005Slang\020" +
"k\022\014\n\010Solidity\020_\022\n\n\006Svelte\020j\022\t\n\005Swift\020\002\022\007" +
"\n\003Tcl\020e\022\010\n\004TOML\020I\022\007\n\003TeX\020R\022\n\n\006Thrift\020g\022\016" +
"\n\nTypeScript\020\027\022\023\n\017TypeScriptReact\020^\022\013\n\007V" +
"erilog\020h\022\010\n\004VHDL\020i\022\017\n\013VisualBasic\020?\022\007\n\003V" +
"ue\020\031\022\013\n\007Wolfram\0205\022\007\n\003XML\020\037\022\007\n\003XSL\020 \022\010\n\004Y" +
"AML\020J\022\007\n\003Zig\020&B/Z-github.com/sourcegraph" +
"/scip/bindings/go/scip/b\006proto3"
};
descriptor = com.google.protobuf.Descriptors.FileDescriptor
.internalBuildGeneratedFileFrom(descriptorData,
new com.google.protobuf.Descriptors.FileDescriptor[] {
});
internal_static_scip_Index_descriptor =
getDescriptor().getMessageTypes().get(0);
internal_static_scip_Index_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_Index_descriptor,
new java.lang.String[] { "Metadata", "Documents", "ExternalSymbols", });
internal_static_scip_Metadata_descriptor =
getDescriptor().getMessageTypes().get(1);
internal_static_scip_Metadata_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_Metadata_descriptor,
new java.lang.String[] { "Version", "ToolInfo", "ProjectRoot", "TextDocumentEncoding", });
internal_static_scip_ToolInfo_descriptor =
getDescriptor().getMessageTypes().get(2);
internal_static_scip_ToolInfo_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_ToolInfo_descriptor,
new java.lang.String[] { "Name", "Version", "Arguments", });
internal_static_scip_Document_descriptor =
getDescriptor().getMessageTypes().get(3);
internal_static_scip_Document_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_Document_descriptor,
new java.lang.String[] { "Language", "RelativePath", "Occurrences", "Symbols", "Text", "PositionEncoding", });
internal_static_scip_Symbol_descriptor =
getDescriptor().getMessageTypes().get(4);
internal_static_scip_Symbol_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_Symbol_descriptor,
new java.lang.String[] { "Scheme", "Package", "Descriptors", });
internal_static_scip_Package_descriptor =
getDescriptor().getMessageTypes().get(5);
internal_static_scip_Package_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_Package_descriptor,
new java.lang.String[] { "Manager", "Name", "Version", });
internal_static_scip_Descriptor_descriptor =
getDescriptor().getMessageTypes().get(6);
internal_static_scip_Descriptor_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_Descriptor_descriptor,
new java.lang.String[] { "Name", "Disambiguator", "Suffix", });
internal_static_scip_SymbolInformation_descriptor =
getDescriptor().getMessageTypes().get(7);
internal_static_scip_SymbolInformation_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_SymbolInformation_descriptor,
new java.lang.String[] { "Symbol", "Documentation", "Relationships", "Kind", "DisplayName", "SignatureDocumentation", "EnclosingSymbol", });
internal_static_scip_Relationship_descriptor =
getDescriptor().getMessageTypes().get(8);
internal_static_scip_Relationship_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_Relationship_descriptor,
new java.lang.String[] { "Symbol", "IsReference", "IsImplementation", "IsTypeDefinition", "IsDefinition", });
internal_static_scip_Occurrence_descriptor =
getDescriptor().getMessageTypes().get(9);
internal_static_scip_Occurrence_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_Occurrence_descriptor,
new java.lang.String[] { "Range", "Symbol", "SymbolRoles", "OverrideDocumentation", "SyntaxKind", "Diagnostics", "EnclosingRange", });
internal_static_scip_Diagnostic_descriptor =
getDescriptor().getMessageTypes().get(10);
internal_static_scip_Diagnostic_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_scip_Diagnostic_descriptor,
new java.lang.String[] { "Severity", "Code", "Message", "Source", "Tags", });
}
// @@protoc_insertion_point(outer_class_scope)
}