Skip to content

kordax/basic-utils

Repository files navigation

Tests Go Report Card Coverage

Basic Utils

This repository contains a collection of utility libraries implemented in Go, designed to assist in a variety of common programming tasks. Each module addresses a particular set of functions or data structures.

Minimum Go Version Requirement

To use or contribute to this project, you need to have at least Go 1.22 installed. This is due to the usage of features and packages introduced in this version.

Modules

  • uarray: Utilities related to array manipulations and operations.

  • uasync: Utilities that help to organize async operations.

  • uerror: Provides utilities for error handling.

  • ufile: Utilities for efficient file handling.

  • umap: Helper functions for working with maps in Go.

  • umath: Mathematical utilities and helpers.

  • unumber: Versatile numeric representation.

  • uopt: Optional type implementations, which may hold a value or represent the absence of one.

  • uos: Operating system related utilities.

  • upair: Pair package (experimental).

  • uqueue: Implements both a FIFO (First-In-First-Out) queue and a priority queue with thread safety and various utility functions.

  • uref: Utilities related to references.

  • uset: (WIP) Package with Set implementation.

  • usql: Utilities related to sql types and methods.

  • usrlz: Serialization package.

  • ustr: Utilities related to string operations.

  • ustream: Experimental stream implementation for rare operations.

Installation

Make sure you have Go installed on your machine. Then, use go get to install the package:

go get -u github.com/kordax/basic-utils

Usage

You can import each module individually or import the main module and it depends on your needs. For example, to use the queue library:

go get -u github.com/kordax/basic-utils/uqueue

then...

import "github.com/kordax/basic-utils/uqueue"

Then, refer to the individual documentation or code comments of each module for specific usage patterns.

Static Analysis

The repository also includes a staticcheck.conf file, indicating that it might be set up to use the staticcheck tool for static code analysis. Run staticcheck in the root directory to perform a code quality check.

Author

Developed by @kordax (Dmitry Morozov)

Valoru Software