github.com/DaAlbrecht/cf-cli@v0.0.0-20231128151943-1fe19bb400b9/command/flag/megabytes_with_unlimited.go (about)

     1  package flag
     2  
     3  import (
     4  	"code.cloudfoundry.org/cli/types"
     5  )
     6  
     7  type MegabytesWithUnlimited types.NullInt
     8  
     9  func (m *MegabytesWithUnlimited) UnmarshalFlag(val string) error {
    10  	if val == "" {
    11  		return nil
    12  	}
    13  
    14  	if val == "-1" {
    15  		m.Value = -1
    16  		m.IsSet = true
    17  		return nil
    18  	}
    19  
    20  	size, err := ConvertToMb(val)
    21  	if err != nil {
    22  		return err
    23  	}
    24  
    25  	m.Value = int(size)
    26  	m.IsSet = true
    27  
    28  	return nil
    29  }
    30  
    31  func (m *MegabytesWithUnlimited) IsValidValue(val string) error {
    32  	return m.UnmarshalFlag(val)
    33  }