Documentation ¶
Overview ¶
Package base contains a collection of base infrastructure packages that serve as a base for the main Cogent Core packages.
Directories ¶
Path | Synopsis |
---|---|
Package atomiccounter implements a basic atomic int64 counter.
|
Package atomiccounter implements a basic atomic int64 counter. |
Package auth provides a system for identifying and authenticating users through third party cloud systems in Cogent Core apps.
|
Package auth provides a system for identifying and authenticating users through third party cloud systems in Cogent Core apps. |
Package bools provides functions and interfaces for interacting with bool values.
|
Package bools provides functions and interfaces for interacting with bool values. |
Package datasize provides a data size type and constants.
|
Package datasize provides a data size type and constants. |
Package dirs provides various utility functions in dealing with directories such as a list of all the files with a given (set of) extensions and finding paths within the Go source directory (GOPATH, etc)
|
Package dirs provides various utility functions in dealing with directories such as a list of all the files with a given (set of) extensions and finding paths within the Go source directory (GOPATH, etc) |
Package elide provides basic text eliding functions.
|
Package elide provides basic text eliding functions. |
Package errors provides a set of error handling helpers, extending the standard library errors package.
|
Package errors provides a set of error handling helpers, extending the standard library errors package. |
Package exec provides an easy way to execute commands, improving the ease-of-use and error handling of the standard library os/exec package.
|
Package exec provides an easy way to execute commands, improving the ease-of-use and error handling of the standard library os/exec package. |
Package fileinfo manages file information and categorizes file types; it is the single, consolidated place where file info, mimetypes, and filetypes are managed in Cogent Core.
|
Package fileinfo manages file information and categorizes file types; it is the single, consolidated place where file info, mimetypes, and filetypes are managed in Cogent Core. |
mimedata
Package mimedata defines MIME data support used in clipboard and drag-and-drop functions in the Cogent Core GUI.
|
Package mimedata defines MIME data support used in clipboard and drag-and-drop functions in the Cogent Core GUI. |
Package findfast implements an optimized bidirectional slice searching algorithm that can save a lot of time if you have some rough idea as to where an item might be.
|
Package findfast implements an optimized bidirectional slice searching algorithm that can save a lot of time if you have some rough idea as to where an item might be. |
Package generate provides utilities for building code generators in Go.
|
Package generate provides utilities for building code generators in Go. |
Package indent provides trivial indentation generation methods: Tabs, Spaces, and Indent with a selector.
|
Package indent provides trivial indentation generation methods: Tabs, Spaces, and Indent with a selector. |
Package iox provides boilerplate wrapper functions for the Go standard io functions to Read, Open, Write, and Save, with implementations for commonly used encoding formats.
|
Package iox provides boilerplate wrapper functions for the Go standard io functions to Read, Open, Write, and Save, with implementations for commonly used encoding formats. |
Package logx implements structured log handling and provides global log and print verbosity and color options.
|
Package logx implements structured log handling and provides global log and print verbosity and color options. |
Package mergefs provides support for merging multiple filesystems together.
|
Package mergefs provides support for merging multiple filesystems together. |
Package mpi wraps the Message Passing Interface for distributed memory data sharing across a collection of processors (procs).
|
Package mpi wraps the Message Passing Interface for distributed memory data sharing across a collection of processors (procs). |
Package namer holds an interface, Namer, for types with a Name() string method, and SetNamer for types that also have SetName()
|
Package namer holds an interface, Namer, for types with a Name() string method, and SetNamer for types that also have SetName() |
Package nptime provides a non-pointer version of the time.Time struct that does not have the location pointer information that time.Time has, which is more efficient from a memory management perspective, in cases where you have a lot of time values being kept: https://segment.com/blog/allocation-efficiency-in-high-performance-go-services/
|
Package nptime provides a non-pointer version of the time.Time struct that does not have the location pointer information that time.Time has, which is more efficient from a memory management perspective, in cases where you have a lot of time values being kept: https://segment.com/blog/allocation-efficiency-in-high-performance-go-services/ |
Package option provides optional (nullable) types.
|
Package option provides optional (nullable) types. |
package ordmap implements an ordered map that retains the order of items added to a slice, while also providing fast key-based map lookup of items, using the Go 1.18 generics system.
|
package ordmap implements an ordered map that retains the order of items added to a slice, while also providing fast key-based map lookup of items, using the Go 1.18 generics system. |
Package profile provides basic but effective profiling of targeted functions or code sections, which can often be more informative than generic cpu profiling.
|
Package profile provides basic but effective profiling of targeted functions or code sections, which can often be more informative than generic cpu profiling. |
Package randx provides randomization functionality built on top of standard math/rand random number generation functions.
|
Package randx provides randomization functionality built on top of standard math/rand random number generation functions. |
distsplot
Command distsplot plots histograms of random distributions
|
Command distsplot plots histograms of random distributions |
Package reflectx provides a collection of helpers for the reflect package in the Go standard library.
|
Package reflectx provides a collection of helpers for the reflect package in the Go standard library. |
Package runes provides a small subset of functions that are found in strings, bytes standard packages, for rune slices.
|
Package runes provides a small subset of functions that are found in strings, bytes standard packages, for rune slices. |
Package stack provides a generic stack implementation
|
Package stack provides a generic stack implementation |
Package strcase provides functions for manipulating the case of strings (CamelCase, kebab-case, snake_case, Sentence case, etc).
|
Package strcase provides functions for manipulating the case of strings (CamelCase, kebab-case, snake_case, Sentence case, etc). |
Package timer provides a simple wall-clock duration timer based on standard time.
|
Package timer provides a simple wall-clock duration timer based on standard time. |
Package tolassert provides functions for asserting the equality of numbers with tolerance (in other words, it checks whether numbers are about equal).
|
Package tolassert provides functions for asserting the equality of numbers with tolerance (in other words, it checks whether numbers are about equal). |
Package update provides an efficent mechanism for updating a slice to contain a target list of elements, generating minimal edits to modify the current slice contents to match the target.
|
Package update provides an efficent mechanism for updating a slice to contain a target list of elements, generating minimal edits to modify the current slice contents to match the target. |
Package vcs provides a more complete version control system (ex: git) interface, building on https://github.com/Masterminds/vcs.
|
Package vcs provides a more complete version control system (ex: git) interface, building on https://github.com/Masterminds/vcs. |
Click to show internal directories.
Click to hide internal directories.