Copyright (c) 2020, 2024, Geert JM Vanderkelen
Package xgo gathers extra, common functionality which gets reimplemented
in each project. It is organized in sub-packages which mimic the Go standard
library.
xgo is meanly used by other projects the author is maintaining and does nothing
extraordinary except taking away the tedious repeating.
The package grew from an old package, which was split into various separate
repositories within github.com/golistic. However, this is way too much overhead and
maintenance, so we decided to revert back to a single repository: xgo.
Requires Go 1.23 or later.
Index
The following list shows sub-packages of xgo. Most have the same names as their
counterparts in the Go standard library, for example, xos and os. However, we
add some more like xconv and xptr.
xconv - (basic) type conversions similar
xmaps - extra functionality manipulating Go maps
xnet - from validating email addresses to finding te next free TCP port
xos - wrapping around os with functions like IsDir or IsRegularFile and mapping environment
xptr - getting pointer to value; probably the most reimplemented functionality
xreflect - handy tools doing reflection such as PatchStruct
xslice - missing pieces of slice, with for example AsAny to return any slice as []any
xsql - extra functionality around SQL drivers including managing DSN (Data Source Name)
xstrings - extends strings with useful helpers such as generic Join and RepeatJoin
xt - basic wrappers around the testing standard package but with a short name
xtime - helpers around time.Time
License
Distributed under the MIT license. See LICENSE.txt for more information.