Go, also known as Golang, is a statically typed, compiled programming language designed at Google by Robert Griesemer, Rob Pike, and Ken Thompson. Go is syntactically similar to C, but with memory safety, garbage collection, structural typing, and CSP-style concurrency.
Recent Examples
YearDay returns the day of the year specified by t, in the range [1,365] for non-leap years, and [1,366] in leap years.
Nanosecond returns the nanosecond offset within the second specified by t, in the range [0, 999999999].
Second returns the second offset within the minute specified by t, in the range [0, 59].
Minute returns the minute offset within the hour specified by t, in the range [0, 59].
Hour returns the hour within the day specified by t, in the range [0, 23].
ValidString reports whether s consists entirely of valid UTF-8-encoded runes.
ValidRune reports whether r can be legally encoded as UTF-8.
Code points that are out of range or a surrogate half are illegal.
Valid reports whether p consists entirely of valid UTF-8-encoded runes.
RuneStart reports whether the byte could be the first byte of an encoded,
possibly invalid rune. Second and subsequent bytes always have the top two
bits set to 10.
RuneLen returns the number of bytes required to encode the rune.
It returns -1 if the rune is not a valid value to encode in UTF-8.
RuneCountInString is like RuneCount but its input is a string.
RuneCount returns the number of runes in p. Erroneous and short
encodings are treated as single runes of width 1 byte.
FullRuneInString is like FullRune but its input is a string.
FullRune reports whether the bytes in p begin with a full UTF-8 encoding of a rune.
An invalid encoding is considered a full Rune since it will convert as a width-1 error rune.
EncodeRune writes into p (which must be large enough) the UTF-8 encoding of the rune.
It returns the number of bytes written.
DecodeRuneInString is like DecodeRune but its input is a string. If s is
empty it returns (RuneError, 0). Otherwise, if the encoding is invalid, it
returns (RuneError, 1). Both are impossible results for correct, non-empty
UTF-8.
DecodeRune unpacks the first UTF-8 encoding in p and returns the rune and
its width in bytes. If p is empty it returns (RuneError, 0). Otherwise, if
the encoding is invalid, it returns (RuneError, 1). Both are impossible
results for correct, non-empty UTF-8.
DecodeLastRuneInString is like DecodeLastRune but its input is a string. If
s is empty it returns (RuneError, 0). Otherwise, if the encoding is invalid,
it returns (RuneError, 1). Both are impossible results for correct,
non-empty UTF-8.
DecodeLastRune unpacks the last UTF-8 encoding in p and returns the rune and
its width in bytes. If p is empty it returns (RuneError, 0). Otherwise, if
the encoding is invalid, it returns (RuneError, 1). Both are impossible
results for correct, non-empty UTF-8.
Functions starting with "Is" can be used to inspect which table of range a
rune belongs to. Note that runes may fit into more than one range.
ToUpper maps the rune to upper case.
ToTitle maps the rune to title case.
ToLower maps the rune to lower case.
To maps the rune to the specified case: UpperCase, LowerCase, or TitleCase.
SpecialCase represents language-specific case mappings such as Turkish.
Methods of SpecialCase customize (by overriding) the standard mappings.
SimpleFold iterates over Unicode code points equivalent under
the Unicode-defined simple case folding. Among the code points
equivalent to rune (including rune itself), SimpleFold returns the
smallest rune > r if one exists, or else the smallest rune >= 0.
If r is not a valid Unicode code point, Sim...
Unix returns t as a Unix time, the number of seconds elapsed
since January 1, 1970 UTC. The result does not depend on the
location associated with t.
Truncate returns the result of rounding t down to a multiple of d (since the zero time).
If d <= 0, Truncate returns t stripped of any monotonic clock reading but otherwise unchanged.
Sub returns the duration t-u. If the result exceeds the maximum (or minimum)
value that can be stored in a Duration, the maximum (or minimum) duration
will be returned.
To compute t-d for a duration d, use t.Add(-d).
String returns the time formatted using the format string
Round returns the result of rounding t to the nearest multiple of d (since the zero time).
The rounding behavior for halfway values is to round up.
If d <= 0, Round returns t stripped of any monotonic clock reading but otherwise unchanged.
Format returns a textual representation of the time value formatted
according to layout, which defines the format by showing how the reference
time, defined to be
Equal reports whether t and u represent the same time instant.
Two times can be equal even if they are in different locations.
For example, 6:00 +0200 CEST and 4:00 UTC are Equal.
See the documentation on the Time type for the pitfalls of using == with
Time values; most code should use Equal instead...
Day returns the day of the month specified by t.
Date returns the year, month, and day in which t occurs.
Before reports whether the time instant t is before u.
AppendFormat is like Format but appends the textual
representation to b and returns the extended buffer.
After reports whether the time instant t is after u.
AddDate returns the time corresponding to adding the
given number of years, months, and days to t.
For example, AddDate(-1, 2, 3) applied to January 1, 2011
returns March 4, 2010.
Add returns the time t+d.
Tick is a convenience wrapper for NewTicker providing access to the ticking
channel only. While Tick is useful for clients that have no need to shut down
the Ticker, be aware that without a way to shut it down the underlying
Ticker cannot be recovered by the garbage collector; it "leaks".
Unlike New...
Sleep pauses the current goroutine for at least the duration d.
A negative or zero duration causes Sleep to return immediately.
ParseInLocation is like Parse but differs in two important ways.
First, in the absence of time zone information, Parse interprets a time as UTC;
ParseInLocation interprets the time as in the given location.
Second, when given a zone offset or abbreviation, Parse tries to match it
against the Local l...
ParseDuration parses a duration string.
A duration string is a possibly signed sequence of
decimal numbers, each with optional fraction and a unit suffix,
such as "300ms", "-1.5h" or "2h45m".
Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
Parse parses a formatted string and returns the time value it represents.
The layout defines the format by showing how the reference time,
defined to be