gitee.com/sy_183/go-common@v1.0.5-0.20231205030221-958cfe129b47/errors/argument-missing.go (about)

     1  package errors
     2  
     3  import (
     4  	"strings"
     5  )
     6  
     7  type ArgumentMissing struct {
     8  	Arguments []string
     9  }
    10  
    11  func NewArgumentMissing(arguments ...string) ArgumentMissing {
    12  	return ArgumentMissing{Arguments: arguments}
    13  }
    14  
    15  func (e ArgumentMissing) Error() string {
    16  	return "缺少必要的参数(" + strings.Join(e.Arguments, ",") + ")"
    17  }
    18  
    19  func (e ArgumentMissing) AddParentArgument(parent string) {
    20  	for i, argument := range e.Arguments {
    21  		e.Arguments[i] = AddParentArgument(argument, parent)
    22  	}
    23  }
    24  
    25  func (e ArgumentMissing) ReplaceParentArgument(parent string) {
    26  	for i, argument := range e.Arguments {
    27  		e.Arguments[i] = ReplaceParentArgument(argument, parent)
    28  	}
    29  }
    30  
    31  type ArgumentMissingOne struct {
    32  	Arguments []string
    33  }
    34  
    35  func NewArgumentMissingOne(arguments ...string) ArgumentMissingOne {
    36  	return ArgumentMissingOne{Arguments: arguments}
    37  }
    38  
    39  func (e ArgumentMissingOne) Error() string {
    40  	return "缺少必要的参数之一(" + strings.Join(e.Arguments, ",") + ")"
    41  }
    42  
    43  func (e ArgumentMissingOne) AddParentArgument(parent string) {
    44  	for i, argument := range e.Arguments {
    45  		e.Arguments[i] = AddParentArgument(argument, parent)
    46  	}
    47  }
    48  
    49  func (e ArgumentMissingOne) ReplaceParentArgument(parent string) {
    50  	for i, argument := range e.Arguments {
    51  		e.Arguments[i] = ReplaceParentArgument(argument, parent)
    52  	}
    53  }