g

package
v2.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 23, 2024 License: MIT Imports: 21 Imported by: 1,588

Documentation

Overview

Package g provides commonly used type/function defines and coupled calling for creating commonly-used objects.

Note that, using package g might make the compiled binary a little bit bigger, as it imports a few frequently-used packages whatever you use them or not.

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

func Cfg

func Cfg(name ...string) *gcfg.Config

Cfg is alias of Config. See Config.

func Client

func Client() *gclient.Client

Client is a convenience function, which creates and returns a new HTTP client.

func Config

func Config(name ...string) *gcfg.Config

Config returns an instance of config object with specified name.

func DB

func DB(name ...string) gdb.DB

DB returns an instance of database ORM object with specified configuration group name.

func Dump

func Dump(values ...interface{})

Dump dumps a variable to stdout with more manually readable.

func DumpJson added in v2.4.2

func DumpJson(value any)

DumpJson pretty dumps json content to stdout.

func DumpTo

func DumpTo(writer io.Writer, value interface{}, option gutil.DumpOption)

DumpTo writes variables `values` as a string in to `writer` with more manually readable

func DumpWithOption

func DumpWithOption(value interface{}, option gutil.DumpOption)

DumpWithOption returns variables `values` as a string with more manually readable.

func DumpWithType

func DumpWithType(values ...interface{})

DumpWithType acts like Dump, but with type information. Also see Dump.

func Go added in v2.5.3

func Go(
	ctx context.Context,
	goroutineFunc func(ctx context.Context),
	recoverFunc func(ctx context.Context, exception error),
)

Go creates a new asynchronous goroutine function with specified recover function.

The parameter `recoverFunc` is called when any panic during executing of `goroutineFunc`. If `recoverFunc` is given nil, it ignores the panic from `goroutineFunc` and no panic will throw to parent goroutine.

But, note that, if `recoverFunc` also throws panic, such panic will be thrown to parent goroutine.

func I18n

func I18n(name ...string) *gi18n.Manager

I18n returns an instance of gi18n.Manager. The parameter `name` is the name for the instance.

func IsEmpty

func IsEmpty(value interface{}, traceSource ...bool) bool

IsEmpty checks whether given `value` empty. It returns true if `value` is in: 0, nil, false, "", len(slice/map/chan) == 0. Or else it returns true.

The parameter `traceSource` is used for tracing to the source variable if given `value` is type of pointer that also points to a pointer. It returns true if the source is empty when `traceSource` is true. Note that it might use reflect feature which affects performance a little.

func IsNil

func IsNil(value interface{}, traceSource ...bool) bool

IsNil checks whether given `value` is nil. Parameter `traceSource` is used for tracing to the source variable if given `value` is type of pointer that also points to a pointer. It returns nil if the source is nil when `traceSource` is true. Note that it might use reflect feature which affects performance a little.

func Listen

func Listen()

Listen is an alias of gproc.Listen, which handles the signals received and automatically calls registered signal handler functions. It blocks until shutdown signals received and all registered shutdown handlers done.

func Log

func Log(name ...string) *glog.Logger

Log returns an instance of glog.Logger. The parameter `name` is the name for the instance.

func Model

func Model(tableNameOrStruct ...interface{}) *gdb.Model

Model creates and returns a model based on configuration of default database group.

func ModelRaw

func ModelRaw(rawSql string, args ...interface{}) *gdb.Model

ModelRaw creates and returns a model based on a raw sql not a table.

func Redis

func Redis(name ...string) *gredis.Redis

Redis returns an instance of redis client with specified configuration group name.

func RequestFromCtx

func RequestFromCtx(ctx context.Context) *ghttp.Request

RequestFromCtx retrieves and returns the Request object from context.

func Res

func Res(name ...string) *gres.Resource

Res is alias of Resource. See Resource.

func Resource

func Resource(name ...string) *gres.Resource

Resource returns an instance of Resource. The parameter `name` is the name for the instance.

func Server

func Server(name ...interface{}) *ghttp.Server

Server returns an instance of http server with specified name.

Example
package main

import (
	"github.com/gogf/gf/v2/frame/g"
	"github.com/gogf/gf/v2/net/ghttp"
)

func main() {
	// A hello world example.
	s := g.Server()
	s.BindHandler("/", func(r *ghttp.Request) {
		r.Response.Write("hello world")
	})
	s.SetPort(8999)
	s.Run()
}
Output:

func SetDebug

func SetDebug(enabled bool)

SetDebug enables/disables the GoFrame internal logging manually. Note that this function is not concurrent safe, be aware of the DATA RACE, which means you should call this function in your boot but not the runtime.

func TCPServer

func TCPServer(name ...interface{}) *gtcp.Server

TCPServer returns an instance of tcp server with specified name.

func Throw

func Throw(exception interface{})

Throw throws an exception, which can be caught by TryCatch function.

func Try

func Try(ctx context.Context, try func(ctx context.Context)) (err error)

Try implements try... logistics using internal panic...recover. It returns error if any exception occurs, or else it returns nil.

func TryCatch

func TryCatch(ctx context.Context, try func(ctx context.Context), catch func(ctx context.Context, exception error))

TryCatch implements try...catch... logistics using internal panic...recover. It automatically calls function `catch` if any exception occurs and passes the exception as an error.

But, note that, if function `catch` also throws panic, the current goroutine will panic.

func UDPServer

func UDPServer(name ...interface{}) *gudp.Server

UDPServer returns an instance of udp server with specified name.

func Validator

func Validator() *gvalid.Validator

Validator is a convenience function, which creates and returns a new validation manager object.

func View

func View(name ...string) *gview.View

View returns an instance of template engine object with specified name.

func Wait

func Wait()

Wait is an alias of ghttp.Wait, which blocks until all the web servers shutdown. It's commonly used in multiple servers' situation.

Types

type Array

type Array = []interface{} // Array is alias of frequently-used slice type []interface{}.

type ArrayAny

type ArrayAny = []interface{} // ArrayAny is alias of frequently-used slice type []interface{}.

type ArrayInt

type ArrayInt = []int // ArrayInt is alias of frequently-used slice type []int.

type ArrayStr

type ArrayStr = []string // ArrayStr is alias of frequently-used slice type []string.

type Ctx

type Ctx = context.Context // Ctx is alias of frequently-used type context.Context.

type List

type List = []Map // List is alias of frequently-used slice type []Map.

type ListAnyAny

type ListAnyAny = []MapAnyAny // ListAnyAny is alias of frequently-used slice type []MapAnyAny.

type ListAnyBool

type ListAnyBool = []MapAnyBool // ListAnyBool is alias of frequently-used slice type []MapAnyBool.

type ListAnyInt

type ListAnyInt = []MapAnyInt // ListAnyInt is alias of frequently-used slice type []MapAnyInt.

type ListAnyStr

type ListAnyStr = []MapAnyStr // ListAnyStr is alias of frequently-used slice type []MapAnyStr.

type ListIntAny

type ListIntAny = []MapIntAny // ListIntAny is alias of frequently-used slice type []MapIntAny.

type ListIntBool

type ListIntBool = []MapIntBool // ListIntBool is alias of frequently-used slice type []MapIntBool.

type ListIntInt

type ListIntInt = []MapIntInt // ListIntInt is alias of frequently-used slice type []MapIntInt.

type ListIntStr

type ListIntStr = []MapIntStr // ListIntStr is alias of frequently-used slice type []MapIntStr.

type ListStrAny

type ListStrAny = []MapStrAny // ListStrAny is alias of frequently-used slice type []MapStrAny.

type ListStrBool

type ListStrBool = []MapStrBool // ListStrBool is alias of frequently-used slice type []MapStrBool.

type ListStrInt

type ListStrInt = []MapStrInt // ListStrInt is alias of frequently-used slice type []MapStrInt.

type ListStrStr

type ListStrStr = []MapStrStr // ListStrStr is alias of frequently-used slice type []MapStrStr.

type Map

type Map = map[string]interface{} // Map is alias of frequently-used map type map[string]interface{}.

type MapAnyAny

type MapAnyAny = map[interface{}]interface{} // MapAnyAny is alias of frequently-used map type map[interface{}]interface{}.

type MapAnyBool

type MapAnyBool = map[interface{}]bool // MapAnyBool is alias of frequently-used map type map[interface{}]bool.

type MapAnyInt

type MapAnyInt = map[interface{}]int // MapAnyInt is alias of frequently-used map type map[interface{}]int.

type MapAnyStr

type MapAnyStr = map[interface{}]string // MapAnyStr is alias of frequently-used map type map[interface{}]string.

type MapIntAny

type MapIntAny = map[int]interface{} // MapIntAny is alias of frequently-used map type map[int]interface{}.

type MapIntBool

type MapIntBool = map[int]bool // MapIntBool is alias of frequently-used map type map[int]bool.

type MapIntInt

type MapIntInt = map[int]int // MapIntInt is alias of frequently-used map type map[int]int.

type MapIntStr

type MapIntStr = map[int]string // MapIntStr is alias of frequently-used map type map[int]string.

type MapStrAny

type MapStrAny = map[string]interface{} // MapStrAny is alias of frequently-used map type map[string]interface{}.

type MapStrBool

type MapStrBool = map[string]bool // MapStrBool is alias of frequently-used map type map[string]bool.

type MapStrInt

type MapStrInt = map[string]int // MapStrInt is alias of frequently-used map type map[string]int.

type MapStrStr

type MapStrStr = map[string]string // MapStrStr is alias of frequently-used map type map[string]string.

type Meta

type Meta = gmeta.Meta // Meta is alias of frequently-used type gmeta.Meta.

type Slice

type Slice = []interface{} // Slice is alias of frequently-used slice type []interface{}.

type SliceAny

type SliceAny = []interface{} // SliceAny is alias of frequently-used slice type []interface{}.

type SliceInt

type SliceInt = []int // SliceInt is alias of frequently-used slice type []int.

type SliceStr

type SliceStr = []string // SliceStr is alias of frequently-used slice type []string.

type Var

type Var = gvar.Var // Var is a universal variable interface, like generics.

func NewVar

func NewVar(i interface{}, safe ...bool) *Var

NewVar returns a gvar.Var.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL