Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

…lines 1–28 unchanged (28 lines)
29import com.google.protobuf.DescriptorProtos.OneofOptions;
30import com.google.protobuf.DescriptorProtos.ServiceDescriptorProto;
31import com.google.protobuf.DescriptorProtos.ServiceOptions;
32import com.google.protobuf.JavaFeaturesProto.JavaFeatures;
33import java.lang.ref.ReferenceQueue;
34import java.lang.ref.WeakReference;
35import java.util.ArrayList;
36import java.util.Arrays;
37import java.util.Collections;
38import java.util.Comparator;
39import java.util.HashMap;
40import java.util.IdentityHashMap;
41import java.util.List;
…lines 42–95 unchanged (54 lines)
96 try {
97 ExtensionRegistry registry = ExtensionRegistry.newInstance();
98 registry.add(JavaFeaturesProto.java_);
99 setTestJavaEditionDefaults(
100 FeatureSetDefaults.parseFrom(
101 JavaEditionDefaults.PROTOBUF_INTERNAL_JAVA_EDITION_DEFAULTS.getBytes(
102 Internal.ISO_8859_1),
103 registry));
104 } catch (Exception e) {
105 throw new AssertionError(e);
106 }
107 }
108 }
…lines 109–466 unchanged (358 lines)
467 // file's FileDescriptor. The string literal contains only 8-bit
468 // characters, each one representing a byte of the FileDescriptorProto's
469 // serialized form. So, if we convert it to bytes in ISO-8859-1, we
470 // should get the original bytes that we want.
471 // Literal strings are limited to 64k, so it may be split into multiple strings.
472 if (strings.length == 1) {
473 return strings[0].getBytes(Internal.ISO_8859_1);
474 }
475 StringBuilder descriptorData = new StringBuilder();
476 for (String part : strings) {
477 descriptorData.append(part);
478 }
479 return descriptorData.toString().getBytes(Internal.ISO_8859_1);
480 }
481
482 private static FileDescriptor[] findDescriptors(
483 final Class<?> descriptorOuterClass,
484 final String[] dependencyClassNames,
485 final String[] dependencyFileNames) {
…lines 486–3765 unchanged (3280 lines)

After

…lines 1–28 unchanged (28 lines)
29import com.google.protobuf.DescriptorProtos.OneofOptions;
30import com.google.protobuf.DescriptorProtos.ServiceDescriptorProto;
31import com.google.protobuf.DescriptorProtos.ServiceOptions;
32import com.google.protobuf.JavaFeaturesProto.JavaFeatures;
33import java.lang.ref.ReferenceQueue;
34import java.lang.ref.WeakReference;
35import java.nio.charset.StandardCharsets;
36import java.util.ArrayList;
37import java.util.Arrays;
38import java.util.Collections;
39import java.util.Comparator;
40import java.util.HashMap;
41import java.util.IdentityHashMap;
…lines 42–96 unchanged (55 lines)
97 try {
98 ExtensionRegistry registry = ExtensionRegistry.newInstance();
99 registry.add(JavaFeaturesProto.java_);
100 setTestJavaEditionDefaults(
101 FeatureSetDefaults.parseFrom(
102 JavaEditionDefaults.PROTOBUF_INTERNAL_JAVA_EDITION_DEFAULTS.getBytes(
103 StandardCharsets.ISO_8859_1),
104 registry));
105 } catch (Exception e) {
106 throw new AssertionError(e);
107 }
108 }
109 }
…lines 110–467 unchanged (358 lines)
468 // file's FileDescriptor. The string literal contains only 8-bit
469 // characters, each one representing a byte of the FileDescriptorProto's
470 // serialized form. So, if we convert it to bytes in ISO-8859-1, we
471 // should get the original bytes that we want.
472 // Literal strings are limited to 64k, so it may be split into multiple strings.
473 if (strings.length == 1) {
474 return strings[0].getBytes(StandardCharsets.ISO_8859_1);
475 }
476 StringBuilder descriptorData = new StringBuilder();
477 for (String part : strings) {
478 descriptorData.append(part);
479 }
480 return descriptorData.toString().getBytes(StandardCharsets.ISO_8859_1);
481 }
482
483 private static FileDescriptor[] findDescriptors(
484 final Class<?> descriptorOuterClass,
485 final String[] dependencyClassNames,
486 final String[] dependencyFileNames) {
…lines 487–3766 unchanged (3280 lines)

Before

program
line_comment "// Protocol Buffers - Google's data interchange format"
line_comment "// Copyright 2008 Google Inc. All rights reserved."
line_comment "//"
line_comment "// Use of this source code is governed by a BSD-style"
line_comment "// license that can be found in the LICENSE file or at"
line_comment "// https://developers.google.com/open-source/licenses/bsd"
package_declaration
package "package"
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
; ";"
import_declaration
import "import"
static "static"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "Internal"
. "."
identifier "checkNotNull"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "DescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "Edition"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "EnumDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "EnumOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "EnumValueDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "EnumValueOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FeatureSet"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FeatureSetDefaults"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FeatureSetDefaults"
. "."
identifier "FeatureSetEditionDefault"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FieldDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FieldOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FileDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FileOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "MessageOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "MethodDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "MethodOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "OneofDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "OneofOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "ServiceDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "ServiceOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "JavaFeaturesProto"
. "."
identifier "JavaFeatures"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "lang"
. "."
identifier "ref"
. "."
identifier "ReferenceQueue"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "lang"
. "."
identifier "ref"
. "."
identifier "WeakReference"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "ArrayList"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Arrays"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Collections"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Comparator"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "HashMap"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "IdentityHashMap"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "List"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Locale"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Map"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Set"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "concurrent"
. "."
identifier "ConcurrentHashMap"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "function"
. "."
identifier "ToIntFunction"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "logging"
. "."
identifier "Logger"
; ";"
block_comment "/**\n * Contains a collection of classes which describe proto"...
class_declaration
modifiers
marker_annotation
@ "@"
identifier "CheckReturnValue"
public "public"
final "final"
class "class"
identifier "Descriptors"
class_body
{ "{"
field_declaration (+27 nodes collapsed)
field_declaration (+23 nodes collapsed)
field_declaration (+21 nodes collapsed)
field_declaration (+21 nodes collapsed)
field_declaration (+21 nodes collapsed)
field_declaration (+21 nodes collapsed)
field_declaration (+21 nodes collapsed)
field_declaration (+27 nodes collapsed)
field_declaration (+21 nodes collapsed)
block_comment "/** Sets the default feature mappings used during the build."...
method_declaration
modifiers
static "static"
void_type "void"
identifier "setTestJavaEditionDefaults"
formal_parameters
( "("
formal_parameter
type_identifier "FeatureSetDefaults"
identifier "defaults"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "javaEditionDefaults"
= "="
identifier "defaults"
; ";"
} "}"
block_comment "/** Gets the default feature mappings used during the build."...
method_declaration
modifiers
static "static"
type_identifier "FeatureSetDefaults"
identifier "getJavaEditionDefaults"
formal_parameters
( "("
) ")"
block
{ "{"
line_comment "// Force explicit initialization before synchronized block w"...
line_comment "// `JavaFeaturesProto.registerAllExtensions()` and `FeatureS"...
line_comment "// Otherwise, this can result in deadlock if another threads"...
line_comment "// implicit lock. This operation should be cheap if initiali"...
local_variable_declaration
type_identifier "Descriptor"
variable_declarator
identifier "unused1"
= "="
method_invocation
identifier "FeatureSetDefaults"
. "."
identifier "getDescriptor"
argument_list
( "("
) ")"
; ";"
local_variable_declaration
type_identifier "FileDescriptor"
variable_declarator
identifier "unused2"
= "="
method_invocation
identifier "JavaFeaturesProto"
. "."
identifier "getDescriptor"
argument_list
( "("
) ")"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "javaEditionDefaults"
== "=="
null_literal "null"
) ")"
block
{ "{"
synchronized_statement
synchronized "synchronized"
parenthesized_expression
( "("
class_literal
type_identifier "Descriptors"
. "."
class "class"
) ")"
block
{ "{"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "javaEditionDefaults"
== "=="
null_literal "null"
) ")"
block
{ "{"
try_statement
try "try"
block
{ "{"
local_variable_declaration
type_identifier "ExtensionRegistry"
variable_declarator
identifier "registry"
= "="
method_invocation
identifier "ExtensionRegistry"
. "."
identifier "newInstance"
argument_list
( "("
) ")"
; ";"
expression_statement
method_invocation
identifier "registry"
. "."
identifier "add"
argument_list
( "("
field_access
identifier "JavaFeaturesProto"
. "."
identifier "java_"
) ")"
; ";"
expression_statement
method_invocation
identifier "setTestJavaEditionDefaults"
argument_list
( "("
method_invocation
identifier "FeatureSetDefaults"
. "."
identifier "parseFrom"
argument_list
( "("
method_invocation
field_access
identifier "JavaEditionDefaults"
. "."
identifier "PROTOBUF_INTERNAL_JAVA_EDITION_DEFAULTS"
. "."
identifier "getBytes"
argument_list
( "("
field_access
identifier "Internal"
. "."
identifier "ISO_8859_1"
) ")"
, ","
identifier "registry"
) ")"
) ")"
; ";"
} "}"
catch_clause (+21 nodes collapsed)
} "}"
} "}"
} "}"
return_statement
return "return"
identifier "javaEditionDefaults"
; ";"
} "}"
method_declaration (+300 nodes collapsed)
method_declaration (+51 nodes collapsed)
block_comment "/**\n * Describes a {@code .proto} file, including everythi"...
class_declaration
modifiers
public "public"
static "static"
final "final"
class "class"
identifier "FileDescriptor"
superclass
extends "extends"
type_identifier "GenericDescriptor"
class_body
{ "{"
block_comment "/** Convert the descriptor to its protocol message represent"...
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "FileDescriptorProto"
identifier "toProto"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "proto"
; ";"
} "}"
block_comment "/** Get the file name. */"
method_declaration (+24 nodes collapsed)
block_comment "/** Returns this object. */"
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "FileDescriptor"
identifier "getFile"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
this "this"
; ";"
} "}"
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
type_identifier "GenericDescriptor"
identifier "getParent"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
null_literal "null"
; ";"
} "}"
method_declaration
modifiers
public "public"
boolean_type "boolean"
identifier "isPlaceholder"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "placeholder"
; ";"
} "}"
block_comment "/** Returns the same as getName(). */"
method_declaration (+24 nodes collapsed)
block_comment "/**\n * Get the proto package name. This is the package n"...
method_declaration (+21 nodes collapsed)
block_comment "/** Get the {@code FileOptions}, defined in {@code descripto"...
method_declaration (+124 nodes collapsed)
block_comment "/** Get a list of top-level message types declared in this f"...
method_declaration (+34 nodes collapsed)
method_declaration
modifiers
public "public"
integral_type
int "int"
identifier "getMessageTypeCount"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
field_access
identifier "messageTypes"
. "."
identifier "length"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
block_comment "/** Get a list of top-level enum types declared in this file"...
method_declaration (+34 nodes collapsed)
method_declaration
modifiers
public "public"
integral_type
int "int"
identifier "getEnumTypeCount"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
field_access
identifier "enumTypes"
. "."
identifier "length"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
block_comment "/** Get a list of top-level services declared in this file. "...
method_declaration (+34 nodes collapsed)
method_declaration
modifiers
public "public"
integral_type
int "int"
identifier "getServiceCount"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
field_access
identifier "services"
. "."
identifier "length"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
block_comment "/** Get a list of top-level extensions declared in this file"...
method_declaration (+34 nodes collapsed)
method_declaration
modifiers
public "public"
integral_type
int "int"
identifier "getExtensionCount"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
field_access
identifier "extensions"
. "."
identifier "length"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
block_comment "/** Get a list of this file's dependencies (imports). */"
method_declaration (+34 nodes collapsed)
block_comment "/** Get a list of this file's public dependencies (public im"...
method_declaration (+34 nodes collapsed)
block_comment "/** Get the edition of the .proto file. */"
method_declaration (+68 nodes collapsed)
method_declaration (+175 nodes collapsed)
block_comment "/**\n * Find a message type in the file by name. Does not"...
method_declaration (+139 nodes collapsed)
block_comment "/**\n * Find an enum type in the file by name. Does not f"...
method_declaration (+139 nodes collapsed)
block_comment "/**\n * Find a service type in the file by name.\n *\n "...
method_declaration (+139 nodes collapsed)
block_comment "/**\n * Find an extension in the file by name. Does not f"...
method_declaration (+137 nodes collapsed)
block_comment "/**\n * Construct a {@code FileDescriptor}.\n *\n *"...
method_declaration (+39 nodes collapsed)
block_comment "/**\n * Construct a {@code FileDescriptor}.\n *\n *"...
method_declaration (+45 nodes collapsed)
method_declaration (+113 nodes collapsed)
method_declaration
modifiers
private "private"
static "static"
array_type
integral_type
byte "byte"
dimensions
[ "["
] "]"
identifier "latin1Cat"
formal_parameters
( "("
formal_parameter
modifiers
final "final"
array_type
type_identifier "String"
dimensions
[ "["
] "]"
identifier "strings"
) ")"
block
{ "{"
line_comment "// Hack: We can't embed a raw byte array inside generated J"...
line_comment "// (at least, not efficiently), but we can embed Strings. "...
line_comment "// protocol compiler embeds the FileDescriptorProto as a g"...
line_comment "// string literal which is passed to this function to cons"...
line_comment "// file's FileDescriptor. The string literal contains onl"...
line_comment "// characters, each one representing a byte of the FileDes"...
line_comment "// serialized form. So, if we convert it to bytes in ISO-"...
line_comment "// should get the original bytes that we want."
line_comment "// Literal strings are limited to 64k, so it may be split in"...
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
field_access
identifier "strings"
. "."
identifier "length"
== "=="
decimal_integer_literal "1"
) ")"
block
{ "{"
return_statement
return "return"
method_invocation
array_access
identifier "strings"
[ "["
decimal_integer_literal "0"
] "]"
. "."
identifier "getBytes"
argument_list
( "("
field_access
identifier "Internal"
. "."
identifier "ISO_8859_1"
) ")"
; ";"
} "}"
local_variable_declaration
type_identifier "StringBuilder"
variable_declarator
identifier "descriptorData"
= "="
object_creation_expression
new "new"
type_identifier "StringBuilder"
argument_list
( "("
) ")"
; ";"
enhanced_for_statement (+21 nodes collapsed)
return_statement
return "return"
method_invocation
method_invocation
identifier "descriptorData"
. "."
identifier "toString"
argument_list
( "("
) ")"
. "."
identifier "getBytes"
argument_list
( "("
field_access
identifier "Internal"
. "."
identifier "ISO_8859_1"
) ")"
; ";"
} "}"
method_declaration (+218 nodes collapsed)
block_comment "/**\n * This method is for backward compatibility with ge"...
method_declaration (+221 nodes collapsed)
block_comment "/**\n * This method is to be called by generated code onl"...
method_declaration (+164 nodes collapsed)
block_comment "/**\n * This method is to be called by generated code onl"...
method_declaration (+84 nodes collapsed)
block_comment "/**\n * This method is to be called by generated code onl"...
method_declaration (+92 nodes collapsed)
block_comment "/**\n * This class should be used by generated code only."...
interface_declaration (+21 nodes collapsed)
field_declaration
modifiers
private "private"
type_identifier "FileDescriptorProto"
variable_declarator
identifier "proto"
; ";"
field_declaration
modifiers
private "private"
volatile "volatile"
type_identifier "FileOptions"
variable_declarator
identifier "options"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "Descriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "messageTypes"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "EnumDescriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "enumTypes"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "ServiceDescriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "services"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "FieldDescriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "extensions"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "FileDescriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "dependencies"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "FileDescriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "publicDependencies"
; ";"
field_declaration
modifiers
private "private"
final "final"
type_identifier "FileDescriptorTables"
variable_declarator
identifier "tables"
; ";"
field_declaration
modifiers
private "private"
final "final"
boolean_type "boolean"
variable_declarator
identifier "placeholder"
; ";"
field_declaration
modifiers
private "private"
volatile "volatile"
boolean_type "boolean"
variable_declarator
identifier "featuresResolved"
; ";"
constructor_declaration (+748 nodes collapsed)
block_comment "/** Create a placeholder FileDescriptor */"
constructor_declaration (+149 nodes collapsed)
block_comment "/** Create a placeholder FileDescriptor for a message Descri"...
constructor_declaration (+91 nodes collapsed)
block_comment "/** Create a placeholder FileDescriptor for an EnumDescripto"...
constructor_declaration (+93 nodes collapsed)
method_declaration (+66 nodes collapsed)
block_comment "/**\n * This method is to be called by generated code onl"...
method_declaration (+162 nodes collapsed)
method_declaration (+180 nodes collapsed)
block_comment "/** Look up and cross-link all field types, etc. */"
method_declaration (+80 nodes collapsed)
block_comment "/**\n * Replace our {@link FileDescriptorProto} with the "...
method_declaration (+291 nodes collapsed)
} "}"
line_comment "// ========================================================="...
block_comment "/** Describes a message type. */"
class_declaration (+3531 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/** Describes a field of a message type. */"
class_declaration (+6336 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/** Describes an enum type. */"
class_declaration (+1967 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/**\n * Describes one value within an enum type. Note that "...
class_declaration (+813 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/** Describes a service type. */"
class_declaration (+816 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/** Describes one method within a service type. */"
class_declaration (+803 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/**\n * @throws NullPointerException if both `file` and `pa"...
method_declaration (+103 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/**\n * All descriptors implement this to make it easier to"...
class_declaration (+718 nodes collapsed)
block_comment "/** Thrown when building descriptors fails because the sourc"...
class_declaration (+298 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/**\n * A private helper class which contains lookup tables"...
class_declaration (+2127 nodes collapsed)
block_comment "/** Describes a oneof of a message type. */"
class_declaration (+606 nodes collapsed)
method_declaration (+172 nodes collapsed)
} "}"

After

program
line_comment "// Protocol Buffers - Google's data interchange format"
line_comment "// Copyright 2008 Google Inc. All rights reserved."
line_comment "//"
line_comment "// Use of this source code is governed by a BSD-style"
line_comment "// license that can be found in the LICENSE file or at"
line_comment "// https://developers.google.com/open-source/licenses/bsd"
package_declaration
package "package"
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
; ";"
import_declaration
import "import"
static "static"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "Internal"
. "."
identifier "checkNotNull"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "DescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "Edition"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "EnumDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "EnumOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "EnumValueDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "EnumValueOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FeatureSet"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FeatureSetDefaults"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FeatureSetDefaults"
. "."
identifier "FeatureSetEditionDefault"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FieldDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FieldOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FileDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "FileOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "MessageOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "MethodDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "MethodOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "OneofDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "OneofOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "ServiceDescriptorProto"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "DescriptorProtos"
. "."
identifier "ServiceOptions"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "google"
. "."
identifier "protobuf"
. "."
identifier "JavaFeaturesProto"
. "."
identifier "JavaFeatures"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "lang"
. "."
identifier "ref"
. "."
identifier "ReferenceQueue"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "lang"
. "."
identifier "ref"
. "."
identifier "WeakReference"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "nio"
. "."
identifier "charset"
. "."
identifier "StandardCharsets"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "ArrayList"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Arrays"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Collections"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Comparator"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "HashMap"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "IdentityHashMap"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "List"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Locale"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Map"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "Set"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "concurrent"
. "."
identifier "ConcurrentHashMap"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "function"
. "."
identifier "ToIntFunction"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "logging"
. "."
identifier "Logger"
; ";"
block_comment "/**\n * Contains a collection of classes which describe proto"...
class_declaration
modifiers
marker_annotation
@ "@"
identifier "CheckReturnValue"
public "public"
final "final"
class "class"
identifier "Descriptors"
class_body
{ "{"
field_declaration (+27 nodes collapsed)
field_declaration (+23 nodes collapsed)
field_declaration (+21 nodes collapsed)
field_declaration (+21 nodes collapsed)
field_declaration (+21 nodes collapsed)
field_declaration (+21 nodes collapsed)
field_declaration (+21 nodes collapsed)
field_declaration (+27 nodes collapsed)
field_declaration (+21 nodes collapsed)
block_comment "/** Sets the default feature mappings used during the build."...
method_declaration
modifiers
static "static"
void_type "void"
identifier "setTestJavaEditionDefaults"
formal_parameters
( "("
formal_parameter
type_identifier "FeatureSetDefaults"
identifier "defaults"
) ")"
block
{ "{"
expression_statement
assignment_expression
identifier "javaEditionDefaults"
= "="
identifier "defaults"
; ";"
} "}"
block_comment "/** Gets the default feature mappings used during the build."...
method_declaration
modifiers
static "static"
type_identifier "FeatureSetDefaults"
identifier "getJavaEditionDefaults"
formal_parameters
( "("
) ")"
block
{ "{"
line_comment "// Force explicit initialization before synchronized block w"...
line_comment "// `JavaFeaturesProto.registerAllExtensions()` and `FeatureS"...
line_comment "// Otherwise, this can result in deadlock if another threads"...
line_comment "// implicit lock. This operation should be cheap if initiali"...
local_variable_declaration
type_identifier "Descriptor"
variable_declarator
identifier "unused1"
= "="
method_invocation
identifier "FeatureSetDefaults"
. "."
identifier "getDescriptor"
argument_list
( "("
) ")"
; ";"
local_variable_declaration
type_identifier "FileDescriptor"
variable_declarator
identifier "unused2"
= "="
method_invocation
identifier "JavaFeaturesProto"
. "."
identifier "getDescriptor"
argument_list
( "("
) ")"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "javaEditionDefaults"
== "=="
null_literal "null"
) ")"
block
{ "{"
synchronized_statement
synchronized "synchronized"
parenthesized_expression
( "("
class_literal
type_identifier "Descriptors"
. "."
class "class"
) ")"
block
{ "{"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "javaEditionDefaults"
== "=="
null_literal "null"
) ")"
block
{ "{"
try_statement
try "try"
block
{ "{"
local_variable_declaration
type_identifier "ExtensionRegistry"
variable_declarator
identifier "registry"
= "="
method_invocation
identifier "ExtensionRegistry"
. "."
identifier "newInstance"
argument_list
( "("
) ")"
; ";"
expression_statement
method_invocation
identifier "registry"
. "."
identifier "add"
argument_list
( "("
field_access
identifier "JavaFeaturesProto"
. "."
identifier "java_"
) ")"
; ";"
expression_statement
method_invocation
identifier "setTestJavaEditionDefaults"
argument_list
( "("
method_invocation
identifier "FeatureSetDefaults"
. "."
identifier "parseFrom"
argument_list
( "("
method_invocation
field_access
identifier "JavaEditionDefaults"
. "."
identifier "PROTOBUF_INTERNAL_JAVA_EDITION_DEFAULTS"
. "."
identifier "getBytes"
argument_list
( "("
field_access
identifier "StandardCharsets"
. "."
identifier "ISO_8859_1"
) ")"
, ","
identifier "registry"
) ")"
) ")"
; ";"
} "}"
catch_clause (+21 nodes collapsed)
} "}"
} "}"
} "}"
return_statement
return "return"
identifier "javaEditionDefaults"
; ";"
} "}"
method_declaration (+300 nodes collapsed)
method_declaration (+51 nodes collapsed)
block_comment "/**\n * Describes a {@code .proto} file, including everythi"...
class_declaration
modifiers
public "public"
static "static"
final "final"
class "class"
identifier "FileDescriptor"
superclass
extends "extends"
type_identifier "GenericDescriptor"
class_body
{ "{"
block_comment "/** Convert the descriptor to its protocol message represent"...
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "FileDescriptorProto"
identifier "toProto"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "proto"
; ";"
} "}"
block_comment "/** Get the file name. */"
method_declaration (+24 nodes collapsed)
block_comment "/** Returns this object. */"
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "FileDescriptor"
identifier "getFile"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
this "this"
; ";"
} "}"
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
type_identifier "GenericDescriptor"
identifier "getParent"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
null_literal "null"
; ";"
} "}"
method_declaration
modifiers
public "public"
boolean_type "boolean"
identifier "isPlaceholder"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "placeholder"
; ";"
} "}"
block_comment "/** Returns the same as getName(). */"
method_declaration (+24 nodes collapsed)
block_comment "/**\n * Get the proto package name. This is the package n"...
method_declaration (+21 nodes collapsed)
block_comment "/** Get the {@code FileOptions}, defined in {@code descripto"...
method_declaration (+124 nodes collapsed)
block_comment "/** Get a list of top-level message types declared in this f"...
method_declaration (+34 nodes collapsed)
method_declaration
modifiers
public "public"
integral_type
int "int"
identifier "getMessageTypeCount"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
field_access
identifier "messageTypes"
. "."
identifier "length"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
block_comment "/** Get a list of top-level enum types declared in this file"...
method_declaration (+34 nodes collapsed)
method_declaration
modifiers
public "public"
integral_type
int "int"
identifier "getEnumTypeCount"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
field_access
identifier "enumTypes"
. "."
identifier "length"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
block_comment "/** Get a list of top-level services declared in this file. "...
method_declaration (+34 nodes collapsed)
method_declaration
modifiers
public "public"
integral_type
int "int"
identifier "getServiceCount"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
field_access
identifier "services"
. "."
identifier "length"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
block_comment "/** Get a list of top-level extensions declared in this file"...
method_declaration (+34 nodes collapsed)
method_declaration
modifiers
public "public"
integral_type
int "int"
identifier "getExtensionCount"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
field_access
identifier "extensions"
. "."
identifier "length"
; ";"
} "}"
method_declaration (+23 nodes collapsed)
block_comment "/** Get a list of this file's dependencies (imports). */"
method_declaration (+34 nodes collapsed)
block_comment "/** Get a list of this file's public dependencies (public im"...
method_declaration (+34 nodes collapsed)
block_comment "/** Get the edition of the .proto file. */"
method_declaration (+68 nodes collapsed)
method_declaration (+175 nodes collapsed)
block_comment "/**\n * Find a message type in the file by name. Does not"...
method_declaration (+139 nodes collapsed)
block_comment "/**\n * Find an enum type in the file by name. Does not f"...
method_declaration (+139 nodes collapsed)
block_comment "/**\n * Find a service type in the file by name.\n *\n "...
method_declaration (+139 nodes collapsed)
block_comment "/**\n * Find an extension in the file by name. Does not f"...
method_declaration (+137 nodes collapsed)
block_comment "/**\n * Construct a {@code FileDescriptor}.\n *\n *"...
method_declaration (+39 nodes collapsed)
block_comment "/**\n * Construct a {@code FileDescriptor}.\n *\n *"...
method_declaration (+45 nodes collapsed)
method_declaration (+113 nodes collapsed)
method_declaration
modifiers
private "private"
static "static"
array_type
integral_type
byte "byte"
dimensions
[ "["
] "]"
identifier "latin1Cat"
formal_parameters
( "("
formal_parameter
modifiers
final "final"
array_type
type_identifier "String"
dimensions
[ "["
] "]"
identifier "strings"
) ")"
block
{ "{"
line_comment "// Hack: We can't embed a raw byte array inside generated J"...
line_comment "// (at least, not efficiently), but we can embed Strings. "...
line_comment "// protocol compiler embeds the FileDescriptorProto as a g"...
line_comment "// string literal which is passed to this function to cons"...
line_comment "// file's FileDescriptor. The string literal contains onl"...
line_comment "// characters, each one representing a byte of the FileDes"...
line_comment "// serialized form. So, if we convert it to bytes in ISO-"...
line_comment "// should get the original bytes that we want."
line_comment "// Literal strings are limited to 64k, so it may be split in"...
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
field_access
identifier "strings"
. "."
identifier "length"
== "=="
decimal_integer_literal "1"
) ")"
block
{ "{"
return_statement
return "return"
method_invocation
array_access
identifier "strings"
[ "["
decimal_integer_literal "0"
] "]"
. "."
identifier "getBytes"
argument_list
( "("
field_access
identifier "StandardCharsets"
. "."
identifier "ISO_8859_1"
) ")"
; ";"
} "}"
local_variable_declaration
type_identifier "StringBuilder"
variable_declarator
identifier "descriptorData"
= "="
object_creation_expression
new "new"
type_identifier "StringBuilder"
argument_list
( "("
) ")"
; ";"
enhanced_for_statement (+21 nodes collapsed)
return_statement
return "return"
method_invocation
method_invocation
identifier "descriptorData"
. "."
identifier "toString"
argument_list
( "("
) ")"
. "."
identifier "getBytes"
argument_list
( "("
field_access
identifier "StandardCharsets"
. "."
identifier "ISO_8859_1"
) ")"
; ";"
} "}"
method_declaration (+218 nodes collapsed)
block_comment "/**\n * This method is for backward compatibility with ge"...
method_declaration (+221 nodes collapsed)
block_comment "/**\n * This method is to be called by generated code onl"...
method_declaration (+164 nodes collapsed)
block_comment "/**\n * This method is to be called by generated code onl"...
method_declaration (+84 nodes collapsed)
block_comment "/**\n * This method is to be called by generated code onl"...
method_declaration (+92 nodes collapsed)
block_comment "/**\n * This class should be used by generated code only."...
interface_declaration (+21 nodes collapsed)
field_declaration
modifiers
private "private"
type_identifier "FileDescriptorProto"
variable_declarator
identifier "proto"
; ";"
field_declaration
modifiers
private "private"
volatile "volatile"
type_identifier "FileOptions"
variable_declarator
identifier "options"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "Descriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "messageTypes"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "EnumDescriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "enumTypes"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "ServiceDescriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "services"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "FieldDescriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "extensions"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "FileDescriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "dependencies"
; ";"
field_declaration
modifiers
private "private"
final "final"
array_type
type_identifier "FileDescriptor"
dimensions
[ "["
] "]"
variable_declarator
identifier "publicDependencies"
; ";"
field_declaration
modifiers
private "private"
final "final"
type_identifier "FileDescriptorTables"
variable_declarator
identifier "tables"
; ";"
field_declaration
modifiers
private "private"
final "final"
boolean_type "boolean"
variable_declarator
identifier "placeholder"
; ";"
field_declaration
modifiers
private "private"
volatile "volatile"
boolean_type "boolean"
variable_declarator
identifier "featuresResolved"
; ";"
constructor_declaration (+748 nodes collapsed)
block_comment "/** Create a placeholder FileDescriptor */"
constructor_declaration (+149 nodes collapsed)
block_comment "/** Create a placeholder FileDescriptor for a message Descri"...
constructor_declaration (+91 nodes collapsed)
block_comment "/** Create a placeholder FileDescriptor for an EnumDescripto"...
constructor_declaration (+93 nodes collapsed)
method_declaration (+66 nodes collapsed)
block_comment "/**\n * This method is to be called by generated code onl"...
method_declaration (+162 nodes collapsed)
method_declaration (+180 nodes collapsed)
block_comment "/** Look up and cross-link all field types, etc. */"
method_declaration (+80 nodes collapsed)
block_comment "/**\n * Replace our {@link FileDescriptorProto} with the "...
method_declaration (+291 nodes collapsed)
} "}"
line_comment "// ========================================================="...
block_comment "/** Describes a message type. */"
class_declaration (+3531 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/** Describes a field of a message type. */"
class_declaration (+6336 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/** Describes an enum type. */"
class_declaration (+1967 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/**\n * Describes one value within an enum type. Note that "...
class_declaration (+813 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/** Describes a service type. */"
class_declaration (+816 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/** Describes one method within a service type. */"
class_declaration (+803 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/**\n * @throws NullPointerException if both `file` and `pa"...
method_declaration (+103 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/**\n * All descriptors implement this to make it easier to"...
class_declaration (+718 nodes collapsed)
block_comment "/** Thrown when building descriptors fails because the sourc"...
class_declaration (+298 nodes collapsed)
line_comment "// ========================================================="...
block_comment "/**\n * A private helper class which contains lookup tables"...
class_declaration (+2127 nodes collapsed)
block_comment "/** Describes a oneof of a message type. */"
class_declaration (+606 nodes collapsed)
method_declaration (+172 nodes collapsed)
} "}"