85 lines
2.9 KiB
C
85 lines
2.9 KiB
C
|
// Protocol Buffers - Google's data interchange format
|
||
|
// Copyright 2008 Google Inc. All rights reserved.
|
||
|
//
|
||
|
// Use of this source code is governed by a BSD-style
|
||
|
// license that can be found in the LICENSE file or at
|
||
|
// https://developers.google.com/open-source/licenses/bsd
|
||
|
|
||
|
// Author: kenton@google.com (Kenton Varda)
|
||
|
// Based on original Protocol Buffers design by
|
||
|
// Sanjay Ghemawat, Jeff Dean, and others.
|
||
|
|
||
|
#ifndef GOOGLE_PROTOBUF_COMPILER_JAVA_DOC_COMMENT_H__
|
||
|
#define GOOGLE_PROTOBUF_COMPILER_JAVA_DOC_COMMENT_H__
|
||
|
|
||
|
#include "absl/strings/string_view.h"
|
||
|
#include "google/protobuf/compiler/java/options.h"
|
||
|
#include "google/protobuf/descriptor.h"
|
||
|
|
||
|
// Must be included last.
|
||
|
#include "google/protobuf/port_def.inc"
|
||
|
|
||
|
namespace google {
|
||
|
namespace protobuf {
|
||
|
namespace io {
|
||
|
class Printer; // printer.h
|
||
|
}
|
||
|
} // namespace protobuf
|
||
|
} // namespace google
|
||
|
|
||
|
namespace google {
|
||
|
namespace protobuf {
|
||
|
namespace compiler {
|
||
|
namespace java {
|
||
|
|
||
|
enum FieldAccessorType {
|
||
|
HAZZER,
|
||
|
GETTER,
|
||
|
SETTER,
|
||
|
CLEARER,
|
||
|
// Repeated
|
||
|
LIST_COUNT,
|
||
|
LIST_GETTER,
|
||
|
LIST_INDEXED_GETTER,
|
||
|
LIST_INDEXED_SETTER,
|
||
|
LIST_ADDER,
|
||
|
LIST_MULTI_ADDER
|
||
|
};
|
||
|
|
||
|
void WriteMessageDocComment(io::Printer* printer, const Descriptor* message,
|
||
|
Options options, bool kdoc = false);
|
||
|
void WriteFieldDocComment(io::Printer* printer, const FieldDescriptor* field,
|
||
|
Options options, bool kdoc = false);
|
||
|
void WriteFieldAccessorDocComment(io::Printer* printer,
|
||
|
const FieldDescriptor* field,
|
||
|
FieldAccessorType type, Options options,
|
||
|
bool builder = false, bool kdoc = false);
|
||
|
void WriteFieldEnumValueAccessorDocComment(
|
||
|
io::Printer* printer, const FieldDescriptor* field, FieldAccessorType type,
|
||
|
Options options, bool builder = false, bool kdoc = false);
|
||
|
void WriteFieldStringBytesAccessorDocComment(
|
||
|
io::Printer* printer, const FieldDescriptor* field, FieldAccessorType type,
|
||
|
Options options, bool builder = false, bool kdoc = false);
|
||
|
void WriteEnumDocComment(io::Printer* printer, const EnumDescriptor* enum_,
|
||
|
Options options, bool kdoc = false);
|
||
|
void WriteEnumValueDocComment(io::Printer* printer,
|
||
|
const EnumValueDescriptor* value,
|
||
|
Options options);
|
||
|
void WriteServiceDocComment(io::Printer* printer,
|
||
|
const ServiceDescriptor* service, Options options);
|
||
|
void WriteMethodDocComment(io::Printer* printer, const MethodDescriptor* method,
|
||
|
Options options);
|
||
|
|
||
|
// Exposed for testing only.
|
||
|
// Also called by proto1-Java code generator.
|
||
|
PROTOC_EXPORT std::string EscapeJavadoc(absl::string_view input);
|
||
|
|
||
|
} // namespace java
|
||
|
} // namespace compiler
|
||
|
} // namespace protobuf
|
||
|
} // namespace google
|
||
|
|
||
|
#include "google/protobuf/port_undef.inc"
|
||
|
|
||
|
#endif // GOOGLE_PROTOBUF_COMPILER_JAVA_DOC_COMMENT_H__
|