awsutil

package
v1.0.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 23, 2021 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func Copy

func Copy(dst, src interface{})

Copy deeply copies a src structure to dst. Useful for copying request and response structures.

Can copy between structs of different type, but will only copy fields which are assignable, and exist in both structs. Fields which are not assignable, or do not exist in both structs are ignored.

Example
package main

import (
	"fmt"

	"github.com/ks3sdklib/aws-sdk-go/aws/awsutil"
)

func main() {
	type Foo struct {
		A int
		B []*string
	}

	// Create the initial value
	str1 := "hello"
	str2 := "bye bye"
	f1 := &Foo{A: 1, B: []*string{&str1, &str2}}

	// Do the copy
	var f2 Foo
	awsutil.Copy(&f2, f1)

	// Print the result
	fmt.Println(awsutil.StringValue(f2))

}
Output:

{
  A: 1,
  B: ["hello","bye bye"]
}

func CopyOf

func CopyOf(src interface{}) (dst interface{})

CopyOf returns a copy of src while also allocating the memory for dst. src must be a pointer type or this operation will fail.

Example
package main

import (
	"fmt"

	"github.com/ks3sdklib/aws-sdk-go/aws/awsutil"
)

func main() {
	type Foo struct {
		A int
		B []*string
	}

	// Create the initial value
	str1 := "hello"
	str2 := "bye bye"
	f1 := &Foo{A: 1, B: []*string{&str1, &str2}}

	// Do the copy
	v := awsutil.CopyOf(f1)
	var f2 *Foo = v.(*Foo)

	// Print the result
	fmt.Println(awsutil.StringValue(f2))

}
Output:

{
  A: 1,
  B: ["hello","bye bye"]
}

func SetValueAtAnyPath

func SetValueAtAnyPath(i interface{}, path string, v interface{})

SetValueAtAnyPath sets an object at the case insensitive lexical path inside of a structure

func SetValueAtPath

func SetValueAtPath(i interface{}, path string, v interface{})

SetValueAtPath sets an object at the lexical path inside of a structure

func StringValue

func StringValue(i interface{}) string

StringValue returns the string representation of a value.

func ValuesAtAnyPath

func ValuesAtAnyPath(i interface{}, path string) []interface{}

ValuesAtAnyPath returns a list of objects at the case-insensitive lexical path inside of a structure

func ValuesAtPath

func ValuesAtPath(i interface{}, path string) []interface{}

ValuesAtPath returns a list of objects at the lexical path inside of a structure

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL