io

package
v0.3.0-alpha Latest Latest
Warning

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

Go to latest
Published: Sep 15, 2020 License: Apache-2.0 Imports: 10 Imported by: 11

Documentation

Overview

Package io offers (de)serialization APIs for gnark objects consider it unstable until v1.X.X release cycle

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PeekCurveID

func PeekCurveID(file string) (gurvy.ID, error)

PeekCurveID reads the first bytes of the file and tries to decode and return the curveID

func Read

func Read(reader io.Reader, into CurveSpecific) error

Read reads bytes from reader and construct object into

func ReadFile

func ReadFile(path string, into CurveSpecific) error

ReadFile read and deserialize input into object provided interface must be a pointer

func ReadWitness

func ReadWitness(path string, into map[string]interface{}) error

ReadWitness read and deserialize JSON file at path returned object will contain map[string]interface{} keys being variable names and interface{} being big.Int big.Int values in files can be in base10 or base16 strings

func Write

func Write(writer io.Writer, from CurveSpecific) error

Write object from into provided writer encodes the curveID in the first bytes

func WriteFile

func WriteFile(path string, from CurveSpecific) error

WriteFile serialize object into file

func WriteWitness

func WriteWitness(path string, from map[string]interface{}) error

WriteWitness serialize variable map[name]value into file at path map[string]interface{} --> interface must be convertible to big.Int using backend.FromInterface() the resulting format is human readable (JSON) big.Int are serialized in hexadecimal strings

Types

type CurveSpecific

type CurveSpecific interface {
	GetCurveID() gurvy.ID
}

CurveSpecific objects must know which curve they are tied to

Jump to

Keyboard shortcuts

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