Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var SectionOrder = []Section{ SectionGeneral, SectionHelp, SectionQueryBuffer, SectionInputOutput, SectionTransaction, SectionConnection, SectionOperatingSystem, SectionVariables, }
SectionOrder is the order of sections to display via Listing.
Functions ¶
Types ¶
type Cmd ¶
type Cmd struct {
Section Section
Name string
Desc string
Min int
Aliases map[string]string
Process func(*Params) error
}
Cmd is a command implementation.
type ExecType ¶
type ExecType int
ExecType represents the type of execution requested.
const ( // ExecNone indicates no execution. ExecNone ExecType = iota // ExecOnly indicates plain execution only (\g). ExecOnly // ExecPipe indicates execution and piping results (\g |file) ExecPipe // ExecSet indicates execution and setting the resulting columns as // variables (\gset). ExecSet // ExecExec indicates execution and executing the resulting rows (\gexec). ExecExec )
type Handler ¶
type Handler interface {
// IO handles the handler's IO.
IO() rline.IO
// User returns the current user.
User() *user.User
// URL returns the current database URL.
URL() *dburl.URL
// DB returns the current database connection.
DB() drivers.DB
// Last returns the last executed query.
Last() string
// Buf returns the current query buffer.
Buf() *stmt.Stmt
// Reset resets the last and current query buffer.
Reset([]rune)
// Open opens a database connection.
Open(...string) error
// Close closes the current database connection.
Close() error
// ChangePassword changes the password for a user.
ChangePassword(string) (string, error)
// ReadVar reads a variable of a specified type.
ReadVar(string, string) (string, error)
// Include includes a file.
Include(string, bool) error
// Begin begins a transaction.
Begin() error
// Commit commits the current transaction.
Commit() error
// Rollback aborts the current transaction.
Rollback() error
// Highlight highlights the statement.
Highlight(io.Writer, string) error
}
Handler is the shared interface for a command handler.
type Metacmd ¶
type Metacmd uint
Metacmd represents a command and associated meta information about it.
const ( // None is an empty command. None Metacmd = iota // Question is question meta command (\?) Question // Quit is the quit meta command (\?). Quit // Copyright is the copyright meta command (\copyright). Copyright // Connect is the connect meta command (\c). Connect // Disconnect is the disconnect meta command (\Z). Disconnect // Password is the change password meta command (\password). Password // ConnInfo is the connection info meta command (\conninfo). ConnInfo // Drivers is the driver info meta command (\drivers). Drivers // Describe is the describe meta command (\d and variants). Describe // Exec is the execute meta command (\g and variants). Exec // Edit is the edit query buffer meta command (\e). Edit // Print is the print query buffer meta command (\p). Print // Reset is the reset query buffer meta command (\r). Reset // Echo is the echo meta command (\echo). Echo // Write is the write meta command (\w). Write // ChangeDir is the system change directory meta command (\cd). ChangeDir // SetEnv is the system set environment variable meta command (\setenv). SetEnv // ShellExec is the system shell exec meta command (\!). ShellExec // Include is the system include file meta command (\i and variants). Include // Begin is the transaction begin meta command (\begin). Begin // Commit is the transaction commit meta command (\commit). Commit // Rollback is the transaction rollback (abort) meta command (\rollback). Rollback // Prompt is the variable prompt meta command (\prompt). Prompt // Set is the variable set meta command (\set). Set // Unset is the variable unset meta command (\unset). Unset )
Command types.
type Params ¶ added in v0.5.0
type Params struct {
// H is the handler.
H Handler
// N is the name of the command.
N string
// P are the passed parameters.
P []string
// R is the resulting state of the command execution.
R Res
}
Params wraps command parameters.
func (*Params) A ¶ added in v0.5.0
A returns all remaining, unprocessed parameters, incrementing p.R.processed appropriately.
type Res ¶
type Res struct {
// Quit instructs the handling code to quit.
Quit bool
// Exec informs the handling code of the type of execution.
Exec ExecType
// ExecParam is an accompanying parameter for execution. For ExecPipe, it
// will be the name of a file. For ExecSet it will be the variable prefix.
ExecParam string
// Processed informs the handling code how many parameters went
// unprocessed. A value of 0 means that no parameters were processed.
Processed int
}
Res is the result of a meta command execution.
type RunnerFunc ¶
RunnerFunc is a type wrapper for a single func satisfying Runner.Run.
type Section ¶
type Section string
Section is a meta command section.
const ( SectionGeneral Section = "General" SectionHelp Section = "Help" SectionQueryBuffer Section = "Query Buffer" SectionTransaction Section = "Transaction" SectionInputOutput Section = "Input/Output" SectionInformational Section = "Informational" SectionFormatting Section = "Formatting" SectionConnection Section = "Connection" SectionOperatingSystem Section = "Operating System" SectionVariables Section = "Variables" )
Meta command section types.
Click to show internal directories.
Click to hide internal directories.