mirror of
https://github.com/ipfs/kubo.git
synced 2026-02-25 12:27:43 +08:00
33 lines
679 B
Go
33 lines
679 B
Go
package coredag
|
|
|
|
import (
|
|
"io"
|
|
"io/ioutil"
|
|
|
|
ipldcbor "gx/ipfs/QmRoARq3nkUb13HSKZGepCZSWe5GrVPwx7xURJGZ7KWv9V/go-ipld-cbor"
|
|
ipld "gx/ipfs/QmcKKBwfz6FyQdHR2jsXrrF6XeSBXYL86anmWNewpFpoF5/go-ipld-format"
|
|
)
|
|
|
|
func cborJSONParser(r io.Reader, mhType uint64, mhLen int) ([]ipld.Node, error) {
|
|
nd, err := ipldcbor.FromJSON(r, mhType, mhLen)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return []ipld.Node{nd}, nil
|
|
}
|
|
|
|
func cborRawParser(r io.Reader, mhType uint64, mhLen int) ([]ipld.Node, error) {
|
|
data, err := ioutil.ReadAll(r)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
nd, err := ipldcbor.Decode(data, mhType, mhLen)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return []ipld.Node{nd}, nil
|
|
}
|