📂 File Browser

AgentAI/vendor/google/apiclient-services/src/Spanner
🌙 Dark Mode
🎯 Quick Launch:

📁 Directories

📁 Resource/ 🔓 Open

📄 Files

🐘 Ack.php
▶ Open 📄 View Source
🐘 AdaptMessageRequest.php
▶ Open 📄 View Source
🐘 AdaptMessageResponse.php
▶ Open 📄 View Source
🐘 AdapterSession.php
▶ Open 📄 View Source
🐘 AddSplitPointsRequest.php
▶ Open 📄 View Source
🐘 AddSplitPointsResponse.php
▶ Open 📄 View Source
🐘 AsymmetricAutoscalingOption.php
▶ Open 📄 View Source
🐘 AutoscalingConfig.php
▶ Open 📄 View Source
🐘 AutoscalingConfigOverrides.php
▶ Open 📄 View Source
🐘 AutoscalingLimits.php
▶ Open 📄 View Source
🐘 AutoscalingTargets.php
▶ Open 📄 View Source
🐘 Backup.php
▶ Open 📄 View Source
🐘 BackupInfo.php
▶ Open 📄 View Source
🐘 BackupInstancePartition.php
▶ Open 📄 View Source
🐘 BackupSchedule.php
▶ Open 📄 View Source
🐘 BackupScheduleSpec.php
▶ Open 📄 View Source
🐘 BatchCreateSessionsRequest.php
▶ Open 📄 View Source
🐘 BatchCreateSessionsResponse.php
▶ Open 📄 View Source
🐘 BatchWriteRequest.php
▶ Open 📄 View Source
🐘 BatchWriteResponse.php
▶ Open 📄 View Source
🐘 BeginTransactionRequest.php
▶ Open 📄 View Source
🐘 Binding.php
▶ Open 📄 View Source
🐘 ChangeQuorumMetadata.php
▶ Open 📄 View Source
🐘 ChangeQuorumRequest.php
▶ Open 📄 View Source
🐘 ChangeStreamRecord.php
▶ Open 📄 View Source
🐘 ChildLink.php
▶ Open 📄 View Source
🐘 ClientContext.php
▶ Open 📄 View Source
🐘 ColumnMetadata.php
▶ Open 📄 View Source
🐘 CommitRequest.php
▶ Open 📄 View Source
🐘 CommitResponse.php
▶ Open 📄 View Source
🐘 CommitStats.php
▶ Open 📄 View Source
🐘 CompactDatabaseMetadata.php
▶ Open 📄 View Source
🐘 ContextValue.php
▶ Open 📄 View Source
🐘 CopyBackupEncryptionConfig.php
▶ Open 📄 View Source
🐘 CopyBackupMetadata.php
▶ Open 📄 View Source
🐘 CopyBackupRequest.php
▶ Open 📄 View Source
🐘 CreateBackupEncryptionConfig.php
▶ Open 📄 View Source
🐘 CreateBackupMetadata.php
▶ Open 📄 View Source
🐘 CreateDatabaseMetadata.php
▶ Open 📄 View Source
🐘 CreateDatabaseRequest.php
▶ Open 📄 View Source
🐘 CreateInstanceConfigMetadata.php
▶ Open 📄 View Source
🐘 CreateInstanceConfigRequest.php
▶ Open 📄 View Source
🐘 CreateInstanceMetadata.php
▶ Open 📄 View Source
🐘 CreateInstancePartitionMetadata.php
▶ Open 📄 View Source
🐘 CreateInstancePartitionRequest.php
▶ Open 📄 View Source
🐘 CreateInstanceRequest.php
▶ Open 📄 View Source
🐘 CreateSessionRequest.php
▶ Open 📄 View Source
🐘 CrontabSpec.php
▶ Open 📄 View Source
🐘 DataChangeRecord.php
▶ Open 📄 View Source
🐘 Database.php
▶ Open 📄 View Source
🐘 DatabaseMoveConfig.php
▶ Open 📄 View Source
🐘 DatabaseRole.php
▶ Open 📄 View Source
🐘 DdlStatementActionInfo.php
▶ Open 📄 View Source
🐘 Delete.php
▶ Open 📄 View Source
🐘 DerivedMetric.php
▶ Open 📄 View Source
🐘 DiagnosticMessage.php
▶ Open 📄 View Source
🐘 DirectedReadOptions.php
▶ Open 📄 View Source
🐘 DualRegionQuorum.php
▶ Open 📄 View Source
🐘 EncryptionConfig.php
▶ Open 📄 View Source
🐘 EncryptionInfo.php
▶ Open 📄 View Source
🐘 ExcludeReplicas.php
▶ Open 📄 View Source
🐘 ExecuteBatchDmlRequest.php
▶ Open 📄 View Source
🐘 ExecuteBatchDmlResponse.php
▶ Open 📄 View Source
🐘 ExecuteSqlRequest.php
▶ Open 📄 View Source
🐘 Expr.php
▶ Open 📄 View Source
🐘 Field.php
▶ Open 📄 View Source
🐘 FreeInstanceMetadata.php
▶ Open 📄 View Source
🐘 FullBackupSpec.php
▶ Open 📄 View Source
🐘 GetDatabaseDdlResponse.php
▶ Open 📄 View Source
🐘 GetIamPolicyRequest.php
▶ Open 📄 View Source
🐘 GetPolicyOptions.php
▶ Open 📄 View Source
🐘 HeartbeatRecord.php
▶ Open 📄 View Source
🐘 IncludeReplicas.php
▶ Open 📄 View Source
🐘 IncrementalBackupSpec.php
▶ Open 📄 View Source
🐘 IndexAdvice.php
▶ Open 📄 View Source
🐘 IndexedHotKey.php
▶ Open 📄 View Source
🐘 IndexedKeyRangeInfos.php
▶ Open 📄 View Source
🐘 Instance.php
▶ Open 📄 View Source
🐘 InstanceConfig.php
▶ Open 📄 View Source
🐘 InstanceEncryptionConfig.php
▶ Open 📄 View Source
🐘 InstanceOperationProgress.php
▶ Open 📄 View Source
🐘 InstancePartition.php
▶ Open 📄 View Source
🐘 InstanceReplicaSelection.php
▶ Open 📄 View Source
🐘 Key.php
▶ Open 📄 View Source
🐘 KeyRange.php
▶ Open 📄 View Source
🐘 KeyRangeInfo.php
▶ Open 📄 View Source
🐘 KeyRangeInfos.php
▶ Open 📄 View Source
🐘 KeySet.php
▶ Open 📄 View Source
🐘 ListBackupOperationsResponse.php
▶ Open 📄 View Source
🐘 ListBackupSchedulesResponse.php
▶ Open 📄 View Source
🐘 ListBackupsResponse.php
▶ Open 📄 View Source
🐘 ListDatabaseOperationsResponse.php
▶ Open 📄 View Source
🐘 ListDatabaseRolesResponse.php
▶ Open 📄 View Source
🐘 ListDatabasesResponse.php
▶ Open 📄 View Source
🐘 ListInstanceConfigOperationsResponse.php
▶ Open 📄 View Source
🐘 ListInstanceConfigsResponse.php
▶ Open 📄 View Source
🐘 ListInstancePartitionOperationsResponse.php
▶ Open 📄 View Source
🐘 ListInstancePartitionsResponse.php
▶ Open 📄 View Source
🐘 ListInstancesResponse.php
▶ Open 📄 View Source
🐘 ListOperationsResponse.php
▶ Open 📄 View Source
🐘 ListScansResponse.php
▶ Open 📄 View Source
🐘 ListSessionsResponse.php
▶ Open 📄 View Source
🐘 LocalizedString.php
▶ Open 📄 View Source
🐘 Metric.php
▶ Open 📄 View Source
🐘 MetricMatrix.php
▶ Open 📄 View Source
🐘 MetricMatrixRow.php
▶ Open 📄 View Source
🐘 Mod.php
▶ Open 📄 View Source
🐘 ModValue.php
▶ Open 📄 View Source
🐘 MoveInEvent.php
▶ Open 📄 View Source
🐘 MoveInstanceRequest.php
▶ Open 📄 View Source
🐘 MoveOutEvent.php
▶ Open 📄 View Source
🐘 MultiplexedSessionPrecommitToken.php
▶ Open 📄 View Source
🐘 Mutation.php
▶ Open 📄 View Source
🐘 MutationGroup.php
▶ Open 📄 View Source
🐘 Operation.php
▶ Open 📄 View Source
🐘 OperationProgress.php
▶ Open 📄 View Source
🐘 OptimizeRestoredDatabaseMetadata.php
▶ Open 📄 View Source
🐘 PartialResultSet.php
▶ Open 📄 View Source
🐘 Partition.php
▶ Open 📄 View Source
🐘 PartitionEndRecord.php
▶ Open 📄 View Source
🐘 PartitionEventRecord.php
▶ Open 📄 View Source
🐘 PartitionOptions.php
▶ Open 📄 View Source
🐘 PartitionQueryRequest.php
▶ Open 📄 View Source
🐘 PartitionReadRequest.php
▶ Open 📄 View Source
🐘 PartitionResponse.php
▶ Open 📄 View Source
🐘 PartitionStartRecord.php
▶ Open 📄 View Source
🐘 PartitionedDml.php
▶ Open 📄 View Source
🐘 PlanNode.php
▶ Open 📄 View Source
🐘 Policy.php
▶ Open 📄 View Source
🐘 PrefixNode.php
▶ Open 📄 View Source
🐘 QueryAdvisorResult.php
▶ Open 📄 View Source
🐘 QueryOptions.php
▶ Open 📄 View Source
🐘 QueryPlan.php
▶ Open 📄 View Source
🐘 QuorumInfo.php
▶ Open 📄 View Source
🐘 QuorumType.php
▶ Open 📄 View Source
🐘 ReadRequest.php
▶ Open 📄 View Source
🐘 ReadWrite.php
▶ Open 📄 View Source
🐘 ReplicaComputeCapacity.php
▶ Open 📄 View Source
🐘 ReplicaInfo.php
▶ Open 📄 View Source
🐘 ReplicaSelection.php
▶ Open 📄 View Source
🐘 RequestOptions.php
▶ Open 📄 View Source
🐘 RestoreDatabaseEncryptionConfig.php
▶ Open 📄 View Source
🐘 RestoreDatabaseMetadata.php
▶ Open 📄 View Source
🐘 RestoreDatabaseRequest.php
▶ Open 📄 View Source
🐘 RestoreInfo.php
▶ Open 📄 View Source
🐘 ResultSet.php
▶ Open 📄 View Source
🐘 ResultSetMetadata.php
▶ Open 📄 View Source
🐘 ResultSetStats.php
▶ Open 📄 View Source
🐘 RollbackRequest.php
▶ Open 📄 View Source
🐘 Scan.php
▶ Open 📄 View Source
🐘 ScanData.php
▶ Open 📄 View Source
🐘 Send.php
▶ Open 📄 View Source
🐘 Session.php
▶ Open 📄 View Source
🐘 SetIamPolicyRequest.php
▶ Open 📄 View Source
🐘 ShortRepresentation.php
▶ Open 📄 View Source
🐘 SingleRegionQuorum.php
▶ Open 📄 View Source
🐘 SpannerEmpty.php
▶ Open 📄 View Source
🐘 SpannerReadOnly.php
▶ Open 📄 View Source
🐘 SplitPoints.php
▶ Open 📄 View Source
🐘 Statement.php
▶ Open 📄 View Source
🐘 Status.php
▶ Open 📄 View Source
🐘 StructType.php
▶ Open 📄 View Source
🐘 TestIamPermissionsRequest.php
▶ Open 📄 View Source
🐘 TestIamPermissionsResponse.php
▶ Open 📄 View Source
🐘 Transaction.php
▶ Open 📄 View Source
🐘 TransactionOptions.php
▶ Open 📄 View Source
🐘 TransactionSelector.php
▶ Open 📄 View Source
🐘 Type.php
▶ Open 📄 View Source
🐘 UpdateDatabaseDdlMetadata.php
▶ Open 📄 View Source
🐘 UpdateDatabaseDdlRequest.php
▶ Open 📄 View Source
🐘 UpdateDatabaseMetadata.php
▶ Open 📄 View Source
🐘 UpdateDatabaseRequest.php
▶ Open 📄 View Source
🐘 UpdateInstanceConfigMetadata.php
▶ Open 📄 View Source
🐘 UpdateInstanceConfigRequest.php
▶ Open 📄 View Source
🐘 UpdateInstanceMetadata.php
▶ Open 📄 View Source
🐘 UpdateInstancePartitionMetadata.php
▶ Open 📄 View Source
🐘 UpdateInstancePartitionRequest.php
▶ Open 📄 View Source
🐘 UpdateInstanceRequest.php
▶ Open 📄 View Source
🐘 VisualizationData.php
▶ Open 📄 View Source
🐘 Write.php
▶ Open 📄 View Source

📄 Source: Type.php

<?php
/*
 * Copyright 2014 Google Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.
 */

namespace Google\Service\Spanner;

class Type extends \Google\Model
{
  /**
   * Not specified.
   */
  public const CODE_TYPE_CODE_UNSPECIFIED = 'TYPE_CODE_UNSPECIFIED';
  /**
   * Encoded as JSON `true` or `false`.
   */
  public const CODE_BOOL = 'BOOL';
  /**
   * Encoded as `string`, in decimal format.
   */
  public const CODE_INT64 = 'INT64';
  /**
   * Encoded as `number`, or the strings `"NaN"`, `"Infinity"`, or
   * `"-Infinity"`.
   */
  public const CODE_FLOAT64 = 'FLOAT64';
  /**
   * Encoded as `number`, or the strings `"NaN"`, `"Infinity"`, or
   * `"-Infinity"`.
   */
  public const CODE_FLOAT32 = 'FLOAT32';
  /**
   * Encoded as `string` in RFC 3339 timestamp format. The time zone must be
   * present, and must be `"Z"`. If the schema has the column option
   * `allow_commit_timestamp=true`, the placeholder string
   * `"spanner.commit_timestamp()"` can be used to instruct the system to insert
   * the commit timestamp associated with the transaction commit.
   */
  public const CODE_TIMESTAMP = 'TIMESTAMP';
  /**
   * Encoded as `string` in RFC 3339 date format.
   */
  public const CODE_DATE = 'DATE';
  /**
   * Encoded as `string`.
   */
  public const CODE_STRING = 'STRING';
  /**
   * Encoded as a base64-encoded `string`, as described in RFC 4648, section 4.
   */
  public const CODE_BYTES = 'BYTES';
  /**
   * Encoded as `list`, where the list elements are represented according to
   * array_element_type.
   */
  public const CODE_ARRAY = 'ARRAY';
  /**
   * Encoded as `list`, where list element `i` is represented according to
   * [struct_type.fields[i]][google.spanner.v1.StructType.fields].
   */
  public const CODE_STRUCT = 'STRUCT';
  /**
   * Encoded as `string`, in decimal format or scientific notation format.
   * Decimal format: `[+-]Digits[.[Digits]]` or `+-.Digits` Scientific notation:
   * `[+-]Digits[.[Digits]][ExponentIndicator[+-]Digits]` or
   * `+-.Digits[ExponentIndicator[+-]Digits]` (ExponentIndicator is `"e"` or
   * `"E"`)
   */
  public const CODE_NUMERIC = 'NUMERIC';
  /**
   * Encoded as a JSON-formatted `string` as described in RFC 7159. The
   * following rules are applied when parsing JSON input: - Whitespace
   * characters are not preserved. - If a JSON object has duplicate keys, only
   * the first key is preserved. - Members of a JSON object are not guaranteed
   * to have their order preserved. - JSON array elements will have their order
   * preserved.
   */
  public const CODE_JSON = 'JSON';
  /**
   * Encoded as a base64-encoded `string`, as described in RFC 4648, section 4.
   */
  public const CODE_PROTO = 'PROTO';
  /**
   * Encoded as `string`, in decimal format.
   */
  public const CODE_ENUM = 'ENUM';
  /**
   * Encoded as `string`, in `ISO8601` duration format -
   * `P[n]Y[n]M[n]DT[n]H[n]M[n[.fraction]]S` where `n` is an integer. For
   * example, `P1Y2M3DT4H5M6.5S` represents time duration of 1 year, 2 months, 3
   * days, 4 hours, 5 minutes, and 6.5 seconds.
   */
  public const CODE_INTERVAL = 'INTERVAL';
  /**
   * Encoded as `string`, in lower-case hexa-decimal format, as described in RFC
   * 9562, section 4.
   */
  public const CODE_UUID = 'UUID';
  /**
   * Not specified.
   */
  public const TYPE_ANNOTATION_TYPE_ANNOTATION_CODE_UNSPECIFIED = 'TYPE_ANNOTATION_CODE_UNSPECIFIED';
  /**
   * PostgreSQL compatible NUMERIC type. This annotation needs to be applied to
   * Type instances having NUMERIC type code to specify that values of this type
   * should be treated as PostgreSQL NUMERIC values. Currently this annotation
   * is always needed for NUMERIC when a client interacts with PostgreSQL-
   * enabled Spanner databases.
   */
  public const TYPE_ANNOTATION_PG_NUMERIC = 'PG_NUMERIC';
  /**
   * PostgreSQL compatible JSONB type. This annotation needs to be applied to
   * Type instances having JSON type code to specify that values of this type
   * should be treated as PostgreSQL JSONB values. Currently this annotation is
   * always needed for JSON when a client interacts with PostgreSQL-enabled
   * Spanner databases.
   */
  public const TYPE_ANNOTATION_PG_JSONB = 'PG_JSONB';
  /**
   * PostgreSQL compatible OID type. This annotation can be used by a client
   * interacting with PostgreSQL-enabled Spanner database to specify that a
   * value should be treated using the semantics of the OID type.
   */
  public const TYPE_ANNOTATION_PG_OID = 'PG_OID';
  protected $arrayElementTypeType = Type::class;
  protected $arrayElementTypeDataType = '';
  /**
   * Required. The TypeCode for this type.
   *
   * @var string
   */
  public $code;
  /**
   * If code == PROTO or code == ENUM, then `proto_type_fqn` is the fully
   * qualified name of the proto type representing the proto/enum definition.
   *
   * @var string
   */
  public $protoTypeFqn;
  protected $structTypeType = StructType::class;
  protected $structTypeDataType = '';
  /**
   * The TypeAnnotationCode that disambiguates SQL type that Spanner will use to
   * represent values of this type during query processing. This is necessary
   * for some type codes because a single TypeCode can be mapped to different
   * SQL types depending on the SQL dialect. type_annotation typically is not
   * needed to process the content of a value (it doesn't affect serialization)
   * and clients can ignore it on the read path.
   *
   * @var string
   */
  public $typeAnnotation;

  /**
   * If code == ARRAY, then `array_element_type` is the type of the array
   * elements.
   *
   * @param Type $arrayElementType
   */
  public function setArrayElementType(Type $arrayElementType)
  {
    $this->arrayElementType = $arrayElementType;
  }
  /**
   * @return Type
   */
  public function getArrayElementType()
  {
    return $this->arrayElementType;
  }
  /**
   * Required. The TypeCode for this type.
   *
   * Accepted values: TYPE_CODE_UNSPECIFIED, BOOL, INT64, FLOAT64, FLOAT32,
   * TIMESTAMP, DATE, STRING, BYTES, ARRAY, STRUCT, NUMERIC, JSON, PROTO, ENUM,
   * INTERVAL, UUID
   *
   * @param self::CODE_* $code
   */
  public function setCode($code)
  {
    $this->code = $code;
  }
  /**
   * @return self::CODE_*
   */
  public function getCode()
  {
    return $this->code;
  }
  /**
   * If code == PROTO or code == ENUM, then `proto_type_fqn` is the fully
   * qualified name of the proto type representing the proto/enum definition.
   *
   * @param string $protoTypeFqn
   */
  public function setProtoTypeFqn($protoTypeFqn)
  {
    $this->protoTypeFqn = $protoTypeFqn;
  }
  /**
   * @return string
   */
  public function getProtoTypeFqn()
  {
    return $this->protoTypeFqn;
  }
  /**
   * If code == STRUCT, then `struct_type` provides type information for the
   * struct's fields.
   *
   * @param StructType $structType
   */
  public function setStructType(StructType $structType)
  {
    $this->structType = $structType;
  }
  /**
   * @return StructType
   */
  public function getStructType()
  {
    return $this->structType;
  }
  /**
   * The TypeAnnotationCode that disambiguates SQL type that Spanner will use to
   * represent values of this type during query processing. This is necessary
   * for some type codes because a single TypeCode can be mapped to different
   * SQL types depending on the SQL dialect. type_annotation typically is not
   * needed to process the content of a value (it doesn't affect serialization)
   * and clients can ignore it on the read path.
   *
   * Accepted values: TYPE_ANNOTATION_CODE_UNSPECIFIED, PG_NUMERIC, PG_JSONB,
   * PG_OID
   *
   * @param self::TYPE_ANNOTATION_* $typeAnnotation
   */
  public function setTypeAnnotation($typeAnnotation)
  {
    $this->typeAnnotation = $typeAnnotation;
  }
  /**
   * @return self::TYPE_ANNOTATION_*
   */
  public function getTypeAnnotation()
  {
    return $this->typeAnnotation;
  }
}

// Adding a class alias for backwards compatibility with the previous class name.
class_alias(Type::class, 'Google_Service_Spanner_Type');
← Back