go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/providers-sdk/v1/util/convert/pointers.go (about)

     1  // Copyright (c) Mondoo, Inc.
     2  // SPDX-License-Identifier: BUSL-1.1
     3  
     4  package convert
     5  
     6  func ToBool(ptr *bool) bool {
     7  	if ptr == nil {
     8  		return false
     9  	}
    10  	return *ptr
    11  }
    12  
    13  func ToIntFrom32(ptr *int32) int {
    14  	if ptr == nil {
    15  		return 0
    16  	}
    17  	return int(*ptr)
    18  }
    19  
    20  func ToString(ptr *string) string {
    21  	if ptr == nil {
    22  		return ""
    23  	}
    24  	return *ptr
    25  }
    26  
    27  func ToInt64(ptr *int64) int64 {
    28  	if ptr == nil {
    29  		return 0
    30  	}
    31  	return *ptr
    32  }
    33  
    34  func ToInt64From32(ptr *int32) int64 {
    35  	if ptr == nil {
    36  		return 0
    37  	}
    38  	return int64(*ptr)
    39  }
    40  
    41  func ToInt64FromInt(ptr *int) int64 {
    42  	if ptr == nil {
    43  		return 0
    44  	}
    45  	return int64(*ptr)
    46  }
    47  
    48  func ToFloat64(ptr *float64) float64 {
    49  	if ptr == nil {
    50  		return 0
    51  	}
    52  	return *ptr
    53  }
    54  
    55  func ToListFromPtrs(ptrs []*string) []string {
    56  	if ptrs == nil {
    57  		return nil
    58  	}
    59  	list := make([]string, len(ptrs))
    60  	for i, ptr := range ptrs {
    61  		list[i] = ToString(ptr)
    62  	}
    63  	return list
    64  }