github.com/kata-containers/tests@v0.0.0-20240307153542-772105b56064/cmd/check-markdown/display_text.go (about)

     1  // Copyright (c) 2019 Intel Corporation
     2  //
     3  // SPDX-License-Identifier: Apache-2.0
     4  //
     5  
     6  package main
     7  
     8  import (
     9  	"fmt"
    10  	"os"
    11  )
    12  
    13  type displayText struct {
    14  	file *os.File
    15  }
    16  
    17  func NewDisplayText(file *os.File) DisplayHandler {
    18  	return &displayText{
    19  		file: file,
    20  	}
    21  }
    22  
    23  func (d *displayText) DisplayLinks(doc *Doc) error {
    24  	for _, linkList := range doc.Links {
    25  		for _, link := range linkList {
    26  			err := d.displayLink(link)
    27  			if err != nil {
    28  				return err
    29  			}
    30  		}
    31  	}
    32  
    33  	return nil
    34  }
    35  
    36  func (d *displayText) displayLink(l Link) error {
    37  	_, err := fmt.Fprintf(d.file, "%+v\n", l)
    38  
    39  	return err
    40  }
    41  
    42  func (d *displayText) DisplayHeadings(doc *Doc) error {
    43  	for _, h := range doc.Headings {
    44  		err := d.displayHeading(h)
    45  		if err != nil {
    46  			return err
    47  		}
    48  	}
    49  
    50  	return nil
    51  }
    52  
    53  func (d *displayText) displayHeading(h Heading) error {
    54  	_, err := fmt.Fprintf(d.file, "%+v\n", h)
    55  
    56  	return err
    57  }