Class: Google::Apis::SpannerV1::KeySet

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/spanner_v1/classes.rb,
generated/google/apis/spanner_v1/representations.rb,
generated/google/apis/spanner_v1/representations.rb

Overview

KeySet defines a collection of Cloud Spanner keys and/or key ranges. All the keys are expected to be in the same table or index. The keys need not be sorted in any particular way. If the same key is specified multiple times in the set (for example if two ranges, two keys, or a key and a range overlap), Cloud Spanner behaves as if the key were only specified once.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ KeySet

Returns a new instance of KeySet.



1533
1534
1535
# File 'generated/google/apis/spanner_v1/classes.rb', line 1533

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#allBoolean Also known as: all?

For convenience all can be set to true to indicate that this KeySet matches all keys in the table or index. Note that any keys specified in keys or ranges are only yielded once. Corresponds to the JSON property all

Returns:

  • (Boolean)


1516
1517
1518
# File 'generated/google/apis/spanner_v1/classes.rb', line 1516

def all
  @all
end

#keysArray<Array<Object>>

A list of specific keys. Entries in keys should have exactly as many elements as there are columns in the primary or index key with which this KeySet is used. Individual key values are encoded as described here. Corresponds to the JSON property keys

Returns:

  • (Array<Array<Object>>)


1525
1526
1527
# File 'generated/google/apis/spanner_v1/classes.rb', line 1525

def keys
  @keys
end

#rangesArray<Google::Apis::SpannerV1::KeyRange>

A list of key ranges. See KeyRange for more information about key range specifications. Corresponds to the JSON property ranges



1531
1532
1533
# File 'generated/google/apis/spanner_v1/classes.rb', line 1531

def ranges
  @ranges
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1538
1539
1540
1541
1542
# File 'generated/google/apis/spanner_v1/classes.rb', line 1538

def update!(**args)
  @all = args[:all] if args.key?(:all)
  @keys = args[:keys] if args.key?(:keys)
  @ranges = args[:ranges] if args.key?(:ranges)
end