This repository contains the custom types for the Terraform Plugin Framework.
Why supertypes?
The supertypes are custom types that are used to extend the functionality of the Terraform Plugin Framework. They are used to define the custom types that are used in the Terraform Plugin Framework.
Custom types available in the supertypes:
StringType
- A custom type that is used to define the string type.Int64Type
- A custom type that is used to define the integer type.NumberType
- A custom type that is used to define the number type.BoolType
- A custom type that is used to define the boolean type.Float64Type
- A custom type that is used to define the float type.MapType
- A custom type that is used to define the map type.ListType
- A custom type that is used to define the list type.SetType
- A custom type that is used to define the set type.MapNestedType
- A custom type that is used to define the nested map type.ListNestedType
- A custom type that is used to define the nested list type.SetNestedType
- A custom type that is used to define the nested set type.MapNestedObjectValueOf
- A custom type that is used to define the nested object value of the map type. This type use golang generics to construct automatically the nested object.ListNestedObjectValueOf
- A custom type that is used to define the nested object value of the list type. This type use golang generics to construct automatically the nested object.SetNestedObjectValueOf
- A custom type that is used to define the nested object value of the set type. This type use golang generics to construct automatically the nested object.
Principal functions available for each custom type:
Get()
- A function that is used to get the value.Set()
- A function that is used to set the value.SetNull()
- A function that is used to set the value to null.SetUnknown()
- A function that is used to set the value to unknown.IsKnown()
- A function that is used to check if the value is known.
Special functions available for the Float64Type
:
SetFloat32()
- A function that is used to set thefloat32
value into thefloat64
.SetFloat64()
- A function that is used to set thefloat64
value into thefloat64
.SetFloat32Ptr()
- A function that is used to set thefloat32
pointer value into thefloat64
.SetFloat64Ptr()
- A function that is used to set thefloat64
pointer value into thefloat64
.GetFloat32()
- A function that is used to get the value as afloat32
.GetFloat64()
- A function that is used to get the value as afloat64
.GetFloat32Ptr()
- A function that is used to get the value as afloat32
pointer.GetFloat64Ptr()
- A function that is used to get the value as afloat64
pointer.
Special functions available for the Int64Type
:
SetInt()
- A function that is used to setint
into theint64
.SetInt8()
- A function that is used to setint8
into theint64
.SetInt16()
- A function that is used to setint16
into theint64
.SetInt32()
- A function that is used to setint32
into theint64
.SetInt64()
- A function that is used to setint64
into theint64
.SetIntPtr()
- A function that is used to setint
pointer into theint64
.SetInt8Ptr()
- A function that is used to setint8
pointer into theint64
.SetInt16Ptr()
- A function that is used to setint16
pointer into theint64
.SetInt32Ptr()
- A function that is used to setint32
pointer into theint64
.SetInt64Ptr()
- A function that is used to setint64
pointer into theint64
.GetInt()
- A function that is used to get the value as anint
.GetInt8()
- A function that is used to get the value as anint8
.GetInt16()
- A function that is used to get the value as anint16
.GetInt32()
- A function that is used to get the value as anint32
.GetInt64()
- A function that is used to get the value as anint64
.GetIntPtr()
- A function that is used to get the value as anint
pointer.GetInt8Ptr()
- A function that is used to get the value as anint8
pointer.GetInt16Ptr()
- A function that is used to get the value as anint16
pointer.GetInt32Ptr()
- A function that is used to get the value as anint32
pointer.GetInt64Ptr()
- A function that is used to get the value as anint64
pointer.
For installing the supertypes, you can use the go get
command:
go get github.com/orange-cloudavenue/terraform-plugin-framework-supertypes@latest
documentation is in progress.