UnspecifiedProtocolVersion = 0;
*/
UnspecifiedProtocolVersion(0),
UNRECOGNIZED(-1),
;
/**
* UnspecifiedProtocolVersion = 0;
*/
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.EnumLiteMapUnspecifiedTextEncoding = 0;
*/
UnspecifiedTextEncoding(0),
/**
* UTF8 = 1;
*/
UTF8(1),
/**
* UTF16 = 2;
*/
UTF16(2),
UNRECOGNIZED(-1),
;
/**
* UnspecifiedTextEncoding = 0;
*/
public static final int UnspecifiedTextEncoding_VALUE = 0;
/**
* UTF8 = 1;
*/
public static final int UTF8_VALUE = 1;
/**
* UTF16 = 2;
*/
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* Encoding used to interpret the 'character' value in source ranges. ** * Protobuf enum {@code scip.PositionEncoding} */ public enum PositionEncoding implements com.google.protobuf.ProtocolMessageEnum { /** *
* Default value. This value should not be used by new SCIP indexers
* so that a consumer can process the SCIP index without ambiguity.
*
*
* UnspecifiedPositionEncoding = 0;
*/
UnspecifiedPositionEncoding(0),
/**
*
* 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.
*
*
* UTF8CodeUnitOffsetFromLineStart = 1;
*/
UTF8CodeUnitOffsetFromLineStart(1),
/**
*
* 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
* ['\ud83d', '\ude80', ' ', 'W', 'o', 'o'], so the offset for 'W'
* would be 3.
*
*
* UTF16CodeUnitOffsetFromLineStart = 2;
*/
UTF16CodeUnitOffsetFromLineStart(2),
/**
*
* 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.
*
*
* UTF32CodeUnitOffsetFromLineStart = 3;
*/
UTF32CodeUnitOffsetFromLineStart(3),
UNRECOGNIZED(-1),
;
/**
*
* Default value. This value should not be used by new SCIP indexers
* so that a consumer can process the SCIP index without ambiguity.
*
*
* UnspecifiedPositionEncoding = 0;
*/
public static final int UnspecifiedPositionEncoding_VALUE = 0;
/**
*
* 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.
*
*
* UTF8CodeUnitOffsetFromLineStart = 1;
*/
public static final int UTF8CodeUnitOffsetFromLineStart_VALUE = 1;
/**
*
* 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
* ['\ud83d', '\ude80', ' ', 'W', 'o', 'o'], so the offset for 'W'
* would be 3.
*
*
* UTF16CodeUnitOffsetFromLineStart = 2;
*/
public static final int UTF16CodeUnitOffsetFromLineStart_VALUE = 2;
/**
*
* 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.
*
*
* UTF32CodeUnitOffsetFromLineStart = 3;
*/
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* 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 & SymbolRole.Import.value) > 0`. ** * Protobuf enum {@code scip.SymbolRole} */ public enum SymbolRole implements com.google.protobuf.ProtocolMessageEnum { /** *
* This case is not meant to be used; it only exists to avoid an error
* from the Protobuf code generator.
*
*
* UnspecifiedSymbolRole = 0;
*/
UnspecifiedSymbolRole(0),
/**
*
* Is the symbol defined here? If not, then this is a symbol reference.
*
*
* Definition = 1;
*/
Definition(1),
/**
*
* Is the symbol imported here?
*
*
* Import = 2;
*/
Import(2),
/**
*
* Is the symbol written here?
*
*
* WriteAccess = 4;
*/
WriteAccess(4),
/**
*
* Is the symbol read here?
*
*
* ReadAccess = 8;
*/
ReadAccess(8),
/**
*
* Is the symbol in generated code?
*
*
* Generated = 16;
*/
Generated(16),
/**
*
* Is the symbol in test code?
*
*
* Test = 32;
*/
Test(32),
/**
*
* 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.
*
*
* ForwardDefinition = 64;
*/
ForwardDefinition(64),
UNRECOGNIZED(-1),
;
/**
*
* This case is not meant to be used; it only exists to avoid an error
* from the Protobuf code generator.
*
*
* UnspecifiedSymbolRole = 0;
*/
public static final int UnspecifiedSymbolRole_VALUE = 0;
/**
*
* Is the symbol defined here? If not, then this is a symbol reference.
*
*
* Definition = 1;
*/
public static final int Definition_VALUE = 1;
/**
*
* Is the symbol imported here?
*
*
* Import = 2;
*/
public static final int Import_VALUE = 2;
/**
*
* Is the symbol written here?
*
*
* WriteAccess = 4;
*/
public static final int WriteAccess_VALUE = 4;
/**
*
* Is the symbol read here?
*
*
* ReadAccess = 8;
*/
public static final int ReadAccess_VALUE = 8;
/**
*
* Is the symbol in generated code?
*
*
* Generated = 16;
*/
public static final int Generated_VALUE = 16;
/**
*
* Is the symbol in test code?
*
*
* Test = 32;
*/
public static final int Test_VALUE = 32;
/**
*
* 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.
*
*
* ForwardDefinition = 64;
*/
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.EnumLiteMapUnspecifiedSyntaxKind = 0;
*/
UnspecifiedSyntaxKind(0, 0),
/**
*
* Comment, including comment markers and text
*
*
* Comment = 1;
*/
Comment(1, 1),
/**
*
* `;` `.` `,`
*
*
* PunctuationDelimiter = 2;
*/
PunctuationDelimiter(2, 2),
/**
*
* (), {}, [] when used syntactically
*
*
* PunctuationBracket = 3;
*/
PunctuationBracket(3, 3),
/**
*
* `if`, `else`, `return`, `class`, etc.
*
*
* Keyword = 4;
*/
Keyword(4, 4),
/**
*
* `+`, `*`, etc.
*
*
* IdentifierOperator = 5;
*/
IdentifierOperator(6, 5),
/**
*
* non-specific catch-all for any identifier not better described elsewhere
*
*
* Identifier = 6;
*/
Identifier(7, 6),
/**
*
* Identifiers builtin to the language: `min`, `print` in Python.
*
*
* IdentifierBuiltin = 7;
*/
IdentifierBuiltin(8, 7),
/**
*
* Identifiers representing `null`-like values: `None` in Python, `nil` in Go.
*
*
* IdentifierNull = 8;
*/
IdentifierNull(9, 8),
/**
*
* `xyz` in `const xyz = "hello"`
*
*
* IdentifierConstant = 9;
*/
IdentifierConstant(10, 9),
/**
*
* `var X = "hello"` in Go
*
*
* IdentifierMutableGlobal = 10;
*/
IdentifierMutableGlobal(11, 10),
/**
*
* Parameter definition and references
*
*
* IdentifierParameter = 11;
*/
IdentifierParameter(12, 11),
/**
*
* Identifiers for variable definitions and references within a local scope
*
*
* IdentifierLocal = 12;
*/
IdentifierLocal(13, 12),
/**
*
* Identifiers that shadow other identifiers in an outer scope
*
*
* IdentifierShadowed = 13;
*/
IdentifierShadowed(14, 13),
/**
*
* 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.
*
*
* IdentifierNamespace = 14;
*/
IdentifierNamespace(15, 14),
/**
*
* Function references, including calls
*
*
* IdentifierFunction = 15;
*/
IdentifierFunction(17, 15),
/**
*
* Function definition only
*
*
* IdentifierFunctionDefinition = 16;
*/
IdentifierFunctionDefinition(18, 16),
/**
*
* Macro references, including invocations
*
*
* IdentifierMacro = 17;
*/
IdentifierMacro(19, 17),
/**
*
* Macro definition only
*
*
* IdentifierMacroDefinition = 18;
*/
IdentifierMacroDefinition(20, 18),
/**
*
* non-builtin types
*
*
* IdentifierType = 19;
*/
IdentifierType(21, 19),
/**
*
* builtin types only, such as `str` for Python or `int` in Go
*
*
* IdentifierBuiltinType = 20;
*/
IdentifierBuiltinType(22, 20),
/**
*
* Python decorators, c-like __attribute__
*
*
* IdentifierAttribute = 21;
*/
IdentifierAttribute(23, 21),
/**
*
* `\b`
*
*
* RegexEscape = 22;
*/
RegexEscape(24, 22),
/**
*
* `*`, `+`
*
*
* RegexRepeated = 23;
*/
RegexRepeated(25, 23),
/**
*
* `.`
*
*
* RegexWildcard = 24;
*/
RegexWildcard(26, 24),
/**
*
* `(`, `)`, `[`, `]`
*
*
* RegexDelimiter = 25;
*/
RegexDelimiter(27, 25),
/**
*
* `|`, `-`
*
*
* RegexJoin = 26;
*/
RegexJoin(28, 26),
/**
*
* Literal strings: "Hello, world!"
*
*
* StringLiteral = 27;
*/
StringLiteral(29, 27),
/**
*
* non-regex escapes: "\t", "\n"
*
*
* StringLiteralEscape = 28;
*/
StringLiteralEscape(30, 28),
/**
*
* datetimes within strings, special words within a string, `{}` in format strings
*
*
* StringLiteralSpecial = 29;
*/
StringLiteralSpecial(31, 29),
/**
*
* "key" in { "key": "value" }, useful for example in JSON
*
*
* StringLiteralKey = 30;
*/
StringLiteralKey(32, 30),
/**
*
* 'c' or similar, in languages that differentiate strings and characters
*
*
* CharacterLiteral = 31;
*/
CharacterLiteral(33, 31),
/**
*
* Literal numbers, both floats and integers
*
*
* NumericLiteral = 32;
*/
NumericLiteral(34, 32),
/**
*
* `true`, `false`
*
*
* BooleanLiteral = 33;
*/
BooleanLiteral(35, 33),
/**
*
* Used for XML-like tags
*
*
* Tag = 34;
*/
Tag(36, 34),
/**
*
* Attribute name in XML-like tags
*
*
* TagAttribute = 35;
*/
TagAttribute(37, 35),
/**
*
* Delimiters for XML-like tags
*
*
* TagDelimiter = 36;
*/
TagDelimiter(38, 36),
UNRECOGNIZED(-1, -1),
;
/**
* IdentifierKeyword = 4 [deprecated = true];
*/
public static final SyntaxKind IdentifierKeyword = Keyword;
/**
* IdentifierModule = 14 [deprecated = true];
*/
public static final SyntaxKind IdentifierModule = IdentifierNamespace;
/**
* UnspecifiedSyntaxKind = 0;
*/
public static final int UnspecifiedSyntaxKind_VALUE = 0;
/**
*
* Comment, including comment markers and text
*
*
* Comment = 1;
*/
public static final int Comment_VALUE = 1;
/**
*
* `;` `.` `,`
*
*
* PunctuationDelimiter = 2;
*/
public static final int PunctuationDelimiter_VALUE = 2;
/**
*
* (), {}, [] when used syntactically
*
*
* PunctuationBracket = 3;
*/
public static final int PunctuationBracket_VALUE = 3;
/**
*
* `if`, `else`, `return`, `class`, etc.
*
*
* Keyword = 4;
*/
public static final int Keyword_VALUE = 4;
/**
* IdentifierKeyword = 4 [deprecated = true];
*/
@java.lang.Deprecated public static final int IdentifierKeyword_VALUE = 4;
/**
*
* `+`, `*`, etc.
*
*
* IdentifierOperator = 5;
*/
public static final int IdentifierOperator_VALUE = 5;
/**
*
* non-specific catch-all for any identifier not better described elsewhere
*
*
* Identifier = 6;
*/
public static final int Identifier_VALUE = 6;
/**
*
* Identifiers builtin to the language: `min`, `print` in Python.
*
*
* IdentifierBuiltin = 7;
*/
public static final int IdentifierBuiltin_VALUE = 7;
/**
*
* Identifiers representing `null`-like values: `None` in Python, `nil` in Go.
*
*
* IdentifierNull = 8;
*/
public static final int IdentifierNull_VALUE = 8;
/**
*
* `xyz` in `const xyz = "hello"`
*
*
* IdentifierConstant = 9;
*/
public static final int IdentifierConstant_VALUE = 9;
/**
*
* `var X = "hello"` in Go
*
*
* IdentifierMutableGlobal = 10;
*/
public static final int IdentifierMutableGlobal_VALUE = 10;
/**
*
* Parameter definition and references
*
*
* IdentifierParameter = 11;
*/
public static final int IdentifierParameter_VALUE = 11;
/**
*
* Identifiers for variable definitions and references within a local scope
*
*
* IdentifierLocal = 12;
*/
public static final int IdentifierLocal_VALUE = 12;
/**
*
* Identifiers that shadow other identifiers in an outer scope
*
*
* IdentifierShadowed = 13;
*/
public static final int IdentifierShadowed_VALUE = 13;
/**
*
* 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.
*
*
* IdentifierNamespace = 14;
*/
public static final int IdentifierNamespace_VALUE = 14;
/**
* IdentifierModule = 14 [deprecated = true];
*/
@java.lang.Deprecated public static final int IdentifierModule_VALUE = 14;
/**
*
* Function references, including calls
*
*
* IdentifierFunction = 15;
*/
public static final int IdentifierFunction_VALUE = 15;
/**
*
* Function definition only
*
*
* IdentifierFunctionDefinition = 16;
*/
public static final int IdentifierFunctionDefinition_VALUE = 16;
/**
*
* Macro references, including invocations
*
*
* IdentifierMacro = 17;
*/
public static final int IdentifierMacro_VALUE = 17;
/**
*
* Macro definition only
*
*
* IdentifierMacroDefinition = 18;
*/
public static final int IdentifierMacroDefinition_VALUE = 18;
/**
*
* non-builtin types
*
*
* IdentifierType = 19;
*/
public static final int IdentifierType_VALUE = 19;
/**
*
* builtin types only, such as `str` for Python or `int` in Go
*
*
* IdentifierBuiltinType = 20;
*/
public static final int IdentifierBuiltinType_VALUE = 20;
/**
*
* Python decorators, c-like __attribute__
*
*
* IdentifierAttribute = 21;
*/
public static final int IdentifierAttribute_VALUE = 21;
/**
*
* `\b`
*
*
* RegexEscape = 22;
*/
public static final int RegexEscape_VALUE = 22;
/**
*
* `*`, `+`
*
*
* RegexRepeated = 23;
*/
public static final int RegexRepeated_VALUE = 23;
/**
*
* `.`
*
*
* RegexWildcard = 24;
*/
public static final int RegexWildcard_VALUE = 24;
/**
*
* `(`, `)`, `[`, `]`
*
*
* RegexDelimiter = 25;
*/
public static final int RegexDelimiter_VALUE = 25;
/**
*
* `|`, `-`
*
*
* RegexJoin = 26;
*/
public static final int RegexJoin_VALUE = 26;
/**
*
* Literal strings: "Hello, world!"
*
*
* StringLiteral = 27;
*/
public static final int StringLiteral_VALUE = 27;
/**
*
* non-regex escapes: "\t", "\n"
*
*
* StringLiteralEscape = 28;
*/
public static final int StringLiteralEscape_VALUE = 28;
/**
*
* datetimes within strings, special words within a string, `{}` in format strings
*
*
* StringLiteralSpecial = 29;
*/
public static final int StringLiteralSpecial_VALUE = 29;
/**
*
* "key" in { "key": "value" }, useful for example in JSON
*
*
* StringLiteralKey = 30;
*/
public static final int StringLiteralKey_VALUE = 30;
/**
*
* 'c' or similar, in languages that differentiate strings and characters
*
*
* CharacterLiteral = 31;
*/
public static final int CharacterLiteral_VALUE = 31;
/**
*
* Literal numbers, both floats and integers
*
*
* NumericLiteral = 32;
*/
public static final int NumericLiteral_VALUE = 32;
/**
*
* `true`, `false`
*
*
* BooleanLiteral = 33;
*/
public static final int BooleanLiteral_VALUE = 33;
/**
*
* Used for XML-like tags
*
*
* Tag = 34;
*/
public static final int Tag_VALUE = 34;
/**
*
* Attribute name in XML-like tags
*
*
* TagAttribute = 35;
*/
public static final int TagAttribute_VALUE = 35;
/**
*
* Delimiters for XML-like tags
*
*
* TagDelimiter = 36;
*/
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.EnumLiteMapUnspecifiedSeverity = 0;
*/
UnspecifiedSeverity(0),
/**
* Error = 1;
*/
Error(1),
/**
* Warning = 2;
*/
Warning(2),
/**
* Information = 3;
*/
Information(3),
/**
* Hint = 4;
*/
Hint(4),
UNRECOGNIZED(-1),
;
/**
* UnspecifiedSeverity = 0;
*/
public static final int UnspecifiedSeverity_VALUE = 0;
/**
* Error = 1;
*/
public static final int Error_VALUE = 1;
/**
* Warning = 2;
*/
public static final int Warning_VALUE = 2;
/**
* Information = 3;
*/
public static final int Information_VALUE = 3;
/**
* Hint = 4;
*/
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.EnumLiteMapUnspecifiedDiagnosticTag = 0;
*/
UnspecifiedDiagnosticTag(0),
/**
* Unnecessary = 1;
*/
Unnecessary(1),
/**
* Deprecated = 2;
*/
Deprecated(2),
UNRECOGNIZED(-1),
;
/**
* UnspecifiedDiagnosticTag = 0;
*/
public static final int UnspecifiedDiagnosticTag_VALUE = 0;
/**
* Unnecessary = 1;
*/
public static final int Unnecessary_VALUE = 1;
/**
* Deprecated = 2;
*/
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* 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. ** * Protobuf enum {@code scip.Language} */ public enum Language implements com.google.protobuf.ProtocolMessageEnum { /** *
UnspecifiedLanguage = 0;
*/
UnspecifiedLanguage(0),
/**
* ABAP = 60;
*/
ABAP(60),
/**
* Apex = 96;
*/
Apex(96),
/**
* APL = 49;
*/
APL(49),
/**
* Ada = 39;
*/
Ada(39),
/**
* Agda = 45;
*/
Agda(45),
/**
* AsciiDoc = 86;
*/
AsciiDoc(86),
/**
* Assembly = 58;
*/
Assembly(58),
/**
* Awk = 66;
*/
Awk(66),
/**
* Bat = 68;
*/
Bat(68),
/**
* BibTeX = 81;
*/
BibTeX(81),
/**
* C = 34;
*/
C(34),
/**
* COBOL = 59;
*/
COBOL(59),
/**
*
* C++ (the name "CPP" was chosen for consistency with LSP)
*
*
* CPP = 35;
*/
CPP(35),
/**
* CSS = 26;
*/
CSS(26),
/**
* CSharp = 1;
*/
CSharp(1),
/**
* Clojure = 8;
*/
Clojure(8),
/**
* Coffeescript = 21;
*/
Coffeescript(21),
/**
* CommonLisp = 9;
*/
CommonLisp(9),
/**
* Coq = 47;
*/
Coq(47),
/**
* CUDA = 97;
*/
CUDA(97),
/**
* Dart = 3;
*/
Dart(3),
/**
* Delphi = 57;
*/
Delphi(57),
/**
* Diff = 88;
*/
Diff(88),
/**
* Dockerfile = 80;
*/
Dockerfile(80),
/**
* Dyalog = 50;
*/
Dyalog(50),
/**
* Elixir = 17;
*/
Elixir(17),
/**
* Erlang = 18;
*/
Erlang(18),
/**
* FSharp = 42;
*/
FSharp(42),
/**
* Fish = 65;
*/
Fish(65),
/**
* Flow = 24;
*/
Flow(24),
/**
* Fortran = 56;
*/
Fortran(56),
/**
* Git_Commit = 91;
*/
Git_Commit(91),
/**
* Git_Config = 89;
*/
Git_Config(89),
/**
* Git_Rebase = 92;
*/
Git_Rebase(92),
/**
* Go = 33;
*/
Go(33),
/**
* GraphQL = 98;
*/
GraphQL(98),
/**
* Groovy = 7;
*/
Groovy(7),
/**
* HTML = 30;
*/
HTML(30),
/**
* Hack = 20;
*/
Hack(20),
/**
* Handlebars = 90;
*/
Handlebars(90),
/**
* Haskell = 44;
*/
Haskell(44),
/**
* Idris = 46;
*/
Idris(46),
/**
* Ini = 72;
*/
Ini(72),
/**
* J = 51;
*/
J(51),
/**
* JSON = 75;
*/
JSON(75),
/**
* Java = 6;
*/
Java(6),
/**
* JavaScript = 22;
*/
JavaScript(22),
/**
* JavaScriptReact = 93;
*/
JavaScriptReact(93),
/**
* Jsonnet = 76;
*/
Jsonnet(76),
/**
* Julia = 55;
*/
Julia(55),
/**
* Justfile = 109;
*/
Justfile(109),
/**
* Kotlin = 4;
*/
Kotlin(4),
/**
* LaTeX = 83;
*/
LaTeX(83),
/**
* Lean = 48;
*/
Lean(48),
/**
* Less = 27;
*/
Less(27),
/**
* Lua = 12;
*/
Lua(12),
/**
* Luau = 108;
*/
Luau(108),
/**
* Makefile = 79;
*/
Makefile(79),
/**
* Markdown = 84;
*/
Markdown(84),
/**
* Matlab = 52;
*/
Matlab(52),
/**
*
* https://nickel-lang.org/
*
*
* Nickel = 110;
*/
Nickel(110),
/**
* Nix = 77;
*/
Nix(77),
/**
* OCaml = 41;
*/
OCaml(41),
/**
* Objective_C = 36;
*/
Objective_C(36),
/**
* Objective_CPP = 37;
*/
Objective_CPP(37),
/**
* Pascal = 99;
*/
Pascal(99),
/**
* PHP = 19;
*/
PHP(19),
/**
* PLSQL = 70;
*/
PLSQL(70),
/**
* Perl = 13;
*/
Perl(13),
/**
* PowerShell = 67;
*/
PowerShell(67),
/**
* Prolog = 71;
*/
Prolog(71),
/**
* Protobuf = 100;
*/
Protobuf(100),
/**
* Python = 15;
*/
Python(15),
/**
* R = 54;
*/
R(54),
/**
* Racket = 11;
*/
Racket(11),
/**
* Raku = 14;
*/
Raku(14),
/**
* Razor = 62;
*/
Razor(62),
/**
*
* Internal language for testing SCIP
*
*
* Repro = 102;
*/
Repro(102),
/**
* ReST = 85;
*/
ReST(85),
/**
* Ruby = 16;
*/
Ruby(16),
/**
* Rust = 40;
*/
Rust(40),
/**
* SAS = 61;
*/
SAS(61),
/**
* SCSS = 29;
*/
SCSS(29),
/**
* SML = 43;
*/
SML(43),
/**
* SQL = 69;
*/
SQL(69),
/**
* Sass = 28;
*/
Sass(28),
/**
* Scala = 5;
*/
Scala(5),
/**
* Scheme = 10;
*/
Scheme(10),
/**
*
* Bash
*
*
* ShellScript = 64;
*/
ShellScript(64),
/**
* Skylark = 78;
*/
Skylark(78),
/**
* Slang = 107;
*/
Slang(107),
/**
* Solidity = 95;
*/
Solidity(95),
/**
* Svelte = 106;
*/
Svelte(106),
/**
* Swift = 2;
*/
Swift(2),
/**
* Tcl = 101;
*/
Tcl(101),
/**
* TOML = 73;
*/
TOML(73),
/**
* TeX = 82;
*/
TeX(82),
/**
* Thrift = 103;
*/
Thrift(103),
/**
* TypeScript = 23;
*/
TypeScript(23),
/**
* TypeScriptReact = 94;
*/
TypeScriptReact(94),
/**
* Verilog = 104;
*/
Verilog(104),
/**
* VHDL = 105;
*/
VHDL(105),
/**
* VisualBasic = 63;
*/
VisualBasic(63),
/**
* Vue = 25;
*/
Vue(25),
/**
* Wolfram = 53;
*/
Wolfram(53),
/**
* XML = 31;
*/
XML(31),
/**
* XSL = 32;
*/
XSL(32),
/**
* YAML = 74;
*/
YAML(74),
/**
*
* 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
*
*
* Zig = 38;
*/
Zig(38),
UNRECOGNIZED(-1),
;
/**
* UnspecifiedLanguage = 0;
*/
public static final int UnspecifiedLanguage_VALUE = 0;
/**
* ABAP = 60;
*/
public static final int ABAP_VALUE = 60;
/**
* Apex = 96;
*/
public static final int Apex_VALUE = 96;
/**
* APL = 49;
*/
public static final int APL_VALUE = 49;
/**
* Ada = 39;
*/
public static final int Ada_VALUE = 39;
/**
* Agda = 45;
*/
public static final int Agda_VALUE = 45;
/**
* AsciiDoc = 86;
*/
public static final int AsciiDoc_VALUE = 86;
/**
* Assembly = 58;
*/
public static final int Assembly_VALUE = 58;
/**
* Awk = 66;
*/
public static final int Awk_VALUE = 66;
/**
* Bat = 68;
*/
public static final int Bat_VALUE = 68;
/**
* BibTeX = 81;
*/
public static final int BibTeX_VALUE = 81;
/**
* C = 34;
*/
public static final int C_VALUE = 34;
/**
* COBOL = 59;
*/
public static final int COBOL_VALUE = 59;
/**
*
* C++ (the name "CPP" was chosen for consistency with LSP)
*
*
* CPP = 35;
*/
public static final int CPP_VALUE = 35;
/**
* CSS = 26;
*/
public static final int CSS_VALUE = 26;
/**
* CSharp = 1;
*/
public static final int CSharp_VALUE = 1;
/**
* Clojure = 8;
*/
public static final int Clojure_VALUE = 8;
/**
* Coffeescript = 21;
*/
public static final int Coffeescript_VALUE = 21;
/**
* CommonLisp = 9;
*/
public static final int CommonLisp_VALUE = 9;
/**
* Coq = 47;
*/
public static final int Coq_VALUE = 47;
/**
* CUDA = 97;
*/
public static final int CUDA_VALUE = 97;
/**
* Dart = 3;
*/
public static final int Dart_VALUE = 3;
/**
* Delphi = 57;
*/
public static final int Delphi_VALUE = 57;
/**
* Diff = 88;
*/
public static final int Diff_VALUE = 88;
/**
* Dockerfile = 80;
*/
public static final int Dockerfile_VALUE = 80;
/**
* Dyalog = 50;
*/
public static final int Dyalog_VALUE = 50;
/**
* Elixir = 17;
*/
public static final int Elixir_VALUE = 17;
/**
* Erlang = 18;
*/
public static final int Erlang_VALUE = 18;
/**
* FSharp = 42;
*/
public static final int FSharp_VALUE = 42;
/**
* Fish = 65;
*/
public static final int Fish_VALUE = 65;
/**
* Flow = 24;
*/
public static final int Flow_VALUE = 24;
/**
* Fortran = 56;
*/
public static final int Fortran_VALUE = 56;
/**
* Git_Commit = 91;
*/
public static final int Git_Commit_VALUE = 91;
/**
* Git_Config = 89;
*/
public static final int Git_Config_VALUE = 89;
/**
* Git_Rebase = 92;
*/
public static final int Git_Rebase_VALUE = 92;
/**
* Go = 33;
*/
public static final int Go_VALUE = 33;
/**
* GraphQL = 98;
*/
public static final int GraphQL_VALUE = 98;
/**
* Groovy = 7;
*/
public static final int Groovy_VALUE = 7;
/**
* HTML = 30;
*/
public static final int HTML_VALUE = 30;
/**
* Hack = 20;
*/
public static final int Hack_VALUE = 20;
/**
* Handlebars = 90;
*/
public static final int Handlebars_VALUE = 90;
/**
* Haskell = 44;
*/
public static final int Haskell_VALUE = 44;
/**
* Idris = 46;
*/
public static final int Idris_VALUE = 46;
/**
* Ini = 72;
*/
public static final int Ini_VALUE = 72;
/**
* J = 51;
*/
public static final int J_VALUE = 51;
/**
* JSON = 75;
*/
public static final int JSON_VALUE = 75;
/**
* Java = 6;
*/
public static final int Java_VALUE = 6;
/**
* JavaScript = 22;
*/
public static final int JavaScript_VALUE = 22;
/**
* JavaScriptReact = 93;
*/
public static final int JavaScriptReact_VALUE = 93;
/**
* Jsonnet = 76;
*/
public static final int Jsonnet_VALUE = 76;
/**
* Julia = 55;
*/
public static final int Julia_VALUE = 55;
/**
* Justfile = 109;
*/
public static final int Justfile_VALUE = 109;
/**
* Kotlin = 4;
*/
public static final int Kotlin_VALUE = 4;
/**
* LaTeX = 83;
*/
public static final int LaTeX_VALUE = 83;
/**
* Lean = 48;
*/
public static final int Lean_VALUE = 48;
/**
* Less = 27;
*/
public static final int Less_VALUE = 27;
/**
* Lua = 12;
*/
public static final int Lua_VALUE = 12;
/**
* Luau = 108;
*/
public static final int Luau_VALUE = 108;
/**
* Makefile = 79;
*/
public static final int Makefile_VALUE = 79;
/**
* Markdown = 84;
*/
public static final int Markdown_VALUE = 84;
/**
* Matlab = 52;
*/
public static final int Matlab_VALUE = 52;
/**
*
* https://nickel-lang.org/
*
*
* Nickel = 110;
*/
public static final int Nickel_VALUE = 110;
/**
* Nix = 77;
*/
public static final int Nix_VALUE = 77;
/**
* OCaml = 41;
*/
public static final int OCaml_VALUE = 41;
/**
* Objective_C = 36;
*/
public static final int Objective_C_VALUE = 36;
/**
* Objective_CPP = 37;
*/
public static final int Objective_CPP_VALUE = 37;
/**
* Pascal = 99;
*/
public static final int Pascal_VALUE = 99;
/**
* PHP = 19;
*/
public static final int PHP_VALUE = 19;
/**
* PLSQL = 70;
*/
public static final int PLSQL_VALUE = 70;
/**
* Perl = 13;
*/
public static final int Perl_VALUE = 13;
/**
* PowerShell = 67;
*/
public static final int PowerShell_VALUE = 67;
/**
* Prolog = 71;
*/
public static final int Prolog_VALUE = 71;
/**
* Protobuf = 100;
*/
public static final int Protobuf_VALUE = 100;
/**
* Python = 15;
*/
public static final int Python_VALUE = 15;
/**
* R = 54;
*/
public static final int R_VALUE = 54;
/**
* Racket = 11;
*/
public static final int Racket_VALUE = 11;
/**
* Raku = 14;
*/
public static final int Raku_VALUE = 14;
/**
* Razor = 62;
*/
public static final int Razor_VALUE = 62;
/**
*
* Internal language for testing SCIP
*
*
* Repro = 102;
*/
public static final int Repro_VALUE = 102;
/**
* ReST = 85;
*/
public static final int ReST_VALUE = 85;
/**
* Ruby = 16;
*/
public static final int Ruby_VALUE = 16;
/**
* Rust = 40;
*/
public static final int Rust_VALUE = 40;
/**
* SAS = 61;
*/
public static final int SAS_VALUE = 61;
/**
* SCSS = 29;
*/
public static final int SCSS_VALUE = 29;
/**
* SML = 43;
*/
public static final int SML_VALUE = 43;
/**
* SQL = 69;
*/
public static final int SQL_VALUE = 69;
/**
* Sass = 28;
*/
public static final int Sass_VALUE = 28;
/**
* Scala = 5;
*/
public static final int Scala_VALUE = 5;
/**
* Scheme = 10;
*/
public static final int Scheme_VALUE = 10;
/**
*
* Bash
*
*
* ShellScript = 64;
*/
public static final int ShellScript_VALUE = 64;
/**
* Skylark = 78;
*/
public static final int Skylark_VALUE = 78;
/**
* Slang = 107;
*/
public static final int Slang_VALUE = 107;
/**
* Solidity = 95;
*/
public static final int Solidity_VALUE = 95;
/**
* Svelte = 106;
*/
public static final int Svelte_VALUE = 106;
/**
* Swift = 2;
*/
public static final int Swift_VALUE = 2;
/**
* Tcl = 101;
*/
public static final int Tcl_VALUE = 101;
/**
* TOML = 73;
*/
public static final int TOML_VALUE = 73;
/**
* TeX = 82;
*/
public static final int TeX_VALUE = 82;
/**
* Thrift = 103;
*/
public static final int Thrift_VALUE = 103;
/**
* TypeScript = 23;
*/
public static final int TypeScript_VALUE = 23;
/**
* TypeScriptReact = 94;
*/
public static final int TypeScriptReact_VALUE = 94;
/**
* Verilog = 104;
*/
public static final int Verilog_VALUE = 104;
/**
* VHDL = 105;
*/
public static final int VHDL_VALUE = 105;
/**
* VisualBasic = 63;
*/
public static final int VisualBasic_VALUE = 63;
/**
* Vue = 25;
*/
public static final int Vue_VALUE = 25;
/**
* Wolfram = 53;
*/
public static final int Wolfram_VALUE = 53;
/**
* XML = 31;
*/
public static final int XML_VALUE = 31;
/**
* XSL = 32;
*/
public static final int XSL_VALUE = 32;
/**
* YAML = 74;
*/
public static final int YAML_VALUE = 74;
/**
*
* 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
*
*
* Zig = 38;
*/
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
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
* @return Whether the metadata field is set.
*/
boolean hasMetadata();
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
* @return The metadata.
*/
scip.Scip.Metadata getMetadata();
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
*/
scip.Scip.MetadataOrBuilder getMetadataOrBuilder();
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
java.util.List
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
scip.Scip.Document getDocuments(int index);
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
int getDocumentsCount();
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
java.util.List extends scip.Scip.DocumentOrBuilder>
getDocumentsOrBuilderList();
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
scip.Scip.DocumentOrBuilder getDocumentsOrBuilder(
int index);
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
java.util.List
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
scip.Scip.SymbolInformation getExternalSymbols(int index);
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
int getExternalSymbolsCount();
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
java.util.List extends scip.Scip.SymbolInformationOrBuilder>
getExternalSymbolsOrBuilderList();
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
scip.Scip.SymbolInformationOrBuilder getExternalSymbolsOrBuilder(
int index);
}
/**
* * 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. ** * 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
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
* @return Whether the metadata field is set.
*/
@java.lang.Override
public boolean hasMetadata() {
return metadata_ != null;
}
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
* @return The metadata.
*/
@java.lang.Override
public scip.Scip.Metadata getMetadata() {
return metadata_ == null ? scip.Scip.Metadata.getDefaultInstance() : metadata_;
}
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
*/
@java.lang.Override
public scip.Scip.MetadataOrBuilder getMetadataOrBuilder() {
return getMetadata();
}
public static final int DOCUMENTS_FIELD_NUMBER = 2;
private java.util.List
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
@java.lang.Override
public java.util.List
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
@java.lang.Override
public java.util.List extends scip.Scip.DocumentOrBuilder>
getDocumentsOrBuilderList() {
return documents_;
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
@java.lang.Override
public int getDocumentsCount() {
return documents_.size();
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
@java.lang.Override
public scip.Scip.Document getDocuments(int index) {
return documents_.get(index);
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
@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
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
@java.lang.Override
public java.util.List
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
@java.lang.Override
public java.util.List extends scip.Scip.SymbolInformationOrBuilder>
getExternalSymbolsOrBuilderList() {
return externalSymbols_;
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
@java.lang.Override
public int getExternalSymbolsCount() {
return externalSymbols_.size();
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
@java.lang.Override
public scip.Scip.SymbolInformation getExternalSymbols(int index) {
return externalSymbols_.get(index);
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
@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;
}
/**
*
* 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.
*
*
* Protobuf type {@code scip.Index}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
* @return Whether the metadata field is set.
*/
public boolean hasMetadata() {
return metadataBuilder_ != null || metadata_ != null;
}
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
* @return The metadata.
*/
public scip.Scip.Metadata getMetadata() {
if (metadataBuilder_ == null) {
return metadata_ == null ? scip.Scip.Metadata.getDefaultInstance() : metadata_;
} else {
return metadataBuilder_.getMessage();
}
}
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
*/
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;
}
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
*/
public Builder setMetadata(
scip.Scip.Metadata.Builder builderForValue) {
if (metadataBuilder_ == null) {
metadata_ = builderForValue.build();
onChanged();
} else {
metadataBuilder_.setMessage(builderForValue.build());
}
return this;
}
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
*/
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;
}
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
*/
public Builder clearMetadata() {
if (metadataBuilder_ == null) {
metadata_ = null;
onChanged();
} else {
metadata_ = null;
metadataBuilder_ = null;
}
return this;
}
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
*/
public scip.Scip.Metadata.Builder getMetadataBuilder() {
onChanged();
return getMetadataFieldBuilder().getBuilder();
}
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
*/
public scip.Scip.MetadataOrBuilder getMetadataOrBuilder() {
if (metadataBuilder_ != null) {
return metadataBuilder_.getMessageOrBuilder();
} else {
return metadata_ == null ?
scip.Scip.Metadata.getDefaultInstance() : metadata_;
}
}
/**
*
* Metadata about this index.
*
*
* .scip.Metadata metadata = 1;
*/
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
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public java.util.List
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public int getDocumentsCount() {
if (documentsBuilder_ == null) {
return documents_.size();
} else {
return documentsBuilder_.getCount();
}
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public scip.Scip.Document getDocuments(int index) {
if (documentsBuilder_ == null) {
return documents_.get(index);
} else {
return documentsBuilder_.getMessage(index);
}
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
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;
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
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;
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
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;
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
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;
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public Builder addDocuments(
scip.Scip.Document.Builder builderForValue) {
if (documentsBuilder_ == null) {
ensureDocumentsIsMutable();
documents_.add(builderForValue.build());
onChanged();
} else {
documentsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
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;
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
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;
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public Builder clearDocuments() {
if (documentsBuilder_ == null) {
documents_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
} else {
documentsBuilder_.clear();
}
return this;
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public Builder removeDocuments(int index) {
if (documentsBuilder_ == null) {
ensureDocumentsIsMutable();
documents_.remove(index);
onChanged();
} else {
documentsBuilder_.remove(index);
}
return this;
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public scip.Scip.Document.Builder getDocumentsBuilder(
int index) {
return getDocumentsFieldBuilder().getBuilder(index);
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public scip.Scip.DocumentOrBuilder getDocumentsOrBuilder(
int index) {
if (documentsBuilder_ == null) {
return documents_.get(index); } else {
return documentsBuilder_.getMessageOrBuilder(index);
}
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public java.util.List extends scip.Scip.DocumentOrBuilder>
getDocumentsOrBuilderList() {
if (documentsBuilder_ != null) {
return documentsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(documents_);
}
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public scip.Scip.Document.Builder addDocumentsBuilder() {
return getDocumentsFieldBuilder().addBuilder(
scip.Scip.Document.getDefaultInstance());
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public scip.Scip.Document.Builder addDocumentsBuilder(
int index) {
return getDocumentsFieldBuilder().addBuilder(
index, scip.Scip.Document.getDefaultInstance());
}
/**
*
* Documents that belong to this index.
*
*
* repeated .scip.Document documents = 2;
*/
public java.util.List
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public java.util.List
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public int getExternalSymbolsCount() {
if (externalSymbolsBuilder_ == null) {
return externalSymbols_.size();
} else {
return externalSymbolsBuilder_.getCount();
}
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public scip.Scip.SymbolInformation getExternalSymbols(int index) {
if (externalSymbolsBuilder_ == null) {
return externalSymbols_.get(index);
} else {
return externalSymbolsBuilder_.getMessage(index);
}
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
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;
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
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;
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
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;
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
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;
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public Builder addExternalSymbols(
scip.Scip.SymbolInformation.Builder builderForValue) {
if (externalSymbolsBuilder_ == null) {
ensureExternalSymbolsIsMutable();
externalSymbols_.add(builderForValue.build());
onChanged();
} else {
externalSymbolsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
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;
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
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;
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public Builder clearExternalSymbols() {
if (externalSymbolsBuilder_ == null) {
externalSymbols_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
onChanged();
} else {
externalSymbolsBuilder_.clear();
}
return this;
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public Builder removeExternalSymbols(int index) {
if (externalSymbolsBuilder_ == null) {
ensureExternalSymbolsIsMutable();
externalSymbols_.remove(index);
onChanged();
} else {
externalSymbolsBuilder_.remove(index);
}
return this;
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public scip.Scip.SymbolInformation.Builder getExternalSymbolsBuilder(
int index) {
return getExternalSymbolsFieldBuilder().getBuilder(index);
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public scip.Scip.SymbolInformationOrBuilder getExternalSymbolsOrBuilder(
int index) {
if (externalSymbolsBuilder_ == null) {
return externalSymbols_.get(index); } else {
return externalSymbolsBuilder_.getMessageOrBuilder(index);
}
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public java.util.List extends scip.Scip.SymbolInformationOrBuilder>
getExternalSymbolsOrBuilderList() {
if (externalSymbolsBuilder_ != null) {
return externalSymbolsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(externalSymbols_);
}
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public scip.Scip.SymbolInformation.Builder addExternalSymbolsBuilder() {
return getExternalSymbolsFieldBuilder().addBuilder(
scip.Scip.SymbolInformation.getDefaultInstance());
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public scip.Scip.SymbolInformation.Builder addExternalSymbolsBuilder(
int index) {
return getExternalSymbolsFieldBuilder().addBuilder(
index, scip.Scip.SymbolInformation.getDefaultInstance());
}
/**
*
* (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.
*
*
* repeated .scip.SymbolInformation external_symbols = 3;
*/
public java.util.List
* Which version of this protocol was used to generate this index?
*
*
* .scip.ProtocolVersion version = 1;
* @return The enum numeric value on the wire for version.
*/
int getVersionValue();
/**
*
* Which version of this protocol was used to generate this index?
*
*
* .scip.ProtocolVersion version = 1;
* @return The version.
*/
scip.Scip.ProtocolVersion getVersion();
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
* @return Whether the toolInfo field is set.
*/
boolean hasToolInfo();
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
* @return The toolInfo.
*/
scip.Scip.ToolInfo getToolInfo();
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
*/
scip.Scip.ToolInfoOrBuilder getToolInfoOrBuilder();
/**
*
* 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.
*
*
* string project_root = 3;
* @return The projectRoot.
*/
java.lang.String getProjectRoot();
/**
*
* 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.
*
*
* string project_root = 3;
* @return The bytes for projectRoot.
*/
com.google.protobuf.ByteString
getProjectRootBytes();
/**
*
* 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.
*
*
* .scip.TextEncoding text_document_encoding = 4;
* @return The enum numeric value on the wire for textDocumentEncoding.
*/
int getTextDocumentEncodingValue();
/**
*
* 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.
*
*
* .scip.TextEncoding text_document_encoding = 4;
* @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_;
/**
*
* Which version of this protocol was used to generate this index?
*
*
* .scip.ProtocolVersion version = 1;
* @return The enum numeric value on the wire for version.
*/
@java.lang.Override public int getVersionValue() {
return version_;
}
/**
*
* Which version of this protocol was used to generate this index?
*
*
* .scip.ProtocolVersion version = 1;
* @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_;
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
* @return Whether the toolInfo field is set.
*/
@java.lang.Override
public boolean hasToolInfo() {
return toolInfo_ != null;
}
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
* @return The toolInfo.
*/
@java.lang.Override
public scip.Scip.ToolInfo getToolInfo() {
return toolInfo_ == null ? scip.Scip.ToolInfo.getDefaultInstance() : toolInfo_;
}
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
*/
@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_;
/**
*
* 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.
*
*
* string project_root = 3;
* @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;
}
}
/**
*
* 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.
*
*
* string project_root = 3;
* @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_;
/**
*
* 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.
*
*
* .scip.TextEncoding text_document_encoding = 4;
* @return The enum numeric value on the wire for textDocumentEncoding.
*/
@java.lang.Override public int getTextDocumentEncodingValue() {
return textDocumentEncoding_;
}
/**
*
* 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.
*
*
* .scip.TextEncoding text_document_encoding = 4;
* @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
* Which version of this protocol was used to generate this index?
*
*
* .scip.ProtocolVersion version = 1;
* @return The enum numeric value on the wire for version.
*/
@java.lang.Override public int getVersionValue() {
return version_;
}
/**
*
* Which version of this protocol was used to generate this index?
*
*
* .scip.ProtocolVersion version = 1;
* @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;
}
/**
*
* Which version of this protocol was used to generate this index?
*
*
* .scip.ProtocolVersion version = 1;
* @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;
}
/**
*
* Which version of this protocol was used to generate this index?
*
*
* .scip.ProtocolVersion version = 1;
* @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;
}
/**
*
* Which version of this protocol was used to generate this index?
*
*
* .scip.ProtocolVersion version = 1;
* @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_;
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
* @return Whether the toolInfo field is set.
*/
public boolean hasToolInfo() {
return toolInfoBuilder_ != null || toolInfo_ != null;
}
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
* @return The toolInfo.
*/
public scip.Scip.ToolInfo getToolInfo() {
if (toolInfoBuilder_ == null) {
return toolInfo_ == null ? scip.Scip.ToolInfo.getDefaultInstance() : toolInfo_;
} else {
return toolInfoBuilder_.getMessage();
}
}
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
*/
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;
}
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
*/
public Builder setToolInfo(
scip.Scip.ToolInfo.Builder builderForValue) {
if (toolInfoBuilder_ == null) {
toolInfo_ = builderForValue.build();
onChanged();
} else {
toolInfoBuilder_.setMessage(builderForValue.build());
}
return this;
}
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
*/
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;
}
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
*/
public Builder clearToolInfo() {
if (toolInfoBuilder_ == null) {
toolInfo_ = null;
onChanged();
} else {
toolInfo_ = null;
toolInfoBuilder_ = null;
}
return this;
}
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
*/
public scip.Scip.ToolInfo.Builder getToolInfoBuilder() {
onChanged();
return getToolInfoFieldBuilder().getBuilder();
}
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
*/
public scip.Scip.ToolInfoOrBuilder getToolInfoOrBuilder() {
if (toolInfoBuilder_ != null) {
return toolInfoBuilder_.getMessageOrBuilder();
} else {
return toolInfo_ == null ?
scip.Scip.ToolInfo.getDefaultInstance() : toolInfo_;
}
}
/**
*
* Information about the tool that produced this index.
*
*
* .scip.ToolInfo tool_info = 2;
*/
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_ = "";
/**
*
* 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.
*
*
* string project_root = 3;
* @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;
}
}
/**
*
* 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.
*
*
* string project_root = 3;
* @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;
}
}
/**
*
* 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.
*
*
* string project_root = 3;
* @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;
}
/**
*
* 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.
*
*
* string project_root = 3;
* @return This builder for chaining.
*/
public Builder clearProjectRoot() {
projectRoot_ = getDefaultInstance().getProjectRoot();
onChanged();
return this;
}
/**
*
* 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.
*
*
* string project_root = 3;
* @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;
/**
*
* 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.
*
*
* .scip.TextEncoding text_document_encoding = 4;
* @return The enum numeric value on the wire for textDocumentEncoding.
*/
@java.lang.Override public int getTextDocumentEncodingValue() {
return textDocumentEncoding_;
}
/**
*
* 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.
*
*
* .scip.TextEncoding text_document_encoding = 4;
* @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;
}
/**
*
* 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.
*
*
* .scip.TextEncoding text_document_encoding = 4;
* @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;
}
/**
*
* 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.
*
*
* .scip.TextEncoding text_document_encoding = 4;
* @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;
}
/**
*
* 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.
*
*
* .scip.TextEncoding text_document_encoding = 4;
* @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
* Name of the indexer that produced this index.
*
*
* string name = 1;
* @return The name.
*/
java.lang.String getName();
/**
*
* Name of the indexer that produced this index.
*
*
* string name = 1;
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
/**
*
* Version of the indexer that produced this index.
*
*
* string version = 2;
* @return The version.
*/
java.lang.String getVersion();
/**
*
* Version of the indexer that produced this index.
*
*
* string version = 2;
* @return The bytes for version.
*/
com.google.protobuf.ByteString
getVersionBytes();
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @return A list containing the arguments.
*/
java.util.List
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @return The count of arguments.
*/
int getArgumentsCount();
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @param index The index of the element to return.
* @return The arguments at the given index.
*/
java.lang.String getArguments(int index);
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @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_;
/**
*
* Name of the indexer that produced this index.
*
*
* string name = 1;
* @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;
}
}
/**
*
* Name of the indexer that produced this index.
*
*
* string name = 1;
* @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_;
/**
*
* Version of the indexer that produced this index.
*
*
* string version = 2;
* @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;
}
}
/**
*
* Version of the indexer that produced this index.
*
*
* string version = 2;
* @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_;
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @return A list containing the arguments.
*/
public com.google.protobuf.ProtocolStringList
getArgumentsList() {
return arguments_;
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @return The count of arguments.
*/
public int getArgumentsCount() {
return arguments_.size();
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @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);
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @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
* Name of the indexer that produced this index.
*
*
* string name = 1;
* @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;
}
}
/**
*
* Name of the indexer that produced this index.
*
*
* string name = 1;
* @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;
}
}
/**
*
* Name of the indexer that produced this index.
*
*
* string name = 1;
* @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;
}
/**
*
* Name of the indexer that produced this index.
*
*
* string name = 1;
* @return This builder for chaining.
*/
public Builder clearName() {
name_ = getDefaultInstance().getName();
onChanged();
return this;
}
/**
*
* Name of the indexer that produced this index.
*
*
* string name = 1;
* @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_ = "";
/**
*
* Version of the indexer that produced this index.
*
*
* string version = 2;
* @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;
}
}
/**
*
* Version of the indexer that produced this index.
*
*
* string version = 2;
* @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;
}
}
/**
*
* Version of the indexer that produced this index.
*
*
* string version = 2;
* @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;
}
/**
*
* Version of the indexer that produced this index.
*
*
* string version = 2;
* @return This builder for chaining.
*/
public Builder clearVersion() {
version_ = getDefaultInstance().getVersion();
onChanged();
return this;
}
/**
*
* Version of the indexer that produced this index.
*
*
* string version = 2;
* @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;
}
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @return A list containing the arguments.
*/
public com.google.protobuf.ProtocolStringList
getArgumentsList() {
return arguments_.getUnmodifiableView();
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @return The count of arguments.
*/
public int getArgumentsCount() {
return arguments_.size();
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @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);
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @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);
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @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;
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @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;
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @param values The arguments to add.
* @return This builder for chaining.
*/
public Builder addAllArguments(
java.lang.Iterable
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @return This builder for chaining.
*/
public Builder clearArguments() {
arguments_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
return this;
}
/**
*
* Command-line arguments that were used to invoke this indexer.
*
*
* repeated string arguments = 3;
* @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
* 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.
*
*
* string language = 4;
* @return The language.
*/
java.lang.String getLanguage();
/**
*
* 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.
*
*
* string language = 4;
* @return The bytes for language.
*/
com.google.protobuf.ByteString
getLanguageBytes();
/**
*
* (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 '..'.
*
*
* string relative_path = 1;
* @return The relativePath.
*/
java.lang.String getRelativePath();
/**
*
* (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 '..'.
*
*
* string relative_path = 1;
* @return The bytes for relativePath.
*/
com.google.protobuf.ByteString
getRelativePathBytes();
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
java.util.List
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
scip.Scip.Occurrence getOccurrences(int index);
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
int getOccurrencesCount();
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
java.util.List extends scip.Scip.OccurrenceOrBuilder>
getOccurrencesOrBuilderList();
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
scip.Scip.OccurrenceOrBuilder getOccurrencesOrBuilder(
int index);
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
java.util.List
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
scip.Scip.SymbolInformation getSymbols(int index);
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
int getSymbolsCount();
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
java.util.List extends scip.Scip.SymbolInformationOrBuilder>
getSymbolsOrBuilderList();
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
scip.Scip.SymbolInformationOrBuilder getSymbolsOrBuilder(
int index);
/**
*
* (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.
*
*
* string text = 5;
* @return The text.
*/
java.lang.String getText();
/**
*
* (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.
*
*
* string text = 5;
* @return The bytes for text.
*/
com.google.protobuf.ByteString
getTextBytes();
/**
*
* 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.
*
*
* .scip.PositionEncoding position_encoding = 6;
* @return The enum numeric value on the wire for positionEncoding.
*/
int getPositionEncodingValue();
/**
*
* 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.
*
*
* .scip.PositionEncoding position_encoding = 6;
* @return The positionEncoding.
*/
scip.Scip.PositionEncoding getPositionEncoding();
}
/**
* * Document defines the metadata about a source file on disk. ** * 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
* 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.
*
*
* string language = 4;
* @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;
}
}
/**
*
* 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.
*
*
* string language = 4;
* @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_;
/**
*
* (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 '..'.
*
*
* string relative_path = 1;
* @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;
}
}
/**
*
* (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 '..'.
*
*
* string relative_path = 1;
* @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
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
@java.lang.Override
public java.util.List
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
@java.lang.Override
public java.util.List extends scip.Scip.OccurrenceOrBuilder>
getOccurrencesOrBuilderList() {
return occurrences_;
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
@java.lang.Override
public int getOccurrencesCount() {
return occurrences_.size();
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
@java.lang.Override
public scip.Scip.Occurrence getOccurrences(int index) {
return occurrences_.get(index);
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
@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
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
@java.lang.Override
public java.util.List
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
@java.lang.Override
public java.util.List extends scip.Scip.SymbolInformationOrBuilder>
getSymbolsOrBuilderList() {
return symbols_;
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
@java.lang.Override
public int getSymbolsCount() {
return symbols_.size();
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
@java.lang.Override
public scip.Scip.SymbolInformation getSymbols(int index) {
return symbols_.get(index);
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
@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_;
/**
*
* (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.
*
*
* string text = 5;
* @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;
}
}
/**
*
* (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.
*
*
* string text = 5;
* @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_;
/**
*
* 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.
*
*
* .scip.PositionEncoding position_encoding = 6;
* @return The enum numeric value on the wire for positionEncoding.
*/
@java.lang.Override public int getPositionEncodingValue() {
return positionEncoding_;
}
/**
*
* 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.
*
*
* .scip.PositionEncoding position_encoding = 6;
* @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;
}
/**
*
* Document defines the metadata about a source file on disk.
*
*
* Protobuf type {@code scip.Document}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder
* 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.
*
*
* string language = 4;
* @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;
}
}
/**
*
* 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.
*
*
* string language = 4;
* @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;
}
}
/**
*
* 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.
*
*
* string language = 4;
* @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;
}
/**
*
* 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.
*
*
* string language = 4;
* @return This builder for chaining.
*/
public Builder clearLanguage() {
language_ = getDefaultInstance().getLanguage();
onChanged();
return this;
}
/**
*
* 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.
*
*
* string language = 4;
* @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_ = "";
/**
*
* (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 '..'.
*
*
* string relative_path = 1;
* @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;
}
}
/**
*
* (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 '..'.
*
*
* string relative_path = 1;
* @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;
}
}
/**
*
* (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 '..'.
*
*
* string relative_path = 1;
* @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;
}
/**
*
* (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 '..'.
*
*
* string relative_path = 1;
* @return This builder for chaining.
*/
public Builder clearRelativePath() {
relativePath_ = getDefaultInstance().getRelativePath();
onChanged();
return this;
}
/**
*
* (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 '..'.
*
*
* string relative_path = 1;
* @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
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public java.util.List
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public int getOccurrencesCount() {
if (occurrencesBuilder_ == null) {
return occurrences_.size();
} else {
return occurrencesBuilder_.getCount();
}
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public scip.Scip.Occurrence getOccurrences(int index) {
if (occurrencesBuilder_ == null) {
return occurrences_.get(index);
} else {
return occurrencesBuilder_.getMessage(index);
}
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
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;
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
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;
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
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;
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
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;
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public Builder addOccurrences(
scip.Scip.Occurrence.Builder builderForValue) {
if (occurrencesBuilder_ == null) {
ensureOccurrencesIsMutable();
occurrences_.add(builderForValue.build());
onChanged();
} else {
occurrencesBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
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;
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
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;
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public Builder clearOccurrences() {
if (occurrencesBuilder_ == null) {
occurrences_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
} else {
occurrencesBuilder_.clear();
}
return this;
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public Builder removeOccurrences(int index) {
if (occurrencesBuilder_ == null) {
ensureOccurrencesIsMutable();
occurrences_.remove(index);
onChanged();
} else {
occurrencesBuilder_.remove(index);
}
return this;
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public scip.Scip.Occurrence.Builder getOccurrencesBuilder(
int index) {
return getOccurrencesFieldBuilder().getBuilder(index);
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public scip.Scip.OccurrenceOrBuilder getOccurrencesOrBuilder(
int index) {
if (occurrencesBuilder_ == null) {
return occurrences_.get(index); } else {
return occurrencesBuilder_.getMessageOrBuilder(index);
}
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public java.util.List extends scip.Scip.OccurrenceOrBuilder>
getOccurrencesOrBuilderList() {
if (occurrencesBuilder_ != null) {
return occurrencesBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(occurrences_);
}
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public scip.Scip.Occurrence.Builder addOccurrencesBuilder() {
return getOccurrencesFieldBuilder().addBuilder(
scip.Scip.Occurrence.getDefaultInstance());
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public scip.Scip.Occurrence.Builder addOccurrencesBuilder(
int index) {
return getOccurrencesFieldBuilder().addBuilder(
index, scip.Scip.Occurrence.getDefaultInstance());
}
/**
*
* Occurrences that appear in this file.
*
*
* repeated .scip.Occurrence occurrences = 2;
*/
public java.util.List
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public java.util.List
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public int getSymbolsCount() {
if (symbolsBuilder_ == null) {
return symbols_.size();
} else {
return symbolsBuilder_.getCount();
}
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public scip.Scip.SymbolInformation getSymbols(int index) {
if (symbolsBuilder_ == null) {
return symbols_.get(index);
} else {
return symbolsBuilder_.getMessage(index);
}
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
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;
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
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;
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
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;
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
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;
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public Builder addSymbols(
scip.Scip.SymbolInformation.Builder builderForValue) {
if (symbolsBuilder_ == null) {
ensureSymbolsIsMutable();
symbols_.add(builderForValue.build());
onChanged();
} else {
symbolsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
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;
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
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;
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public Builder clearSymbols() {
if (symbolsBuilder_ == null) {
symbols_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
onChanged();
} else {
symbolsBuilder_.clear();
}
return this;
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public Builder removeSymbols(int index) {
if (symbolsBuilder_ == null) {
ensureSymbolsIsMutable();
symbols_.remove(index);
onChanged();
} else {
symbolsBuilder_.remove(index);
}
return this;
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public scip.Scip.SymbolInformation.Builder getSymbolsBuilder(
int index) {
return getSymbolsFieldBuilder().getBuilder(index);
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public scip.Scip.SymbolInformationOrBuilder getSymbolsOrBuilder(
int index) {
if (symbolsBuilder_ == null) {
return symbols_.get(index); } else {
return symbolsBuilder_.getMessageOrBuilder(index);
}
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public java.util.List extends scip.Scip.SymbolInformationOrBuilder>
getSymbolsOrBuilderList() {
if (symbolsBuilder_ != null) {
return symbolsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(symbols_);
}
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public scip.Scip.SymbolInformation.Builder addSymbolsBuilder() {
return getSymbolsFieldBuilder().addBuilder(
scip.Scip.SymbolInformation.getDefaultInstance());
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public scip.Scip.SymbolInformation.Builder addSymbolsBuilder(
int index) {
return getSymbolsFieldBuilder().addBuilder(
index, scip.Scip.SymbolInformation.getDefaultInstance());
}
/**
*
* 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).
*
*
* repeated .scip.SymbolInformation symbols = 3;
*/
public java.util.List
* (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.
*
*
* string text = 5;
* @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;
}
}
/**
*
* (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.
*
*
* string text = 5;
* @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;
}
}
/**
*
* (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.
*
*
* string text = 5;
* @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;
}
/**
*
* (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.
*
*
* string text = 5;
* @return This builder for chaining.
*/
public Builder clearText() {
text_ = getDefaultInstance().getText();
onChanged();
return this;
}
/**
*
* (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.
*
*
* string text = 5;
* @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;
/**
*
* 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.
*
*
* .scip.PositionEncoding position_encoding = 6;
* @return The enum numeric value on the wire for positionEncoding.
*/
@java.lang.Override public int getPositionEncodingValue() {
return positionEncoding_;
}
/**
*
* 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.
*
*
* .scip.PositionEncoding position_encoding = 6;
* @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;
}
/**
*
* 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.
*
*
* .scip.PositionEncoding position_encoding = 6;
* @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;
}
/**
*
* 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.
*
*
* .scip.PositionEncoding position_encoding = 6;
* @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;
}
/**
*
* 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.
*
*
* .scip.PositionEncoding position_encoding = 6;
* @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.Parserstring scheme = 1;
* @return The scheme.
*/
java.lang.String getScheme();
/**
* string scheme = 1;
* @return The bytes for scheme.
*/
com.google.protobuf.ByteString
getSchemeBytes();
/**
* .scip.Package package = 2;
* @return Whether the package field is set.
*/
boolean hasPackage();
/**
* .scip.Package package = 2;
* @return The package.
*/
scip.Scip.Package getPackage();
/**
* .scip.Package package = 2;
*/
scip.Scip.PackageOrBuilder getPackageOrBuilder();
/**
* repeated .scip.Descriptor descriptors = 3;
*/
java.util.Listrepeated .scip.Descriptor descriptors = 3;
*/
scip.Scip.Descriptor getDescriptors(int index);
/**
* repeated .scip.Descriptor descriptors = 3;
*/
int getDescriptorsCount();
/**
* repeated .scip.Descriptor descriptors = 3;
*/
java.util.List extends scip.Scip.DescriptorOrBuilder>
getDescriptorsOrBuilderList();
/**
* repeated .scip.Descriptor descriptors = 3;
*/
scip.Scip.DescriptorOrBuilder getDescriptorsOrBuilder(
int index);
}
/**
*
* 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:
* ```
* # (<x>)+ stands for one or more repetitions of <x>
* # (<x>)? stands for zero or one occurrence of <x>
* <symbol> ::= <scheme> ' ' <package> ' ' (<descriptor>)+ | 'local ' <local-id>
* <package> ::= <manager> ' ' <package-name> ' ' <version>
* <scheme> ::= any UTF-8, escape spaces with double space. Must not be empty nor start with 'local'
* <manager> ::= any UTF-8, escape spaces with double space. Use the placeholder '.' to indicate an empty value
* <package-name> ::= same as above
* <version> ::= same as above
* <descriptor> ::= <namespace> | <type> | <term> | <method> | <type-parameter> | <parameter> | <meta> | <macro>
* <namespace> ::= <name> '/'
* <type> ::= <name> '#'
* <term> ::= <name> '.'
* <meta> ::= <name> ':'
* <macro> ::= <name> '!'
* <method> ::= <name> '(' (<method-disambiguator>)? ').'
* <type-parameter> ::= '[' <name> ']'
* <parameter> ::= '(' <name> ')'
* <name> ::= <identifier>
* <method-disambiguator> ::= <simple-identifier>
* <identifier> ::= <simple-identifier> | <escaped-identifier>
* <simple-identifier> ::= (<identifier-character>)+
* <identifier-character> ::= '_' | '+' | '-' | '$' | ASCII letter or digit
* <escaped-identifier> ::= '`' (<escaped-character>)+ '`', must contain at least one non-<identifier-character>
* <escaped-characters> ::= any UTF-8, escape backticks with double backtick.
* <local-id> ::= <simple-identifier>
* ```
* 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.
*
*
* 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.ArrayListstring scheme = 1;
* @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;
}
}
/**
* string scheme = 1;
* @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_;
/**
* .scip.Package package = 2;
* @return Whether the package field is set.
*/
@java.lang.Override
public boolean hasPackage() {
return package_ != null;
}
/**
* .scip.Package package = 2;
* @return The package.
*/
@java.lang.Override
public scip.Scip.Package getPackage() {
return package_ == null ? scip.Scip.Package.getDefaultInstance() : package_;
}
/**
* .scip.Package package = 2;
*/
@java.lang.Override
public scip.Scip.PackageOrBuilder getPackageOrBuilder() {
return getPackage();
}
public static final int DESCRIPTORS_FIELD_NUMBER = 3;
private java.util.Listrepeated .scip.Descriptor descriptors = 3;
*/
@java.lang.Override
public java.util.Listrepeated .scip.Descriptor descriptors = 3;
*/
@java.lang.Override
public java.util.List extends scip.Scip.DescriptorOrBuilder>
getDescriptorsOrBuilderList() {
return descriptors_;
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
@java.lang.Override
public int getDescriptorsCount() {
return descriptors_.size();
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
@java.lang.Override
public scip.Scip.Descriptor getDescriptors(int index) {
return descriptors_.get(index);
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
@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;
}
/**
*
* 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:
* ```
* # (<x>)+ stands for one or more repetitions of <x>
* # (<x>)? stands for zero or one occurrence of <x>
* <symbol> ::= <scheme> ' ' <package> ' ' (<descriptor>)+ | 'local ' <local-id>
* <package> ::= <manager> ' ' <package-name> ' ' <version>
* <scheme> ::= any UTF-8, escape spaces with double space. Must not be empty nor start with 'local'
* <manager> ::= any UTF-8, escape spaces with double space. Use the placeholder '.' to indicate an empty value
* <package-name> ::= same as above
* <version> ::= same as above
* <descriptor> ::= <namespace> | <type> | <term> | <method> | <type-parameter> | <parameter> | <meta> | <macro>
* <namespace> ::= <name> '/'
* <type> ::= <name> '#'
* <term> ::= <name> '.'
* <meta> ::= <name> ':'
* <macro> ::= <name> '!'
* <method> ::= <name> '(' (<method-disambiguator>)? ').'
* <type-parameter> ::= '[' <name> ']'
* <parameter> ::= '(' <name> ')'
* <name> ::= <identifier>
* <method-disambiguator> ::= <simple-identifier>
* <identifier> ::= <simple-identifier> | <escaped-identifier>
* <simple-identifier> ::= (<identifier-character>)+
* <identifier-character> ::= '_' | '+' | '-' | '$' | ASCII letter or digit
* <escaped-identifier> ::= '`' (<escaped-character>)+ '`', must contain at least one non-<identifier-character>
* <escaped-characters> ::= any UTF-8, escape backticks with double backtick.
* <local-id> ::= <simple-identifier>
* ```
* 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.
*
*
* Protobuf type {@code scip.Symbol}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builderstring scheme = 1;
* @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;
}
}
/**
* string scheme = 1;
* @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;
}
}
/**
* string scheme = 1;
* @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;
}
/**
* string scheme = 1;
* @return This builder for chaining.
*/
public Builder clearScheme() {
scheme_ = getDefaultInstance().getScheme();
onChanged();
return this;
}
/**
* string scheme = 1;
* @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_;
/**
* .scip.Package package = 2;
* @return Whether the package field is set.
*/
public boolean hasPackage() {
return packageBuilder_ != null || package_ != null;
}
/**
* .scip.Package package = 2;
* @return The package.
*/
public scip.Scip.Package getPackage() {
if (packageBuilder_ == null) {
return package_ == null ? scip.Scip.Package.getDefaultInstance() : package_;
} else {
return packageBuilder_.getMessage();
}
}
/**
* .scip.Package package = 2;
*/
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;
}
/**
* .scip.Package package = 2;
*/
public Builder setPackage(
scip.Scip.Package.Builder builderForValue) {
if (packageBuilder_ == null) {
package_ = builderForValue.build();
onChanged();
} else {
packageBuilder_.setMessage(builderForValue.build());
}
return this;
}
/**
* .scip.Package package = 2;
*/
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;
}
/**
* .scip.Package package = 2;
*/
public Builder clearPackage() {
if (packageBuilder_ == null) {
package_ = null;
onChanged();
} else {
package_ = null;
packageBuilder_ = null;
}
return this;
}
/**
* .scip.Package package = 2;
*/
public scip.Scip.Package.Builder getPackageBuilder() {
onChanged();
return getPackageFieldBuilder().getBuilder();
}
/**
* .scip.Package package = 2;
*/
public scip.Scip.PackageOrBuilder getPackageOrBuilder() {
if (packageBuilder_ != null) {
return packageBuilder_.getMessageOrBuilder();
} else {
return package_ == null ?
scip.Scip.Package.getDefaultInstance() : package_;
}
}
/**
* .scip.Package package = 2;
*/
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.Listrepeated .scip.Descriptor descriptors = 3;
*/
public java.util.Listrepeated .scip.Descriptor descriptors = 3;
*/
public int getDescriptorsCount() {
if (descriptorsBuilder_ == null) {
return descriptors_.size();
} else {
return descriptorsBuilder_.getCount();
}
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
public scip.Scip.Descriptor getDescriptors(int index) {
if (descriptorsBuilder_ == null) {
return descriptors_.get(index);
} else {
return descriptorsBuilder_.getMessage(index);
}
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
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;
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
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;
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
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;
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
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;
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
public Builder addDescriptors(
scip.Scip.Descriptor.Builder builderForValue) {
if (descriptorsBuilder_ == null) {
ensureDescriptorsIsMutable();
descriptors_.add(builderForValue.build());
onChanged();
} else {
descriptorsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
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;
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
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;
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
public Builder clearDescriptors() {
if (descriptorsBuilder_ == null) {
descriptors_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
} else {
descriptorsBuilder_.clear();
}
return this;
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
public Builder removeDescriptors(int index) {
if (descriptorsBuilder_ == null) {
ensureDescriptorsIsMutable();
descriptors_.remove(index);
onChanged();
} else {
descriptorsBuilder_.remove(index);
}
return this;
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
public scip.Scip.Descriptor.Builder getDescriptorsBuilder(
int index) {
return getDescriptorsFieldBuilder().getBuilder(index);
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
public scip.Scip.DescriptorOrBuilder getDescriptorsOrBuilder(
int index) {
if (descriptorsBuilder_ == null) {
return descriptors_.get(index); } else {
return descriptorsBuilder_.getMessageOrBuilder(index);
}
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
public java.util.List extends scip.Scip.DescriptorOrBuilder>
getDescriptorsOrBuilderList() {
if (descriptorsBuilder_ != null) {
return descriptorsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(descriptors_);
}
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
public scip.Scip.Descriptor.Builder addDescriptorsBuilder() {
return getDescriptorsFieldBuilder().addBuilder(
scip.Scip.Descriptor.getDefaultInstance());
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
public scip.Scip.Descriptor.Builder addDescriptorsBuilder(
int index) {
return getDescriptorsFieldBuilder().addBuilder(
index, scip.Scip.Descriptor.getDefaultInstance());
}
/**
* repeated .scip.Descriptor descriptors = 3;
*/
public java.util.Liststring manager = 1;
* @return The manager.
*/
java.lang.String getManager();
/**
* string manager = 1;
* @return The bytes for manager.
*/
com.google.protobuf.ByteString
getManagerBytes();
/**
* string name = 2;
* @return The name.
*/
java.lang.String getName();
/**
* string name = 2;
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
/**
* string version = 3;
* @return The version.
*/
java.lang.String getVersion();
/**
* string version = 3;
* @return The bytes for version.
*/
com.google.protobuf.ByteString
getVersionBytes();
}
/**
* * Unit of packaging and distribution. * NOTE: This corresponds to a module in Go and JVM languages. ** * 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_; /** *
string manager = 1;
* @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;
}
}
/**
* string manager = 1;
* @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_;
/**
* string name = 2;
* @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;
}
}
/**
* string name = 2;
* @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_;
/**
* string version = 3;
* @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;
}
}
/**
* string version = 3;
* @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;
}
/**
*
* Unit of packaging and distribution.
* NOTE: This corresponds to a module in Go and JVM languages.
*
*
* Protobuf type {@code scip.Package}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builderstring manager = 1;
* @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;
}
}
/**
* string manager = 1;
* @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;
}
}
/**
* string manager = 1;
* @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;
}
/**
* string manager = 1;
* @return This builder for chaining.
*/
public Builder clearManager() {
manager_ = getDefaultInstance().getManager();
onChanged();
return this;
}
/**
* string manager = 1;
* @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_ = "";
/**
* string name = 2;
* @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;
}
}
/**
* string name = 2;
* @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;
}
}
/**
* string name = 2;
* @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;
}
/**
* string name = 2;
* @return This builder for chaining.
*/
public Builder clearName() {
name_ = getDefaultInstance().getName();
onChanged();
return this;
}
/**
* string name = 2;
* @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_ = "";
/**
* string version = 3;
* @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;
}
}
/**
* string version = 3;
* @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;
}
}
/**
* string version = 3;
* @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;
}
/**
* string version = 3;
* @return This builder for chaining.
*/
public Builder clearVersion() {
version_ = getDefaultInstance().getVersion();
onChanged();
return this;
}
/**
* string version = 3;
* @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.Parserstring name = 1;
* @return The name.
*/
java.lang.String getName();
/**
* string name = 1;
* @return The bytes for name.
*/
com.google.protobuf.ByteString
getNameBytes();
/**
* string disambiguator = 2;
* @return The disambiguator.
*/
java.lang.String getDisambiguator();
/**
* string disambiguator = 2;
* @return The bytes for disambiguator.
*/
com.google.protobuf.ByteString
getDisambiguatorBytes();
/**
*
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
*
*
* .scip.Descriptor.Suffix suffix = 3;
* @return The enum numeric value on the wire for suffix.
*/
int getSuffixValue();
/**
*
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
*
*
* .scip.Descriptor.Suffix suffix = 3;
* @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 {
/**
* UnspecifiedSuffix = 0;
*/
UnspecifiedSuffix(0, 0),
/**
*
* Unit of code abstraction and/or namespacing.
* NOTE: This corresponds to a package in Go and JVM languages.
*
*
* Namespace = 1;
*/
Namespace(1, 1),
/**
* Type = 2;
*/
Type(3, 2),
/**
* Term = 3;
*/
Term(4, 3),
/**
* Method = 4;
*/
Method(5, 4),
/**
* TypeParameter = 5;
*/
TypeParameter(6, 5),
/**
* Parameter = 6;
*/
Parameter(7, 6),
/**
*
* Can be used for any purpose.
*
*
* Meta = 7;
*/
Meta(8, 7),
/**
* Local = 8;
*/
Local(9, 8),
/**
* Macro = 9;
*/
Macro(10, 9),
UNRECOGNIZED(-1, -1),
;
/**
*
* Use Namespace instead.
*
*
* Package = 1 [deprecated = true];
*/
public static final Suffix Package = Namespace;
/**
* UnspecifiedSuffix = 0;
*/
public static final int UnspecifiedSuffix_VALUE = 0;
/**
*
* Unit of code abstraction and/or namespacing.
* NOTE: This corresponds to a package in Go and JVM languages.
*
*
* Namespace = 1;
*/
public static final int Namespace_VALUE = 1;
/**
*
* Use Namespace instead.
*
*
* Package = 1 [deprecated = true];
*/
@java.lang.Deprecated public static final int Package_VALUE = 1;
/**
* Type = 2;
*/
public static final int Type_VALUE = 2;
/**
* Term = 3;
*/
public static final int Term_VALUE = 3;
/**
* Method = 4;
*/
public static final int Method_VALUE = 4;
/**
* TypeParameter = 5;
*/
public static final int TypeParameter_VALUE = 5;
/**
* Parameter = 6;
*/
public static final int Parameter_VALUE = 6;
/**
*
* Can be used for any purpose.
*
*
* Meta = 7;
*/
public static final int Meta_VALUE = 7;
/**
* Local = 8;
*/
public static final int Local_VALUE = 8;
/**
* Macro = 9;
*/
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.EnumLiteMapstring name = 1;
* @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;
}
}
/**
* string name = 1;
* @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_;
/**
* string disambiguator = 2;
* @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;
}
}
/**
* string disambiguator = 2;
* @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_;
/**
*
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
*
*
* .scip.Descriptor.Suffix suffix = 3;
* @return The enum numeric value on the wire for suffix.
*/
@java.lang.Override public int getSuffixValue() {
return suffix_;
}
/**
*
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
*
*
* .scip.Descriptor.Suffix suffix = 3;
* @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.Builderstring name = 1;
* @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;
}
}
/**
* string name = 1;
* @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;
}
}
/**
* string name = 1;
* @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;
}
/**
* string name = 1;
* @return This builder for chaining.
*/
public Builder clearName() {
name_ = getDefaultInstance().getName();
onChanged();
return this;
}
/**
* string name = 1;
* @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_ = "";
/**
* string disambiguator = 2;
* @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;
}
}
/**
* string disambiguator = 2;
* @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;
}
}
/**
* string disambiguator = 2;
* @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;
}
/**
* string disambiguator = 2;
* @return This builder for chaining.
*/
public Builder clearDisambiguator() {
disambiguator_ = getDefaultInstance().getDisambiguator();
onChanged();
return this;
}
/**
* string disambiguator = 2;
* @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;
/**
*
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
*
*
* .scip.Descriptor.Suffix suffix = 3;
* @return The enum numeric value on the wire for suffix.
*/
@java.lang.Override public int getSuffixValue() {
return suffix_;
}
/**
*
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
*
*
* .scip.Descriptor.Suffix suffix = 3;
* @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;
}
/**
*
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
*
*
* .scip.Descriptor.Suffix suffix = 3;
* @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;
}
/**
*
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
*
*
* .scip.Descriptor.Suffix suffix = 3;
* @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;
}
/**
*
* NOTE: If you add new fields here, make sure to update the prepareSlot()
* function responsible for parsing symbols.
*
*
* .scip.Descriptor.Suffix suffix = 3;
* @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
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
*
*
* string symbol = 1;
* @return The symbol.
*/
java.lang.String getSymbol();
/**
*
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
*
*
* string symbol = 1;
* @return The bytes for symbol.
*/
com.google.protobuf.ByteString
getSymbolBytes();
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @return A list containing the documentation.
*/
java.util.List
* (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.
*
*
* repeated string documentation = 3;
* @return The count of documentation.
*/
int getDocumentationCount();
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @param index The index of the element to return.
* @return The documentation at the given index.
*/
java.lang.String getDocumentation(int index);
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @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);
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
java.util.List
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
scip.Scip.Relationship getRelationships(int index);
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
int getRelationshipsCount();
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
java.util.List extends scip.Scip.RelationshipOrBuilder>
getRelationshipsOrBuilderList();
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
scip.Scip.RelationshipOrBuilder getRelationshipsOrBuilder(
int index);
/**
*
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
*
*
* .scip.SymbolInformation.Kind kind = 5;
* @return The enum numeric value on the wire for kind.
*/
int getKindValue();
/**
*
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
*
*
* .scip.SymbolInformation.Kind kind = 5;
* @return The kind.
*/
scip.Scip.SymbolInformation.Kind getKind();
/**
*
* (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.
*
*
* string display_name = 6;
* @return The displayName.
*/
java.lang.String getDisplayName();
/**
*
* (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.
*
*
* string display_name = 6;
* @return The bytes for displayName.
*/
com.google.protobuf.ByteString
getDisplayNameBytes();
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
* @return Whether the signatureDocumentation field is set.
*/
boolean hasSignatureDocumentation();
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
* @return The signatureDocumentation.
*/
scip.Scip.Document getSignatureDocumentation();
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
*/
scip.Scip.DocumentOrBuilder getSignatureDocumentationOrBuilder();
/**
*
* (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.
*
*
* string enclosing_symbol = 8;
* @return The enclosingSymbol.
*/
java.lang.String getEnclosingSymbol();
/**
*
* (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.
*
*
* string enclosing_symbol = 8;
* @return The bytes for enclosingSymbol.
*/
com.google.protobuf.ByteString
getEnclosingSymbolBytes();
}
/**
* * SymbolInformation defines metadata about a symbol, such as the symbol's * docstring or what package it's defined it. ** * 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
* (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.
*
*
* Protobuf enum {@code scip.SymbolInformation.Kind}
*/
public enum Kind
implements com.google.protobuf.ProtocolMessageEnum {
/**
* UnspecifiedKind = 0;
*/
UnspecifiedKind(0),
/**
*
* A method which may or may not have a body. For Java, Kotlin etc.
*
*
* AbstractMethod = 66;
*/
AbstractMethod(66),
/**
*
* For Ruby's attr_accessor
*
*
* Accessor = 72;
*/
Accessor(72),
/**
* Array = 1;
*/
Array(1),
/**
*
* For Alloy
*
*
* Assertion = 2;
*/
Assertion(2),
/**
* AssociatedType = 3;
*/
AssociatedType(3),
/**
*
* For C++
*
*
* Attribute = 4;
*/
Attribute(4),
/**
*
* For Lean
*
*
* Axiom = 5;
*/
Axiom(5),
/**
* Boolean = 6;
*/
Boolean(6),
/**
* Class = 7;
*/
Class(7),
/**
*
* For C++
*
*
* Concept = 86;
*/
Concept(86),
/**
* Constant = 8;
*/
Constant(8),
/**
* Constructor = 9;
*/
Constructor(9),
/**
*
* For Solidity
*
*
* Contract = 62;
*/
Contract(62),
/**
*
* For Haskell
*
*
* DataFamily = 10;
*/
DataFamily(10),
/**
*
* For C# and F#
*
*
* Delegate = 73;
*/
Delegate(73),
/**
* Enum = 11;
*/
Enum(11),
/**
* EnumMember = 12;
*/
EnumMember(12),
/**
* Error = 63;
*/
Error(63),
/**
* Event = 13;
*/
Event(13),
/**
*
* For Dart
*
*
* Extension = 84;
*/
Extension(84),
/**
*
* For Alloy
*
*
* Fact = 14;
*/
Fact(14),
/**
* Field = 15;
*/
Field(15),
/**
* File = 16;
*/
File(16),
/**
* Function = 17;
*/
Function(17),
/**
*
* For 'get' in Swift, 'attr_reader' in Ruby
*
*
* Getter = 18;
*/
Getter(18),
/**
*
* For Raku
*
*
* Grammar = 19;
*/
Grammar(19),
/**
*
* For Purescript and Lean
*
*
* Instance = 20;
*/
Instance(20),
/**
* Interface = 21;
*/
Interface(21),
/**
* Key = 22;
*/
Key(22),
/**
*
* For Racket
*
*
* Lang = 23;
*/
Lang(23),
/**
*
* For Lean
*
*
* Lemma = 24;
*/
Lemma(24),
/**
*
* For solidity
*
*
* Library = 64;
*/
Library(64),
/**
* Macro = 25;
*/
Macro(25),
/**
* Method = 26;
*/
Method(26),
/**
*
* For Ruby
*
*
* MethodAlias = 74;
*/
MethodAlias(74),
/**
*
* Analogous to 'ThisParameter' and 'SelfParameter', but for languages
* like Go where the receiver doesn't have a conventional name.
*
*
* MethodReceiver = 27;
*/
MethodReceiver(27),
/**
*
* Analogous to 'AbstractMethod', for Go.
*
*
* MethodSpecification = 67;
*/
MethodSpecification(67),
/**
*
* For Protobuf
*
*
* Message = 28;
*/
Message(28),
/**
*
* For Dart
*
*
* Mixin = 85;
*/
Mixin(85),
/**
*
* For Solidity
*
*
* Modifier = 65;
*/
Modifier(65),
/**
* Module = 29;
*/
Module(29),
/**
* Namespace = 30;
*/
Namespace(30),
/**
* Null = 31;
*/
Null(31),
/**
* Number = 32;
*/
Number(32),
/**
* Object = 33;
*/
Object(33),
/**
* Operator = 34;
*/
Operator(34),
/**
* Package = 35;
*/
Package(35),
/**
* PackageObject = 36;
*/
PackageObject(36),
/**
* Parameter = 37;
*/
Parameter(37),
/**
* ParameterLabel = 38;
*/
ParameterLabel(38),
/**
*
* For Haskell's PatternSynonyms
*
*
* Pattern = 39;
*/
Pattern(39),
/**
*
* For Alloy
*
*
* Predicate = 40;
*/
Predicate(40),
/**
* Property = 41;
*/
Property(41),
/**
*
* Analogous to 'Trait' and 'TypeClass', for Swift and Objective-C
*
*
* Protocol = 42;
*/
Protocol(42),
/**
*
* Analogous to 'AbstractMethod', for Swift and Objective-C.
*
*
* ProtocolMethod = 68;
*/
ProtocolMethod(68),
/**
*
* Analogous to 'AbstractMethod', for C++.
*
*
* PureVirtualMethod = 69;
*/
PureVirtualMethod(69),
/**
*
* For Haskell
*
*
* Quasiquoter = 43;
*/
Quasiquoter(43),
/**
*
* 'self' in Python, Rust, Swift etc.
*
*
* SelfParameter = 44;
*/
SelfParameter(44),
/**
*
* For 'set' in Swift, 'attr_writer' in Ruby
*
*
* Setter = 45;
*/
Setter(45),
/**
*
* For Alloy, analogous to 'Struct'.
*
*
* Signature = 46;
*/
Signature(46),
/**
*
* For Ruby
*
*
* SingletonClass = 75;
*/
SingletonClass(75),
/**
*
* Analogous to 'StaticMethod', for Ruby.
*
*
* SingletonMethod = 76;
*/
SingletonMethod(76),
/**
*
* Analogous to 'StaticField', for C++
*
*
* StaticDataMember = 77;
*/
StaticDataMember(77),
/**
*
* For C#
*
*
* StaticEvent = 78;
*/
StaticEvent(78),
/**
*
* For C#
*
*
* StaticField = 79;
*/
StaticField(79),
/**
*
* For Java, C#, C++ etc.
*
*
* StaticMethod = 80;
*/
StaticMethod(80),
/**
*
* For C#, TypeScript etc.
*
*
* StaticProperty = 81;
*/
StaticProperty(81),
/**
*
* For C, C++
*
*
* StaticVariable = 82;
*/
StaticVariable(82),
/**
* String = 48;
*/
String(48),
/**
* Struct = 49;
*/
Struct(49),
/**
*
* For Swift
*
*
* Subscript = 47;
*/
Subscript(47),
/**
*
* For Lean
*
*
* Tactic = 50;
*/
Tactic(50),
/**
*
* For Lean
*
*
* Theorem = 51;
*/
Theorem(51),
/**
*
* Method receiver for languages
* 'this' in JavaScript, C++, Java etc.
*
*
* ThisParameter = 52;
*/
ThisParameter(52),
/**
*
* Analogous to 'Protocol' and 'TypeClass', for Rust, Scala etc.
*
*
* Trait = 53;
*/
Trait(53),
/**
*
* Analogous to 'AbstractMethod', for Rust, Scala etc.
*
*
* TraitMethod = 70;
*/
TraitMethod(70),
/**
*
* Data type definition for languages like OCaml which use `type`
* rather than separate keywords like `struct` and `enum`.
*
*
* Type = 54;
*/
Type(54),
/**
* TypeAlias = 55;
*/
TypeAlias(55),
/**
*
* Analogous to 'Trait' and 'Protocol', for Haskell, Purescript etc.
*
*
* TypeClass = 56;
*/
TypeClass(56),
/**
*
* Analogous to 'AbstractMethod', for Haskell, Purescript etc.
*
*
* TypeClassMethod = 71;
*/
TypeClassMethod(71),
/**
*
* For Haskell
*
*
* TypeFamily = 57;
*/
TypeFamily(57),
/**
* TypeParameter = 58;
*/
TypeParameter(58),
/**
*
* For C, C++, Capn Proto
*
*
* Union = 59;
*/
Union(59),
/**
* Value = 60;
*/
Value(60),
/**
*
* Next = 87;
* Feel free to open a PR proposing new language-specific kinds.
*
*
* Variable = 61;
*/
Variable(61),
UNRECOGNIZED(-1),
;
/**
* UnspecifiedKind = 0;
*/
public static final int UnspecifiedKind_VALUE = 0;
/**
*
* A method which may or may not have a body. For Java, Kotlin etc.
*
*
* AbstractMethod = 66;
*/
public static final int AbstractMethod_VALUE = 66;
/**
*
* For Ruby's attr_accessor
*
*
* Accessor = 72;
*/
public static final int Accessor_VALUE = 72;
/**
* Array = 1;
*/
public static final int Array_VALUE = 1;
/**
*
* For Alloy
*
*
* Assertion = 2;
*/
public static final int Assertion_VALUE = 2;
/**
* AssociatedType = 3;
*/
public static final int AssociatedType_VALUE = 3;
/**
*
* For C++
*
*
* Attribute = 4;
*/
public static final int Attribute_VALUE = 4;
/**
*
* For Lean
*
*
* Axiom = 5;
*/
public static final int Axiom_VALUE = 5;
/**
* Boolean = 6;
*/
public static final int Boolean_VALUE = 6;
/**
* Class = 7;
*/
public static final int Class_VALUE = 7;
/**
*
* For C++
*
*
* Concept = 86;
*/
public static final int Concept_VALUE = 86;
/**
* Constant = 8;
*/
public static final int Constant_VALUE = 8;
/**
* Constructor = 9;
*/
public static final int Constructor_VALUE = 9;
/**
*
* For Solidity
*
*
* Contract = 62;
*/
public static final int Contract_VALUE = 62;
/**
*
* For Haskell
*
*
* DataFamily = 10;
*/
public static final int DataFamily_VALUE = 10;
/**
*
* For C# and F#
*
*
* Delegate = 73;
*/
public static final int Delegate_VALUE = 73;
/**
* Enum = 11;
*/
public static final int Enum_VALUE = 11;
/**
* EnumMember = 12;
*/
public static final int EnumMember_VALUE = 12;
/**
* Error = 63;
*/
public static final int Error_VALUE = 63;
/**
* Event = 13;
*/
public static final int Event_VALUE = 13;
/**
*
* For Dart
*
*
* Extension = 84;
*/
public static final int Extension_VALUE = 84;
/**
*
* For Alloy
*
*
* Fact = 14;
*/
public static final int Fact_VALUE = 14;
/**
* Field = 15;
*/
public static final int Field_VALUE = 15;
/**
* File = 16;
*/
public static final int File_VALUE = 16;
/**
* Function = 17;
*/
public static final int Function_VALUE = 17;
/**
*
* For 'get' in Swift, 'attr_reader' in Ruby
*
*
* Getter = 18;
*/
public static final int Getter_VALUE = 18;
/**
*
* For Raku
*
*
* Grammar = 19;
*/
public static final int Grammar_VALUE = 19;
/**
*
* For Purescript and Lean
*
*
* Instance = 20;
*/
public static final int Instance_VALUE = 20;
/**
* Interface = 21;
*/
public static final int Interface_VALUE = 21;
/**
* Key = 22;
*/
public static final int Key_VALUE = 22;
/**
*
* For Racket
*
*
* Lang = 23;
*/
public static final int Lang_VALUE = 23;
/**
*
* For Lean
*
*
* Lemma = 24;
*/
public static final int Lemma_VALUE = 24;
/**
*
* For solidity
*
*
* Library = 64;
*/
public static final int Library_VALUE = 64;
/**
* Macro = 25;
*/
public static final int Macro_VALUE = 25;
/**
* Method = 26;
*/
public static final int Method_VALUE = 26;
/**
*
* For Ruby
*
*
* MethodAlias = 74;
*/
public static final int MethodAlias_VALUE = 74;
/**
*
* Analogous to 'ThisParameter' and 'SelfParameter', but for languages
* like Go where the receiver doesn't have a conventional name.
*
*
* MethodReceiver = 27;
*/
public static final int MethodReceiver_VALUE = 27;
/**
*
* Analogous to 'AbstractMethod', for Go.
*
*
* MethodSpecification = 67;
*/
public static final int MethodSpecification_VALUE = 67;
/**
*
* For Protobuf
*
*
* Message = 28;
*/
public static final int Message_VALUE = 28;
/**
*
* For Dart
*
*
* Mixin = 85;
*/
public static final int Mixin_VALUE = 85;
/**
*
* For Solidity
*
*
* Modifier = 65;
*/
public static final int Modifier_VALUE = 65;
/**
* Module = 29;
*/
public static final int Module_VALUE = 29;
/**
* Namespace = 30;
*/
public static final int Namespace_VALUE = 30;
/**
* Null = 31;
*/
public static final int Null_VALUE = 31;
/**
* Number = 32;
*/
public static final int Number_VALUE = 32;
/**
* Object = 33;
*/
public static final int Object_VALUE = 33;
/**
* Operator = 34;
*/
public static final int Operator_VALUE = 34;
/**
* Package = 35;
*/
public static final int Package_VALUE = 35;
/**
* PackageObject = 36;
*/
public static final int PackageObject_VALUE = 36;
/**
* Parameter = 37;
*/
public static final int Parameter_VALUE = 37;
/**
* ParameterLabel = 38;
*/
public static final int ParameterLabel_VALUE = 38;
/**
*
* For Haskell's PatternSynonyms
*
*
* Pattern = 39;
*/
public static final int Pattern_VALUE = 39;
/**
*
* For Alloy
*
*
* Predicate = 40;
*/
public static final int Predicate_VALUE = 40;
/**
* Property = 41;
*/
public static final int Property_VALUE = 41;
/**
*
* Analogous to 'Trait' and 'TypeClass', for Swift and Objective-C
*
*
* Protocol = 42;
*/
public static final int Protocol_VALUE = 42;
/**
*
* Analogous to 'AbstractMethod', for Swift and Objective-C.
*
*
* ProtocolMethod = 68;
*/
public static final int ProtocolMethod_VALUE = 68;
/**
*
* Analogous to 'AbstractMethod', for C++.
*
*
* PureVirtualMethod = 69;
*/
public static final int PureVirtualMethod_VALUE = 69;
/**
*
* For Haskell
*
*
* Quasiquoter = 43;
*/
public static final int Quasiquoter_VALUE = 43;
/**
*
* 'self' in Python, Rust, Swift etc.
*
*
* SelfParameter = 44;
*/
public static final int SelfParameter_VALUE = 44;
/**
*
* For 'set' in Swift, 'attr_writer' in Ruby
*
*
* Setter = 45;
*/
public static final int Setter_VALUE = 45;
/**
*
* For Alloy, analogous to 'Struct'.
*
*
* Signature = 46;
*/
public static final int Signature_VALUE = 46;
/**
*
* For Ruby
*
*
* SingletonClass = 75;
*/
public static final int SingletonClass_VALUE = 75;
/**
*
* Analogous to 'StaticMethod', for Ruby.
*
*
* SingletonMethod = 76;
*/
public static final int SingletonMethod_VALUE = 76;
/**
*
* Analogous to 'StaticField', for C++
*
*
* StaticDataMember = 77;
*/
public static final int StaticDataMember_VALUE = 77;
/**
*
* For C#
*
*
* StaticEvent = 78;
*/
public static final int StaticEvent_VALUE = 78;
/**
*
* For C#
*
*
* StaticField = 79;
*/
public static final int StaticField_VALUE = 79;
/**
*
* For Java, C#, C++ etc.
*
*
* StaticMethod = 80;
*/
public static final int StaticMethod_VALUE = 80;
/**
*
* For C#, TypeScript etc.
*
*
* StaticProperty = 81;
*/
public static final int StaticProperty_VALUE = 81;
/**
*
* For C, C++
*
*
* StaticVariable = 82;
*/
public static final int StaticVariable_VALUE = 82;
/**
* String = 48;
*/
public static final int String_VALUE = 48;
/**
* Struct = 49;
*/
public static final int Struct_VALUE = 49;
/**
*
* For Swift
*
*
* Subscript = 47;
*/
public static final int Subscript_VALUE = 47;
/**
*
* For Lean
*
*
* Tactic = 50;
*/
public static final int Tactic_VALUE = 50;
/**
*
* For Lean
*
*
* Theorem = 51;
*/
public static final int Theorem_VALUE = 51;
/**
*
* Method receiver for languages
* 'this' in JavaScript, C++, Java etc.
*
*
* ThisParameter = 52;
*/
public static final int ThisParameter_VALUE = 52;
/**
*
* Analogous to 'Protocol' and 'TypeClass', for Rust, Scala etc.
*
*
* Trait = 53;
*/
public static final int Trait_VALUE = 53;
/**
*
* Analogous to 'AbstractMethod', for Rust, Scala etc.
*
*
* TraitMethod = 70;
*/
public static final int TraitMethod_VALUE = 70;
/**
*
* Data type definition for languages like OCaml which use `type`
* rather than separate keywords like `struct` and `enum`.
*
*
* Type = 54;
*/
public static final int Type_VALUE = 54;
/**
* TypeAlias = 55;
*/
public static final int TypeAlias_VALUE = 55;
/**
*
* Analogous to 'Trait' and 'Protocol', for Haskell, Purescript etc.
*
*
* TypeClass = 56;
*/
public static final int TypeClass_VALUE = 56;
/**
*
* Analogous to 'AbstractMethod', for Haskell, Purescript etc.
*
*
* TypeClassMethod = 71;
*/
public static final int TypeClassMethod_VALUE = 71;
/**
*
* For Haskell
*
*
* TypeFamily = 57;
*/
public static final int TypeFamily_VALUE = 57;
/**
* TypeParameter = 58;
*/
public static final int TypeParameter_VALUE = 58;
/**
*
* For C, C++, Capn Proto
*
*
* Union = 59;
*/
public static final int Union_VALUE = 59;
/**
* Value = 60;
*/
public static final int Value_VALUE = 60;
/**
*
* Next = 87;
* Feel free to open a PR proposing new language-specific kinds.
*
*
* Variable = 61;
*/
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
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
*
*
* string symbol = 1;
* @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;
}
}
/**
*
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
*
*
* string symbol = 1;
* @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_;
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @return A list containing the documentation.
*/
public com.google.protobuf.ProtocolStringList
getDocumentationList() {
return documentation_;
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @return The count of documentation.
*/
public int getDocumentationCount() {
return documentation_.size();
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @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);
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @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
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
@java.lang.Override
public java.util.List
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
@java.lang.Override
public java.util.List extends scip.Scip.RelationshipOrBuilder>
getRelationshipsOrBuilderList() {
return relationships_;
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
@java.lang.Override
public int getRelationshipsCount() {
return relationships_.size();
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
@java.lang.Override
public scip.Scip.Relationship getRelationships(int index) {
return relationships_.get(index);
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
@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_;
/**
*
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
*
*
* .scip.SymbolInformation.Kind kind = 5;
* @return The enum numeric value on the wire for kind.
*/
@java.lang.Override public int getKindValue() {
return kind_;
}
/**
*
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
*
*
* .scip.SymbolInformation.Kind kind = 5;
* @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_;
/**
*
* (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.
*
*
* string display_name = 6;
* @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;
}
}
/**
*
* (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.
*
*
* string display_name = 6;
* @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_;
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
* @return Whether the signatureDocumentation field is set.
*/
@java.lang.Override
public boolean hasSignatureDocumentation() {
return signatureDocumentation_ != null;
}
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
* @return The signatureDocumentation.
*/
@java.lang.Override
public scip.Scip.Document getSignatureDocumentation() {
return signatureDocumentation_ == null ? scip.Scip.Document.getDefaultInstance() : signatureDocumentation_;
}
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
*/
@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_;
/**
*
* (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.
*
*
* string enclosing_symbol = 8;
* @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;
}
}
/**
*
* (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.
*
*
* string enclosing_symbol = 8;
* @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;
}
/**
*
* SymbolInformation defines metadata about a symbol, such as the symbol's
* docstring or what package it's defined it.
*
*
* Protobuf type {@code scip.SymbolInformation}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
*
*
* string symbol = 1;
* @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;
}
}
/**
*
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
*
*
* string symbol = 1;
* @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;
}
}
/**
*
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
*
*
* string symbol = 1;
* @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;
}
/**
*
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
*
*
* string symbol = 1;
* @return This builder for chaining.
*/
public Builder clearSymbol() {
symbol_ = getDefaultInstance().getSymbol();
onChanged();
return this;
}
/**
*
* Identifier of this symbol, which can be referenced from `Occurence.symbol`.
* The string must be formatted according to the grammar in `Symbol`.
*
*
* string symbol = 1;
* @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;
}
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @return A list containing the documentation.
*/
public com.google.protobuf.ProtocolStringList
getDocumentationList() {
return documentation_.getUnmodifiableView();
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @return The count of documentation.
*/
public int getDocumentationCount() {
return documentation_.size();
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @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);
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @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);
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @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;
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @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;
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @param values The documentation to add.
* @return This builder for chaining.
*/
public Builder addAllDocumentation(
java.lang.Iterable
* (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.
*
*
* repeated string documentation = 3;
* @return This builder for chaining.
*/
public Builder clearDocumentation() {
documentation_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
return this;
}
/**
*
* (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.
*
*
* repeated string documentation = 3;
* @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
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public java.util.List
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public int getRelationshipsCount() {
if (relationshipsBuilder_ == null) {
return relationships_.size();
} else {
return relationshipsBuilder_.getCount();
}
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public scip.Scip.Relationship getRelationships(int index) {
if (relationshipsBuilder_ == null) {
return relationships_.get(index);
} else {
return relationshipsBuilder_.getMessage(index);
}
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
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;
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
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;
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
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;
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
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;
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public Builder addRelationships(
scip.Scip.Relationship.Builder builderForValue) {
if (relationshipsBuilder_ == null) {
ensureRelationshipsIsMutable();
relationships_.add(builderForValue.build());
onChanged();
} else {
relationshipsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
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;
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
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;
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public Builder clearRelationships() {
if (relationshipsBuilder_ == null) {
relationships_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000002);
onChanged();
} else {
relationshipsBuilder_.clear();
}
return this;
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public Builder removeRelationships(int index) {
if (relationshipsBuilder_ == null) {
ensureRelationshipsIsMutable();
relationships_.remove(index);
onChanged();
} else {
relationshipsBuilder_.remove(index);
}
return this;
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public scip.Scip.Relationship.Builder getRelationshipsBuilder(
int index) {
return getRelationshipsFieldBuilder().getBuilder(index);
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public scip.Scip.RelationshipOrBuilder getRelationshipsOrBuilder(
int index) {
if (relationshipsBuilder_ == null) {
return relationships_.get(index); } else {
return relationshipsBuilder_.getMessageOrBuilder(index);
}
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public java.util.List extends scip.Scip.RelationshipOrBuilder>
getRelationshipsOrBuilderList() {
if (relationshipsBuilder_ != null) {
return relationshipsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(relationships_);
}
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public scip.Scip.Relationship.Builder addRelationshipsBuilder() {
return getRelationshipsFieldBuilder().addBuilder(
scip.Scip.Relationship.getDefaultInstance());
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public scip.Scip.Relationship.Builder addRelationshipsBuilder(
int index) {
return getRelationshipsFieldBuilder().addBuilder(
index, scip.Scip.Relationship.getDefaultInstance());
}
/**
*
* (optional) Relationships to other symbols (e.g., implements, type definition).
*
*
* repeated .scip.Relationship relationships = 4;
*/
public java.util.List
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
*
*
* .scip.SymbolInformation.Kind kind = 5;
* @return The enum numeric value on the wire for kind.
*/
@java.lang.Override public int getKindValue() {
return kind_;
}
/**
*
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
*
*
* .scip.SymbolInformation.Kind kind = 5;
* @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;
}
/**
*
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
*
*
* .scip.SymbolInformation.Kind kind = 5;
* @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;
}
/**
*
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
*
*
* .scip.SymbolInformation.Kind kind = 5;
* @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;
}
/**
*
* The kind of this symbol. Use this field instead of
* `SymbolDescriptor.Suffix` to determine whether something is, for example, a
* class or a method.
*
*
* .scip.SymbolInformation.Kind kind = 5;
* @return This builder for chaining.
*/
public Builder clearKind() {
kind_ = 0;
onChanged();
return this;
}
private java.lang.Object displayName_ = "";
/**
*
* (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.
*
*
* string display_name = 6;
* @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;
}
}
/**
*
* (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.
*
*
* string display_name = 6;
* @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;
}
}
/**
*
* (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.
*
*
* string display_name = 6;
* @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;
}
/**
*
* (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.
*
*
* string display_name = 6;
* @return This builder for chaining.
*/
public Builder clearDisplayName() {
displayName_ = getDefaultInstance().getDisplayName();
onChanged();
return this;
}
/**
*
* (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.
*
*
* string display_name = 6;
* @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_;
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
* @return Whether the signatureDocumentation field is set.
*/
public boolean hasSignatureDocumentation() {
return signatureDocumentationBuilder_ != null || signatureDocumentation_ != null;
}
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
* @return The signatureDocumentation.
*/
public scip.Scip.Document getSignatureDocumentation() {
if (signatureDocumentationBuilder_ == null) {
return signatureDocumentation_ == null ? scip.Scip.Document.getDefaultInstance() : signatureDocumentation_;
} else {
return signatureDocumentationBuilder_.getMessage();
}
}
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
*/
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;
}
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
*/
public Builder setSignatureDocumentation(
scip.Scip.Document.Builder builderForValue) {
if (signatureDocumentationBuilder_ == null) {
signatureDocumentation_ = builderForValue.build();
onChanged();
} else {
signatureDocumentationBuilder_.setMessage(builderForValue.build());
}
return this;
}
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
*/
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;
}
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
*/
public Builder clearSignatureDocumentation() {
if (signatureDocumentationBuilder_ == null) {
signatureDocumentation_ = null;
onChanged();
} else {
signatureDocumentation_ = null;
signatureDocumentationBuilder_ = null;
}
return this;
}
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
*/
public scip.Scip.Document.Builder getSignatureDocumentationBuilder() {
onChanged();
return getSignatureDocumentationFieldBuilder().getBuilder();
}
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
*/
public scip.Scip.DocumentOrBuilder getSignatureDocumentationOrBuilder() {
if (signatureDocumentationBuilder_ != null) {
return signatureDocumentationBuilder_.getMessageOrBuilder();
} else {
return signatureDocumentation_ == null ?
scip.Scip.Document.getDefaultInstance() : signatureDocumentation_;
}
}
/**
*
* (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.
*
*
* .scip.Document signature_documentation = 7;
*/
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_ = "";
/**
*
* (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.
*
*
* string enclosing_symbol = 8;
* @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;
}
}
/**
*
* (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.
*
*
* string enclosing_symbol = 8;
* @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;
}
}
/**
*
* (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.
*
*
* string enclosing_symbol = 8;
* @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;
}
/**
*
* (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.
*
*
* string enclosing_symbol = 8;
* @return This builder for chaining.
*/
public Builder clearEnclosingSymbol() {
enclosingSymbol_ = getDefaultInstance().getEnclosingSymbol();
onChanged();
return this;
}
/**
*
* (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.
*
*
* string enclosing_symbol = 8;
* @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.Parserstring symbol = 1;
* @return The symbol.
*/
java.lang.String getSymbol();
/**
* string symbol = 1;
* @return The bytes for symbol.
*/
com.google.protobuf.ByteString
getSymbolBytes();
/**
*
* 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.
*
*
* bool is_reference = 2;
* @return The isReference.
*/
boolean getIsReference();
/**
*
* 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.
*
*
* bool is_implementation = 3;
* @return The isImplementation.
*/
boolean getIsImplementation();
/**
*
* Similar to `references_symbols` but for "Go to type definition".
*
*
* bool is_type_definition = 4;
* @return The isTypeDefinition.
*/
boolean getIsTypeDefinition();
/**
*
* 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.
*
*
* bool is_definition = 5;
* @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_;
/**
* string symbol = 1;
* @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;
}
}
/**
* string symbol = 1;
* @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_;
/**
*
* 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.
*
*
* bool is_reference = 2;
* @return The isReference.
*/
@java.lang.Override
public boolean getIsReference() {
return isReference_;
}
public static final int IS_IMPLEMENTATION_FIELD_NUMBER = 3;
private boolean isImplementation_;
/**
*
* 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.
*
*
* bool is_implementation = 3;
* @return The isImplementation.
*/
@java.lang.Override
public boolean getIsImplementation() {
return isImplementation_;
}
public static final int IS_TYPE_DEFINITION_FIELD_NUMBER = 4;
private boolean isTypeDefinition_;
/**
*
* Similar to `references_symbols` but for "Go to type definition".
*
*
* bool is_type_definition = 4;
* @return The isTypeDefinition.
*/
@java.lang.Override
public boolean getIsTypeDefinition() {
return isTypeDefinition_;
}
public static final int IS_DEFINITION_FIELD_NUMBER = 5;
private boolean isDefinition_;
/**
*
* 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.
*
*
* bool is_definition = 5;
* @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.Builderstring symbol = 1;
* @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;
}
}
/**
* string symbol = 1;
* @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;
}
}
/**
* string symbol = 1;
* @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;
}
/**
* string symbol = 1;
* @return This builder for chaining.
*/
public Builder clearSymbol() {
symbol_ = getDefaultInstance().getSymbol();
onChanged();
return this;
}
/**
* string symbol = 1;
* @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_ ;
/**
*
* 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.
*
*
* bool is_reference = 2;
* @return The isReference.
*/
@java.lang.Override
public boolean getIsReference() {
return isReference_;
}
/**
*
* 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.
*
*
* bool is_reference = 2;
* @param value The isReference to set.
* @return This builder for chaining.
*/
public Builder setIsReference(boolean value) {
isReference_ = value;
onChanged();
return this;
}
/**
*
* 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.
*
*
* bool is_reference = 2;
* @return This builder for chaining.
*/
public Builder clearIsReference() {
isReference_ = false;
onChanged();
return this;
}
private boolean isImplementation_ ;
/**
*
* 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.
*
*
* bool is_implementation = 3;
* @return The isImplementation.
*/
@java.lang.Override
public boolean getIsImplementation() {
return isImplementation_;
}
/**
*
* 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.
*
*
* bool is_implementation = 3;
* @param value The isImplementation to set.
* @return This builder for chaining.
*/
public Builder setIsImplementation(boolean value) {
isImplementation_ = value;
onChanged();
return this;
}
/**
*
* 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.
*
*
* bool is_implementation = 3;
* @return This builder for chaining.
*/
public Builder clearIsImplementation() {
isImplementation_ = false;
onChanged();
return this;
}
private boolean isTypeDefinition_ ;
/**
*
* Similar to `references_symbols` but for "Go to type definition".
*
*
* bool is_type_definition = 4;
* @return The isTypeDefinition.
*/
@java.lang.Override
public boolean getIsTypeDefinition() {
return isTypeDefinition_;
}
/**
*
* Similar to `references_symbols` but for "Go to type definition".
*
*
* bool is_type_definition = 4;
* @param value The isTypeDefinition to set.
* @return This builder for chaining.
*/
public Builder setIsTypeDefinition(boolean value) {
isTypeDefinition_ = value;
onChanged();
return this;
}
/**
*
* Similar to `references_symbols` but for "Go to type definition".
*
*
* bool is_type_definition = 4;
* @return This builder for chaining.
*/
public Builder clearIsTypeDefinition() {
isTypeDefinition_ = false;
onChanged();
return this;
}
private boolean isDefinition_ ;
/**
*
* 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.
*
*
* bool is_definition = 5;
* @return The isDefinition.
*/
@java.lang.Override
public boolean getIsDefinition() {
return isDefinition_;
}
/**
*
* 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.
*
*
* bool is_definition = 5;
* @param value The isDefinition to set.
* @return This builder for chaining.
*/
public Builder setIsDefinition(boolean value) {
isDefinition_ = value;
onChanged();
return this;
}
/**
*
* 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.
*
*
* bool is_definition = 5;
* @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
* 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.
*
*
* repeated int32 range = 1;
* @return A list containing the range.
*/
java.util.List
* 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.
*
*
* repeated int32 range = 1;
* @return The count of range.
*/
int getRangeCount();
/**
*
* 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.
*
*
* repeated int32 range = 1;
* @param index The index of the element to return.
* @return The range at the given index.
*/
int getRange(int index);
/**
*
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
*
*
* string symbol = 2;
* @return The symbol.
*/
java.lang.String getSymbol();
/**
*
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
*
*
* string symbol = 2;
* @return The bytes for symbol.
*/
com.google.protobuf.ByteString
getSymbolBytes();
/**
*
* (optional) Bitset containing `SymbolRole`s in this occurrence.
* See `SymbolRole`'s documentation for how to read and write this field.
*
*
* int32 symbol_roles = 3;
* @return The symbolRoles.
*/
int getSymbolRoles();
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @return A list containing the overrideDocumentation.
*/
java.util.List
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @return The count of overrideDocumentation.
*/
int getOverrideDocumentationCount();
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @param index The index of the element to return.
* @return The overrideDocumentation at the given index.
*/
java.lang.String getOverrideDocumentation(int index);
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @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);
/**
*
* (optional) What syntax highlighting class should be used for this range?
*
*
* .scip.SyntaxKind syntax_kind = 5;
* @return The enum numeric value on the wire for syntaxKind.
*/
int getSyntaxKindValue();
/**
*
* (optional) What syntax highlighting class should be used for this range?
*
*
* .scip.SyntaxKind syntax_kind = 5;
* @return The syntaxKind.
*/
scip.Scip.SyntaxKind getSyntaxKind();
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
java.util.List
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
scip.Scip.Diagnostic getDiagnostics(int index);
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
int getDiagnosticsCount();
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
java.util.List extends scip.Scip.DiagnosticOrBuilder>
getDiagnosticsOrBuilderList();
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
scip.Scip.DiagnosticOrBuilder getDiagnosticsOrBuilder(
int index);
/**
*
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @return A list containing the enclosingRange.
*/
java.util.List
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @return The count of enclosingRange.
*/
int getEnclosingRangeCount();
/**
*
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @param index The index of the element to return.
* @return The enclosingRange at the given index.
*/
int getEnclosingRange(int index);
}
/**
* * 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. ** * 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
* 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.
*
*
* repeated int32 range = 1;
* @return A list containing the range.
*/
@java.lang.Override
public java.util.List
* 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.
*
*
* repeated int32 range = 1;
* @return The count of range.
*/
public int getRangeCount() {
return range_.size();
}
/**
*
* 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.
*
*
* repeated int32 range = 1;
* @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_;
/**
*
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
*
*
* string symbol = 2;
* @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;
}
}
/**
*
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
*
*
* string symbol = 2;
* @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_;
/**
*
* (optional) Bitset containing `SymbolRole`s in this occurrence.
* See `SymbolRole`'s documentation for how to read and write this field.
*
*
* int32 symbol_roles = 3;
* @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_;
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @return A list containing the overrideDocumentation.
*/
public com.google.protobuf.ProtocolStringList
getOverrideDocumentationList() {
return overrideDocumentation_;
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @return The count of overrideDocumentation.
*/
public int getOverrideDocumentationCount() {
return overrideDocumentation_.size();
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @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);
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @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_;
/**
*
* (optional) What syntax highlighting class should be used for this range?
*
*
* .scip.SyntaxKind syntax_kind = 5;
* @return The enum numeric value on the wire for syntaxKind.
*/
@java.lang.Override public int getSyntaxKindValue() {
return syntaxKind_;
}
/**
*
* (optional) What syntax highlighting class should be used for this range?
*
*
* .scip.SyntaxKind syntax_kind = 5;
* @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
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
@java.lang.Override
public java.util.List
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
@java.lang.Override
public java.util.List extends scip.Scip.DiagnosticOrBuilder>
getDiagnosticsOrBuilderList() {
return diagnostics_;
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
@java.lang.Override
public int getDiagnosticsCount() {
return diagnostics_.size();
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
@java.lang.Override
public scip.Scip.Diagnostic getDiagnostics(int index) {
return diagnostics_.get(index);
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
@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_;
/**
*
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @return A list containing the enclosingRange.
*/
@java.lang.Override
public java.util.List
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @return The count of enclosingRange.
*/
public int getEnclosingRangeCount() {
return enclosingRange_.size();
}
/**
*
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @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;
}
/**
*
* 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.
*
*
* Protobuf type {@code scip.Occurrence}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder
* 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.
*
*
* repeated int32 range = 1;
* @return A list containing the range.
*/
public java.util.List
* 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.
*
*
* repeated int32 range = 1;
* @return The count of range.
*/
public int getRangeCount() {
return range_.size();
}
/**
*
* 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.
*
*
* repeated int32 range = 1;
* @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);
}
/**
*
* 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.
*
*
* repeated int32 range = 1;
* @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;
}
/**
*
* 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.
*
*
* repeated int32 range = 1;
* @param value The range to add.
* @return This builder for chaining.
*/
public Builder addRange(int value) {
ensureRangeIsMutable();
range_.addInt(value);
onChanged();
return this;
}
/**
*
* 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.
*
*
* repeated int32 range = 1;
* @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;
}
/**
*
* 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.
*
*
* repeated int32 range = 1;
* @return This builder for chaining.
*/
public Builder clearRange() {
range_ = emptyIntList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
return this;
}
private java.lang.Object symbol_ = "";
/**
*
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
*
*
* string symbol = 2;
* @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;
}
}
/**
*
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
*
*
* string symbol = 2;
* @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;
}
}
/**
*
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
*
*
* string symbol = 2;
* @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;
}
/**
*
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
*
*
* string symbol = 2;
* @return This builder for chaining.
*/
public Builder clearSymbol() {
symbol_ = getDefaultInstance().getSymbol();
onChanged();
return this;
}
/**
*
* (optional) The symbol that appears at this position. See
* `SymbolInformation.symbol` for how to format symbols as strings.
*
*
* string symbol = 2;
* @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_ ;
/**
*
* (optional) Bitset containing `SymbolRole`s in this occurrence.
* See `SymbolRole`'s documentation for how to read and write this field.
*
*
* int32 symbol_roles = 3;
* @return The symbolRoles.
*/
@java.lang.Override
public int getSymbolRoles() {
return symbolRoles_;
}
/**
*
* (optional) Bitset containing `SymbolRole`s in this occurrence.
* See `SymbolRole`'s documentation for how to read and write this field.
*
*
* int32 symbol_roles = 3;
* @param value The symbolRoles to set.
* @return This builder for chaining.
*/
public Builder setSymbolRoles(int value) {
symbolRoles_ = value;
onChanged();
return this;
}
/**
*
* (optional) Bitset containing `SymbolRole`s in this occurrence.
* See `SymbolRole`'s documentation for how to read and write this field.
*
*
* int32 symbol_roles = 3;
* @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;
}
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @return A list containing the overrideDocumentation.
*/
public com.google.protobuf.ProtocolStringList
getOverrideDocumentationList() {
return overrideDocumentation_.getUnmodifiableView();
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @return The count of overrideDocumentation.
*/
public int getOverrideDocumentationCount() {
return overrideDocumentation_.size();
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @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);
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @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);
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @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;
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @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;
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @param values The overrideDocumentation to add.
* @return This builder for chaining.
*/
public Builder addAllOverrideDocumentation(
java.lang.Iterable
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @return This builder for chaining.
*/
public Builder clearOverrideDocumentation() {
overrideDocumentation_ = com.google.protobuf.LazyStringArrayList.EMPTY;
bitField0_ = (bitField0_ & ~0x00000002);
onChanged();
return this;
}
/**
*
* (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<T>`) and at this
* occurrence we know the exact values (such as `List<String>`).
* This field can also be used for dynamically or gradually typed languages,
* which commonly allow for type-changing assignment.
*
*
* repeated string override_documentation = 4;
* @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;
/**
*
* (optional) What syntax highlighting class should be used for this range?
*
*
* .scip.SyntaxKind syntax_kind = 5;
* @return The enum numeric value on the wire for syntaxKind.
*/
@java.lang.Override public int getSyntaxKindValue() {
return syntaxKind_;
}
/**
*
* (optional) What syntax highlighting class should be used for this range?
*
*
* .scip.SyntaxKind syntax_kind = 5;
* @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;
}
/**
*
* (optional) What syntax highlighting class should be used for this range?
*
*
* .scip.SyntaxKind syntax_kind = 5;
* @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;
}
/**
*
* (optional) What syntax highlighting class should be used for this range?
*
*
* .scip.SyntaxKind syntax_kind = 5;
* @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;
}
/**
*
* (optional) What syntax highlighting class should be used for this range?
*
*
* .scip.SyntaxKind syntax_kind = 5;
* @return This builder for chaining.
*/
public Builder clearSyntaxKind() {
syntaxKind_ = 0;
onChanged();
return this;
}
private java.util.List
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public java.util.List
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public int getDiagnosticsCount() {
if (diagnosticsBuilder_ == null) {
return diagnostics_.size();
} else {
return diagnosticsBuilder_.getCount();
}
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public scip.Scip.Diagnostic getDiagnostics(int index) {
if (diagnosticsBuilder_ == null) {
return diagnostics_.get(index);
} else {
return diagnosticsBuilder_.getMessage(index);
}
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
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;
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
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;
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
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;
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
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;
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public Builder addDiagnostics(
scip.Scip.Diagnostic.Builder builderForValue) {
if (diagnosticsBuilder_ == null) {
ensureDiagnosticsIsMutable();
diagnostics_.add(builderForValue.build());
onChanged();
} else {
diagnosticsBuilder_.addMessage(builderForValue.build());
}
return this;
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
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;
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
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;
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public Builder clearDiagnostics() {
if (diagnosticsBuilder_ == null) {
diagnostics_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000004);
onChanged();
} else {
diagnosticsBuilder_.clear();
}
return this;
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public Builder removeDiagnostics(int index) {
if (diagnosticsBuilder_ == null) {
ensureDiagnosticsIsMutable();
diagnostics_.remove(index);
onChanged();
} else {
diagnosticsBuilder_.remove(index);
}
return this;
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public scip.Scip.Diagnostic.Builder getDiagnosticsBuilder(
int index) {
return getDiagnosticsFieldBuilder().getBuilder(index);
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public scip.Scip.DiagnosticOrBuilder getDiagnosticsOrBuilder(
int index) {
if (diagnosticsBuilder_ == null) {
return diagnostics_.get(index); } else {
return diagnosticsBuilder_.getMessageOrBuilder(index);
}
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public java.util.List extends scip.Scip.DiagnosticOrBuilder>
getDiagnosticsOrBuilderList() {
if (diagnosticsBuilder_ != null) {
return diagnosticsBuilder_.getMessageOrBuilderList();
} else {
return java.util.Collections.unmodifiableList(diagnostics_);
}
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public scip.Scip.Diagnostic.Builder addDiagnosticsBuilder() {
return getDiagnosticsFieldBuilder().addBuilder(
scip.Scip.Diagnostic.getDefaultInstance());
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public scip.Scip.Diagnostic.Builder addDiagnosticsBuilder(
int index) {
return getDiagnosticsFieldBuilder().addBuilder(
index, scip.Scip.Diagnostic.getDefaultInstance());
}
/**
*
* (optional) Diagnostics that have been reported for this specific range.
*
*
* repeated .scip.Diagnostic diagnostics = 6;
*/
public java.util.List
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @return A list containing the enclosingRange.
*/
public java.util.List
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @return The count of enclosingRange.
*/
public int getEnclosingRangeCount() {
return enclosingRange_.size();
}
/**
*
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @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);
}
/**
*
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @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;
}
/**
*
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @param value The enclosingRange to add.
* @return This builder for chaining.
*/
public Builder addEnclosingRange(int value) {
ensureEnclosingRangeIsMutable();
enclosingRange_.addInt(value);
onChanged();
return this;
}
/**
*
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @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;
}
/**
*
* (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
* /** Parses the string into something */
* ^ enclosing_range start --------------------------------------|
* function parse(input string): string { |
* ^^^^^ range |
* return input.slice(n) |
* } |
* ^ enclosing_range end <---------------------------------------|
* ```
* Any attributes/decorators/attached macros should also be part of the
* enclosing range.
* ```python
* @cache
* ^ enclosing_range start---------------------|
* def factorial(n): |
* return n * factorial(n-1) if n else 1 |
* < 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
* ```
*
*
* repeated int32 enclosing_range = 7;
* @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
* Should this diagnostic be reported as an error, warning, info, or hint?
*
*
* .scip.Severity severity = 1;
* @return The enum numeric value on the wire for severity.
*/
int getSeverityValue();
/**
*
* Should this diagnostic be reported as an error, warning, info, or hint?
*
*
* .scip.Severity severity = 1;
* @return The severity.
*/
scip.Scip.Severity getSeverity();
/**
*
* (optional) Code of this diagnostic, which might appear in the user interface.
*
*
* string code = 2;
* @return The code.
*/
java.lang.String getCode();
/**
*
* (optional) Code of this diagnostic, which might appear in the user interface.
*
*
* string code = 2;
* @return The bytes for code.
*/
com.google.protobuf.ByteString
getCodeBytes();
/**
*
* Message of this diagnostic.
*
*
* string message = 3;
* @return The message.
*/
java.lang.String getMessage();
/**
*
* Message of this diagnostic.
*
*
* string message = 3;
* @return The bytes for message.
*/
com.google.protobuf.ByteString
getMessageBytes();
/**
*
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
*
*
* string source = 4;
* @return The source.
*/
java.lang.String getSource();
/**
*
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
*
*
* string source = 4;
* @return The bytes for source.
*/
com.google.protobuf.ByteString
getSourceBytes();
/**
* repeated .scip.DiagnosticTag tags = 5;
* @return A list containing the tags.
*/
java.util.Listrepeated .scip.DiagnosticTag tags = 5;
* @return The count of tags.
*/
int getTagsCount();
/**
* repeated .scip.DiagnosticTag tags = 5;
* @param index The index of the element to return.
* @return The tags at the given index.
*/
scip.Scip.DiagnosticTag getTags(int index);
/**
* repeated .scip.DiagnosticTag tags = 5;
* @return A list containing the enum numeric values on the wire for tags.
*/
java.util.Listrepeated .scip.DiagnosticTag tags = 5;
* @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);
}
/**
* * Represents a diagnostic, such as a compiler error or warning, which should be * reported for a document. ** * 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
* Should this diagnostic be reported as an error, warning, info, or hint?
*
*
* .scip.Severity severity = 1;
* @return The enum numeric value on the wire for severity.
*/
@java.lang.Override public int getSeverityValue() {
return severity_;
}
/**
*
* Should this diagnostic be reported as an error, warning, info, or hint?
*
*
* .scip.Severity severity = 1;
* @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_;
/**
*
* (optional) Code of this diagnostic, which might appear in the user interface.
*
*
* string code = 2;
* @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;
}
}
/**
*
* (optional) Code of this diagnostic, which might appear in the user interface.
*
*
* string code = 2;
* @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_;
/**
*
* Message of this diagnostic.
*
*
* string message = 3;
* @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;
}
}
/**
*
* Message of this diagnostic.
*
*
* string message = 3;
* @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_;
/**
*
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
*
*
* string source = 4;
* @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;
}
}
/**
*
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
*
*
* string source = 4;
* @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.Listrepeated .scip.DiagnosticTag tags = 5;
* @return A list containing the tags.
*/
@java.lang.Override
public java.util.Listrepeated .scip.DiagnosticTag tags = 5;
* @return The count of tags.
*/
@java.lang.Override
public int getTagsCount() {
return tags_.size();
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @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));
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @return A list containing the enum numeric values on the wire for tags.
*/
@java.lang.Override
public java.util.Listrepeated .scip.DiagnosticTag tags = 5;
* @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;
}
/**
*
* Represents a diagnostic, such as a compiler error or warning, which should be
* reported for a document.
*
*
* Protobuf type {@code scip.Diagnostic}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder
* Should this diagnostic be reported as an error, warning, info, or hint?
*
*
* .scip.Severity severity = 1;
* @return The enum numeric value on the wire for severity.
*/
@java.lang.Override public int getSeverityValue() {
return severity_;
}
/**
*
* Should this diagnostic be reported as an error, warning, info, or hint?
*
*
* .scip.Severity severity = 1;
* @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;
}
/**
*
* Should this diagnostic be reported as an error, warning, info, or hint?
*
*
* .scip.Severity severity = 1;
* @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;
}
/**
*
* Should this diagnostic be reported as an error, warning, info, or hint?
*
*
* .scip.Severity severity = 1;
* @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;
}
/**
*
* Should this diagnostic be reported as an error, warning, info, or hint?
*
*
* .scip.Severity severity = 1;
* @return This builder for chaining.
*/
public Builder clearSeverity() {
severity_ = 0;
onChanged();
return this;
}
private java.lang.Object code_ = "";
/**
*
* (optional) Code of this diagnostic, which might appear in the user interface.
*
*
* string code = 2;
* @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;
}
}
/**
*
* (optional) Code of this diagnostic, which might appear in the user interface.
*
*
* string code = 2;
* @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;
}
}
/**
*
* (optional) Code of this diagnostic, which might appear in the user interface.
*
*
* string code = 2;
* @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;
}
/**
*
* (optional) Code of this diagnostic, which might appear in the user interface.
*
*
* string code = 2;
* @return This builder for chaining.
*/
public Builder clearCode() {
code_ = getDefaultInstance().getCode();
onChanged();
return this;
}
/**
*
* (optional) Code of this diagnostic, which might appear in the user interface.
*
*
* string code = 2;
* @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_ = "";
/**
*
* Message of this diagnostic.
*
*
* string message = 3;
* @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;
}
}
/**
*
* Message of this diagnostic.
*
*
* string message = 3;
* @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;
}
}
/**
*
* Message of this diagnostic.
*
*
* string message = 3;
* @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;
}
/**
*
* Message of this diagnostic.
*
*
* string message = 3;
* @return This builder for chaining.
*/
public Builder clearMessage() {
message_ = getDefaultInstance().getMessage();
onChanged();
return this;
}
/**
*
* Message of this diagnostic.
*
*
* string message = 3;
* @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_ = "";
/**
*
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
*
*
* string source = 4;
* @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;
}
}
/**
*
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
*
*
* string source = 4;
* @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;
}
}
/**
*
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
*
*
* string source = 4;
* @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;
}
/**
*
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
*
*
* string source = 4;
* @return This builder for chaining.
*/
public Builder clearSource() {
source_ = getDefaultInstance().getSource();
onChanged();
return this;
}
/**
*
* (optional) Human-readable string describing the source of this diagnostic, e.g.
* 'typescript' or 'super lint'.
*
*
* string source = 4;
* @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.Listrepeated .scip.DiagnosticTag tags = 5;
* @return A list containing the tags.
*/
public java.util.Listrepeated .scip.DiagnosticTag tags = 5;
* @return The count of tags.
*/
public int getTagsCount() {
return tags_.size();
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @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));
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @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;
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @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;
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @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;
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @return This builder for chaining.
*/
public Builder clearTags() {
tags_ = java.util.Collections.emptyList();
bitField0_ = (bitField0_ & ~0x00000001);
onChanged();
return this;
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @return A list containing the enum numeric values on the wire for tags.
*/
public java.util.Listrepeated .scip.DiagnosticTag tags = 5;
* @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);
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @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;
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @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;
}
/**
* repeated .scip.DiagnosticTag tags = 5;
* @param values The enum numeric values on the wire for tags to add.
* @return This builder for chaining.
*/
public Builder addAllTagsValue(
java.lang.Iterable