github.com/cockroachdb/cockroachdb-parser@v0.23.3-0.20240213214944-911057d40c9a/pkg/sql/sem/tree/persistence.go (about)

     1  // Copyright 2020 The Cockroach Authors.
     2  //
     3  // Use of this software is governed by the Business Source License
     4  // included in the file licenses/BSL.txt.
     5  //
     6  // As of the Change Date specified in that file, in accordance with
     7  // the Business Source License, use of this software will be governed
     8  // by the Apache License, Version 2.0, included in the file
     9  // licenses/APL.txt.
    10  
    11  package tree
    12  
    13  // Persistence defines the persistence strategy for a given table.
    14  type Persistence int
    15  
    16  const (
    17  	// PersistencePermanent indicates a permanent table.
    18  	PersistencePermanent Persistence = iota
    19  	// PersistenceTemporary indicates a temporary table.
    20  	PersistenceTemporary
    21  	// PersistenceUnlogged indicates an unlogged table.
    22  	// Note this state is not persisted on disk and is used at parse time only.
    23  	PersistenceUnlogged
    24  )
    25  
    26  // IsTemporary returns whether the Persistence value is Temporary.
    27  func (p Persistence) IsTemporary() bool {
    28  	return p == PersistenceTemporary
    29  }
    30  
    31  // IsUnlogged returns whether the Persistence value is Unlogged.
    32  func (p Persistence) IsUnlogged() bool {
    33  	return p == PersistenceUnlogged
    34  }