github.com/voedger/voedger@v0.0.0-20240520144910-273e84102129/pkg/istructsmem/internal/qnames/interface.go (about)

     1  /*
     2   * Copyright (c) 2021-present Sigma-Soft, Ltd.
     3   * @author: Nikolay Nikitin
     4   */
     5  
     6  package qnames
     7  
     8  import "github.com/voedger/voedger/pkg/appdef"
     9  
    10  // Identifier for QNames
    11  type QNameID = uint16
    12  
    13  // QNames system view
    14  //
    15  //	Use ID() to obtain QName ID.
    16  //	Use QName() to obtain QName name by its ID.
    17  //	Use Prepare() to load QNames IDs from storage.
    18  type QNames struct {
    19  	qNames  map[appdef.QName]QNameID
    20  	ids     map[QNameID]appdef.QName
    21  	lastID  QNameID
    22  	changes uint
    23  }