Skip to content
Snippets Groups Projects
Select Git revision
  • 0cac9c0375b6088e3856e0939b0953e557176861
  • master default protected
  • feature/PRXS-3383-CollectionsRankSort
  • feature/3149-LocaleCodeAsID
  • refactor/PRXS-3053-RefactorFiles
  • feature/3146-UpdateItemStorageInterface
  • feature/3180-RemoveOldHugo
  • feature/3264-FixExtracTranslationsArrays
  • feature/3274-ObjectIndexesFixes
  • feature/2931-AllowPartialDecode
  • feature/3055-ItemsRestAPI
  • feature/3082-gitlab-triage
  • feature/3055-LogsRestAPI
  • feature/2985-add-preset-settings
  • feature/2929-MultiInvitationFix
  • feature/2929-MultiInvitation
  • docs/2889-HugoModules
  • docs/2954-CheckResource
  • docs/3012-SplitBuild
  • docs/3024-PerxisWebStatic
  • feature/2911-GetArchive
  • v0.27.0
  • v0.21.0
  • v0.19.0
  • v0.20.0
25 results

versions.proto

Blame
  • id.go 541 B
    package id
    
    import (
    	"errors"
    	"strings"
    )
    
    const Separator = '/'
    
    var ErrInvalidID = errors.New("invalid id")
    
    type ID interface {
    	String() string
    	Type() string
    	ToMap() map[string]any
    	FromString(string) error
    	FromMap(map[string]any) error
    	Validate() error
    }
    
    func Split(id string) []string {
    	if id[0] != Separator {
    		return nil
    	}
    	return strings.Split(id[1:], string(Separator))
    }
    
    func Join(parts ...string) string {
    	s := strings.Join(parts, string(Separator))
    	if s[0] != Separator {
    		s = string(Separator) + s
    	}
    	return s
    }