Module std::encoding::protobuf

Protocol Buffers message construction.

Build and inspect Protocol Buffers messages using a field-number based API. Supports string and varint (integer) fields.

Note: Encoding/decoding to wire format and byte-typed field operations (set_bytes, get_bytes) require byte array support not yet available in Hew.

Examples

import std::encoding::protobuf;

fn main() {
    let msg = protobuf.new();
    msg.set_varint(1, 42);
    msg.set_string(2, "hello");
    let val = msg.get_string(2);
    println(val);
    msg.free();
}

Contents

Functions

Function new

pub fn new() -> Message

Create a new empty Protocol Buffers message.

Examples

let msg = protobuf.new();
msg.set_varint(1, 100);
msg.free();

Types

Struct Message

An opaque Protocol Buffers message.

Created by protobuf.new(). Fields are accessed by their field number. Must be freed with free() when no longer needed.

Traits

Trait MessageMethods

Methods available on a protobuf Message.

Methods

fn set_string(self: Message, field_number: i32, value: String) fn get_string(self: Message, field_number: i32) -> String fn set_varint(self: Message, field_number: i32, value: i64) fn get_varint(self: Message, field_number: i32, fallback: i64) -> i64 fn has_field(self: Message, field_number: i32) -> bool fn free(self: Message)