[][src]Module cborian::encoder

CBOR (RFC 7049) encoder implementation.

This module provides an Encoder to directly encode Rust types into CBOR, and a GenericEncoder which encodes a Value into CBOR.

Example 1: Direct encoding

use cborian::Encoder;
use rustc_serialize::hex::FromHex;
use std::io::Cursor;

let mut e = Encoder::new(Cursor::new(Vec::new()));
e.u16(1000).unwrap();
assert_eq!("1903e8".from_hex().unwrap(), e.into_writer().into_inner())

Example 2: Direct encoding (indefinite string)

use cborian::Encoder;
use rustc_serialize::hex::FromHex;
use std::io::Cursor;

let mut e = Encoder::new(Cursor::new(Vec::new()));
e.text_iter(vec!["strea", "ming"].into_iter()).unwrap();
let output = "7f657374726561646d696e67ff".from_hex().unwrap();
assert_eq!(output, e.into_writer().into_inner())

Example 3: Direct encoding (nested array)

use cborian::Encoder;
use rustc_serialize::hex::FromHex;
use std::io::Cursor;

let mut e = Encoder::new(Cursor::new(Vec::new()));
e.array(3)
 .and(e.u8(1))
 .and(e.array(2)).and(e.u8(2)).and(e.u8(3))
 .and(e.array(2)).and(e.u8(4)).and(e.u8(5))
 .unwrap();
let output = "8301820203820405".from_hex().unwrap();
assert_eq!(output, e.into_writer().into_inner())

Structs

Encoder

The actual encoder type definition

GenericEncoder

A generic encoder encodes a Value.

Enums

EncodeError

Type Definitions

EncodeResult