diff options
Diffstat (limited to 'tvloader/tvloader.go')
-rw-r--r-- | tvloader/tvloader.go | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tvloader/tvloader.go b/tvloader/tvloader.go index d24c174..4ad95b1 100644 --- a/tvloader/tvloader.go +++ b/tvloader/tvloader.go @@ -8,6 +8,7 @@ import ( "github.com/spdx/tools-golang/spdx" "github.com/spdx/tools-golang/tvloader/parser2v1" + "github.com/spdx/tools-golang/tvloader/parser2v2" "github.com/spdx/tools-golang/tvloader/reader" ) @@ -26,3 +27,19 @@ func Load2_1(content io.Reader) (*spdx.Document2_1, error) { return doc, nil } + +// Load2_2 takes an io.Reader and returns a fully-parsed SPDX Document +// (version 2.2) if parseable, or error if any error is encountered. +func Load2_2(content io.Reader) (*spdx.Document2_2, error) { + tvPairs, err := reader.ReadTagValues(content) + if err != nil { + return nil, err + } + + doc, err := parser2v2.ParseTagValues(tvPairs) + if err != nil { + return nil, err + } + + return doc, nil +} |