#include <google/protobuf/unknown_field_set.h>
namespace google::protobuf
Protokol mesajı ayrıştırılırken görülen tanınmayan alanları takip etmek için kullanılan sınıfları içerir.
Bu dosyadaki sınıflar | |
---|---|
UnknownFieldSet, bir ileti ayrıştırılırken karşılaşılan ancak türü tarafından tanımlanmayan alanları içerir. | |
Bir UnknownFieldSet içindeki bir alanı temsil eder. | |
sınıf BilinmeyenFieldSet
#include <google/protobuf/unknown_field_set.h>
namespace google::protobuf
UnknownFieldSet, bir ileti ayrıştırılırken karşılaşılan ancak türü tarafından tanımlanmayan alanları içerir.
Özellikle de arada bir izin alınmadan, dizi tekrar seri hale getirilebiliyorsa bu notların takibi yararlı olabilir. Bu, yalnızca mesaj alan ve diğer sunuculara yönlendiren yazılımların, mesaj tanımına her yeni alan eklendiğinde güncellenmesine gerek olmadığı anlamına gelir.
UnknownFieldSet'i herhangi bir iletiye eklemek için Reflection::GetUnknownFields() yöntemini çağırın.
Bu sınıf, herhangi bir serileştirme şemasından bağımsız olan Reflection arayüzünün aksine, protokol arabelleği kablo biçimine bağlıdır.
Üyeler | |
---|---|
| UnknownFieldSet() |
| ~UnknownFieldSet() |
void | Clear() Tüm alanları kaldırın. |
void | ClearAndFreeMemory() Tüm alanları kaldırıp dahili veri nesnelerini ayırın. |
bool | empty() const Bu grup boş mu? |
void | MergeFrom(const UnknownFieldSet & other) Diğer bazı UnknownFieldSet'in içeriğini bununla birleştirin. |
void | MergeFromAndDestroy(UnknownFieldSet * other) Yukarıdaki işleve benzer, ancak bu işlev diğerlerinin içeriğini yok eder. |
void | Swap(UnknownFieldSet * x) Diğer bazı UnknownFieldSet'in içeriğini bununla değiştirir. |
size_t | SpaceUsedExcludingSelfLong() const Şu anda bilinmeyen alanları bellekte depolamak için kullanılan toplam bayt sayısını hesaplar (tahmini). devamı... |
int | SpaceUsedExcludingSelf() const |
size_t | SpaceUsedLong() const sizeof(*this) dahil SpaceUsed() sürümü. |
int | SpaceUsed() const |
int | field_count() const UnknownFieldSet'te bulunan alanların sayısını döndürür. |
const UnknownField & | field(int index) const Kümede 0 <= index < field_count() olan bir alan edinin. devamı... |
UnknownField * | mutable_field(int index) Kümedeki bir alana çevrilebilir işaretçi (burada 0 <= index < field_count()) alın. Devamı... |
static void | MergeToInternalMetadata(const UnknownFieldSet & other, internal::InternalMetadata * metadata) |
Alan ekleme | |
void | AddVarint(int number, uint64 value) |
void | AddFixed32(int number, uint32 value) |
void | AddFixed64(int number, uint64 value) |
void | AddLengthDelimited(int number, const std::string & value) |
std::string * | AddLengthDelimited(int number) |
UnknownFieldSet * | AddGroup(int number) |
void | AddField(const UnknownField & field) Başka bir kümeden bilinmeyen bir alan ekler. |
void | DeleteSubrange(int start, int num) [[]start içerisinde dizinleri olan alanları silin . devamı... |
void | DeleteByNumber(int number) Belirli bir alan numarasına sahip tüm alanları siler. devamı... |
Ayrıştırma yardımcılarıBunlar, tam olarak Message (İleti) yöntemlerine benzer şekilde çalışır. | |
bool | MergeFromCodedStream(io::CodedInputStream * input) |
bool | ParseFromCodedStream(io::CodedInputStream * input) |
bool | ParseFromZeroCopyStream(io::ZeroCopyInputStream * input) |
bool | ParseFromArray(const void * data, int size) |
bool | ParseFromString(const std::string & data) |
template bool | MergeFromMessage(const MessageType & message) Bu iletinin bilinmeyen alan verilerini (varsa) birleştirir. devamı... |
static const UnknownFieldSet & | default_instance() |
size_t UnknownFieldSet::SpaceUsedExcludingSelfLong() const
Şu anda bilinmeyen alanları bellekte depolamak için kullanılan toplam bayt sayısını hesaplar (tahmini).
Hesaplamaya boyut(*bu) DEĞİL.
const UnknownField &
UnknownFieldSet::field(
int index) const
UnknownFieldSet::field(
int index) const
Gruptaki bir alanı alın (burada 0 <= endeks < field_count()).
Alanlar, eklendikleri sırayla görünür.
UnknownField * UnknownFieldSet::mutable_field(
int index)
int index)
Kümedeki bir alana çevrilebilir işaretçi (burada 0 <= index < field_count()) alın.
Alanlar, eklendikleri sırayla görünür.
static void UnknownFieldSet::MergeToInternalMetadata(
const UnknownFieldSet & other,
internal::InternalMetadata * metadata)
const UnknownFieldSet & other,
internal::InternalMetadata * metadata)
UnknownFieldSet içeriğini *meta veri içindeki UnknownFieldSet ile (varsa) birleştirin.
*Meta veri UnknownFieldSet içermiyorsa buna ekleyin ve ilk bağımsız değişkenin bir kopyası haline getirin.
void UnknownFieldSet::DeleteSubrange(
int start,
int num)
int start,
int num)
[[]start içerisinde dizinleri olan alanları silin .
. başlangıç+sayı-1]. Dikkat: Uygulama, dizinleri [[]start+num .. ] olan tüm alanları taşır.
void UnknownFieldSet::DeleteByNumber(
int number)
int number)
Belirli bir alan numarasına sahip tüm alanları siler.
Sol alanların sırası korunur. Dikkat: Uygulama, silinen ilk alandan sonraki tüm alanları taşır.
template bool UnknownFieldSet::MergeFromMessage(
const MessageType & message)
const MessageType & message)
Bu iletinin bilinmeyen alan verilerini (varsa) birleştirir.
Bu değişken, iletinin basit veya tam bir protokol (eski nedenlerle MessageType::unknown_fields() için farklı ve hafif farklı türlerde döndürmesi) olmasına bakılmaksızın çalışır.
sınıf BilinmeyenAlan
#include <google/protobuf/unknown_field_set.h>
namespace google::protobuf
Bir UnknownFieldSet içindeki bir alanı temsil eder.
Üyeler | |
---|---|
enum | Type |
uint64 | varint_ |
uint32 | fixed32_ |
uint64 | fixed64_ |
union LengthDelimited | length_delimited_ |
UnknownFieldSet * | group_ |
int | number() const Kabloda göründüğü şekilde alanın alan numarası. |
Type | type() const Alan türü. |
ErişenlerHer yöntem yalnızca ilgili türe sahip bilinmeyenAlanlar için çalışır. | |
uint32 | number_ |
uint32 | type_ |
union google::protobuf::UnknownField::@35 | data_ |
uint64 | varint() const |
uint32 | fixed32() const |
uint64 | fixed64() const |
const std::string & | length_delimited() const |
const UnknownFieldSet & | group() const |
void | set_varint(uint64 value) |
void | set_fixed32(uint32 value) |
void | set_fixed64(uint64 value) |
void | set_length_delimited(const std::string & value) |
std::string * | mutable_length_delimited() |
UnknownFieldSet * | mutable_group() |
void | SerializeLengthDelimitedNoTag(io::CodedOutputStream * output) const Serialization API'si. devamı... |
size_t | GetLengthDelimitedSize() const |
uint8 * | InternalSerializeLengthDelimitedNoTag(uint8 * target, io::EpsCopyOutputStream * stream) const |
void | Delete() Bu UnknownField işaretçi içeriyorsa silin. |
void | DeepCopy(const UnknownField & other) Bu UnknownField içindeki işaretçilerin derin bir kopyasını oluşturun. |
void | SetType(Type type) Bu UnknownField öğesinin kablo türünü ayarlayın. devamı... |
enum UnknownField::Type {
TYPE_VARINT,
TYPE_FIXED32,
TYPE_FIXED64,
TYPE_LENGTH_DELIMITED,
TYPE_GROUP
}
TYPE_VARINT,
TYPE_FIXED32,
TYPE_FIXED64,
TYPE_LENGTH_DELIMITED,
TYPE_GROUP
}
TÜR_VARSİN | |
TÜR_FIXED32 | |
TYPE_FIXED64 | |
TYPE_LENGTH_DELIMITED TÜR | |
TÜR_GRUP |
void UnknownField::SerializeLengthDelimitedNoTag(
io::CodedOutputStream * output) const
io::CodedOutputStream * output) const
Serialization API'si.
Bu yöntemler, temeldeki uygulamadan yararlanabilir ve verileri alıp serileştirme işlemini kendiniz yapmaktan daha iyi bir performansa sahip olabilir.
void UnknownField::SetType(
Type type)
Type type)
Bu UnknownField öğesinin kablo türünü ayarlayın.
Yalnızca bu UnknownField oluşturulurken kullanılmalıdır.
union BilinmeyenAlan::LengthDelimited
#include <google/protobuf/unknown_field_set.h>
namespace google::protobuf
Üyeler | |
---|---|
std::string * | string_value |