パッケージ | |
---|---|
I/O に使用する補助クラス。 | |
ユーティリティ クラス。 | |
プロトコル バッファ コンパイラの実装。 |
google::protobuf
ファイル | |
---|---|
このファイルでは、割り当てのパフォーマンスを向上させるために Arena アロケータを定義します。 | |
このファイルには、プロトコル メッセージのタイプを記述するクラスが含まれています。 | |
記述子のプロトコル バッファ表現。 | |
記述子のデータベースを操作するためのインターフェース。 | |
コンパイル時にわからないタイプをエミュレートできる Message の実装を定義します。 | |
このファイルでは、protobuf マップをサポートするためのマップコンテナとヘルパーを定義します。 | |
非ライト プロトコル メッセージ オブジェクトによって実装される抽象インターフェースである Message を定義します。 | |
すべての(ライトと非ライト)プロトコル メッセージ オブジェクトによって実装される抽象インターフェース、MessageLite を定義します。 | |
RepeatedField と RepeatedPtrField は、生成されたプロトコル メッセージ クラスで繰り返しフィールドを操作するために使用されます。 | |
非推奨: このモジュールは、proto2 RPC サービスの基礎となる抽象インターフェースを宣言します。 | |
プロトコル メッセージを人間が判読できるテキストベースの形式で出力、解析するユーティリティ。 | |
プロトコル メッセージの解析中に確認された認識されないフィールドをトラッキングするためのクラスが含まれています。 |
google::protobuf::io
I/O に使用する補助クラス。
プロトコル バッファ ライブラリは、このパッケージ内のクラスを使用して、I/O の処理や RAW バイトのエンコード/デコードを行います。ほとんどのユーザーは、このパッケージを扱う必要がありません。ただし、独自の I/O 抽象化と連携するようにシステムを調整したい場合(たとえば、一時的なバッファを必要とせずにプロトコル バッファを別の種類の入力ストリームから読み込めるようにする場合)は、よく確認する必要があります。
ファイル | |
---|---|
このファイルには、ZerodInputStream クラスと CodedOutputStream クラスが含まれています。それぞれ ZeroCopyInputStream クラスと ZeroCopyOutputStream クラスをラップして、さまざまな形式の個々のデータを読み書きできるようにします。 | |
ZeroCopyOutputStream にテキストを書き込むためのユーティリティ クラス。 | |
ZeroCopyInputStream からトークン化されたテキストを解析するためのクラス。 | |
このファイルには、ZeroCopyInputStream インターフェースと ZeroCopyOutputStream インターフェースが含まれています。これらは、プロトコル バッファとの間の読み書きが可能な抽象 I/O ストリームを表します。 | |
このファイルには、zero_copy_stream.h で定義されたインターフェースの一般的な実装が含まれています。この実装には lite 以外の protobuf ライブラリのみが含まれています。 | |
このファイルには、zero_copy_stream.h で定義されたインターフェースの一般的な実装が含まれています。これらは「lite」版の protobuf ライブラリに含まれています。 |
google::protobuf::util
ユーティリティ クラス。
このパッケージには、メッセージ比較、JSON 変換、よく知られている型など、さまざまなユーティリティが含まれています。
ファイル | |
---|---|
フィールド比較のクラスを定義します。 | |
FieldMask の既知の型のユーティリティを定義します。 | |
protobuf バイナリ形式と proto3 JSON 形式に変換するユーティリティ関数。 | |
このファイルでは、プロトコル メッセージを比較するための静的メソッドとクラスを定義します。 | |
Timestamp と Duration のよく知られた型のユーティリティを定義します。 | |
Any メッセージの TypeResolver を定義します。 | |
TypeResolver のユーティリティを定義します。 |
google::protobuf::compiler
プロトコル バッファ コンパイラの実装。
このパッケージには、.proto ファイルの解析とそれに基づくコードの生成用のコードが含まれています。このパッケージに関心がある理由は 2 つあります。
- 実行時に .proto ファイルを解析したいと考えています。この場合は importer.h をご覧ください。この機能は広く利用されているため、libprotobuf ベース ライブラリに含まれています。libprotoc にリンクする必要はありません。
- さまざまなタイプのコード(たとえば公式のコンパイラでサポートされていない別の言語のコード)を生成するカスタム プロトコル コンパイラを記述したい場合、この目的のために、command_line_interface.h には完全なコンパイラ フロントエンドが提供されるので、CodeGenerator のカスタム実装と簡単な main() 関数を記述するだけで済みます。独自の言語に加えて、コンパイラで公式言語をサポートすることもできます。この機能は、カスタム コンパイラを記述する場合にのみ役立つため、「libprotoc」という別のライブラリに含まれているため、これをリンクする必要があります。
ファイル | |
---|---|
言語固有のコード生成ツールごとに実装される抽象インターフェースを定義します。 | |
プロトコル コンパイラ フロントエンドを実装し、他の言語をサポートするために記述されたカスタム コンパイラで再利用できるようにします。 | |
このファイルは .proto ファイル パーサーの公開インターフェースです。 | |
.proto ファイルの解析を FileDescriptorProtos に実装します。 | |
C++ で作成された protoc コード生成プラグインのフロントエンド。 | |
proto プラグイン向け API。 | |
指定された .proto ファイル用の C++ コードを生成します。 | |
指定された .proto ファイル用の C# コードを生成します。 | |
記述子を対応する C# クラスの完全修飾名にマッピングするメカニズムを提供します。 | |
指定された .proto ファイル用の Java コードを生成します。 | |
記述子を対応する Java クラスの完全修飾名にマッピングするメカニズムを提供します。 | |
指定した .proto ファイル用の JavaScript コードを生成します。 | |
指定された .proto ファイルの ObjectiveC コードを生成します。 | |
ObjectiveC コードを生成するためのヘルパー関数。 | |
指定された .proto ファイル用の Python コードを生成します。 | |
指定された .proto ファイル用の Ruby コードを生成します。 |