MCPcopy Create free account
hub / github.com/chain/Core / writeInputWitness

Method writeInputWitness

protocol/bc/legacy/txinput.go:272–302  ·  view source on GitHub ↗
(w io.Writer)

Source from the content-addressed store, hash-verified

270}
271
272func (t *TxInput) writeInputWitness(w io.Writer) error {
273 if t.AssetVersion != 1 {
274 return nil
275 }
276 switch inp := t.TypedInput.(type) {
277 case *IssuanceInput:
278 _, err := inp.InitialBlock.WriteTo(w)
279 if err != nil {
280 return err
281 }
282 _, err = blockchain.WriteVarstr31(w, inp.AssetDefinition)
283 if err != nil {
284 return err
285 }
286 _, err = blockchain.WriteVarint63(w, inp.VMVersion)
287 if err != nil {
288 return err
289 }
290 _, err = blockchain.WriteVarstr31(w, inp.IssuanceProgram)
291 if err != nil {
292 return err
293 }
294 _, err = blockchain.WriteVarstrList(w, inp.Arguments)
295 return err
296
297 case *SpendInput:
298 _, err := blockchain.WriteVarstrList(w, inp.Arguments)
299 return err
300 }
301 return nil
302}
303
304func (t *TxInput) SpentOutputID() (o bc.Hash, err error) {
305 if si, ok := t.TypedInput.(*SpendInput); ok {

Callers

nothing calls this directly

Calls 1

WriteToMethod · 0.45

Tested by

no test coverage detected