gitlab.com/evatix-go/core@v1.3.55/coreimpl/enumimpl/FormatUsingFmt.go (about)

     1  package enumimpl
     2  
     3  import "gitlab.com/evatix-go/core/internal/strutilinternal"
     4  
     5  // FormatUsingFmt
     6  //
     7  //  Outputs name and
     8  //  value by given format.
     9  //
    10  // sample-format :
    11  //  - "Enum of {type-name} - {name} - {value}"
    12  //
    13  // sample-format-output :
    14  //  - "Enum of EnumFullName - Invalid - 0"
    15  //
    16  // Key-Meaning :
    17  //  - {type-name} : represents type-name string
    18  //  - {name}      : represents name string
    19  //  - {value}     : represents value string
    20  func FormatUsingFmt(
    21  	fmt formatter,
    22  	format string,
    23  ) string {
    24  	replacerMap := map[string]string{
    25  		typeNameTemplateKey: fmt.TypeName(),
    26  		nameKey:             fmt.Name(),
    27  		valueKey:            fmt.ValueString(),
    28  	}
    29  
    30  	return strutilinternal.ReplaceTemplateMap(
    31  		true,
    32  		format,
    33  		replacerMap)
    34  }