Class: AWSCDK::S3Tables::CfnTable::SchemaV2FieldProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
s3_tables/cfn_table.rb

Overview

Contains details about a schema field for an Iceberg table that supports nested types (struct, list, map).

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(id:, name:, required:, type:, doc: nil) ⇒ SchemaV2FieldProperty

Returns a new instance of SchemaV2FieldProperty.

Parameters:

  • id (Numeric)

    The unique identifier for the field.

  • name (String)

    The name of the field.

  • required (Boolean, AWSCDK::IResolvable)

    A Boolean value that specifies whether values are required for each row in this field.

  • type (Object)
  • doc (String, nil) (defaults to: nil)

    Optional documentation for the field.



1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
# File 's3_tables/cfn_table.rb', line 1166

def initialize(id:, name:, required:, type:, doc: nil)
  @id = id
  Jsii::Type.check_type(@id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "id")
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  @required = required
  Jsii::Type.check_type(@required, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "required")
  @type = type
  Jsii::Type.check_type(@type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "type")
  @doc = doc
  Jsii::Type.check_type(@doc, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "doc") unless @doc.nil?
end

Instance Attribute Details

#docString? (readonly)

Optional documentation for the field.



1201
1202
1203
# File 's3_tables/cfn_table.rb', line 1201

def doc
  @doc
end

#idNumeric (readonly)

The unique identifier for the field.



1183
1184
1185
# File 's3_tables/cfn_table.rb', line 1183

def id
  @id
end

#nameString (readonly)

The name of the field.



1188
1189
1190
# File 's3_tables/cfn_table.rb', line 1188

def name
  @name
end

#requiredBoolean, AWSCDK::IResolvable (readonly)

A Boolean value that specifies whether values are required for each row in this field.



1193
1194
1195
# File 's3_tables/cfn_table.rb', line 1193

def required
  @required
end

#typeObject (readonly)



1196
1197
1198
# File 's3_tables/cfn_table.rb', line 1196

def type
  @type
end

Class Method Details

.jsii_propertiesObject



1203
1204
1205
1206
1207
1208
1209
1210
1211
# File 's3_tables/cfn_table.rb', line 1203

def self.jsii_properties
  {
    :id => "id",
    :name => "name",
    :required => "required",
    :type => "type",
    :doc => "doc",
  }
end

Instance Method Details

#to_jsiiObject



1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
# File 's3_tables/cfn_table.rb', line 1213

def to_jsii
  result = {}
  result.merge!({
    "id" => @id,
    "name" => @name,
    "required" => @required,
    "type" => @type,
    "doc" => @doc,
  })
  result.compact
end