sexpr

package
v0.0.0-...-8cd4330 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 28, 2018 License: MIT Imports: 6 Imported by: 0

README

Exercise 12.9 (P347)

Write a token-based API for decoding S-expressions, following the style of xml.Decoder (§7.14). You will need five types of tokens: Symbol, String, Int, StartList, and EndList.

Documentation

Overview

Package sexpr provides a means for converting Go objects to and from S-expressions.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Marshal

func Marshal(v interface{}) ([]byte, error)

!+Marshal Marshal encodes a Go value in S-expression form.

func MarshalIndent

func MarshalIndent(v interface{}) ([]byte, error)

func Unmarshal

func Unmarshal(data []byte, out interface{}) (err error)

!+Unmarshal Unmarshal parses S-expression data and populates the variable whose address is in the non-nil pointer out.

Types

type Decoder

type Decoder struct {
	// contains filtered or unexported fields
}

func NewDecoder

func NewDecoder(r io.Reader) *Decoder

func (*Decoder) Token

func (d *Decoder) Token() (Token, error)

type EndList

type EndList struct{}

func (EndList) String

func (s EndList) String() string

type Int

type Int int

func (Int) String

func (i Int) String() string

type StartList

type StartList struct{}

func (StartList) String

func (s StartList) String() string

type String

type String string

type Symbol

type Symbol string

type Token

type Token interface{}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL