github.com/noqcks/syft@v0.0.0-20230920222752-a9e2c4e288e5/syft/formats/spdxjson/decoder.go (about)

     1  package spdxjson
     2  
     3  import (
     4  	"fmt"
     5  	"io"
     6  
     7  	"github.com/spdx/tools-golang/json"
     8  
     9  	"github.com/anchore/syft/syft/formats/common/spdxhelpers"
    10  	"github.com/anchore/syft/syft/sbom"
    11  )
    12  
    13  func decoder(reader io.Reader) (s *sbom.SBOM, err error) {
    14  	doc, err := json.Read(reader)
    15  	if err != nil {
    16  		return nil, fmt.Errorf("unable to decode spdx-json: %w", err)
    17  	}
    18  
    19  	return spdxhelpers.ToSyftModel(doc)
    20  }