github.com/kastenhq/syft@v0.0.0-20230821225854-0710af25cdbe/syft/formats/spdxtagvalue/decoder.go (about)

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