package
0.0.0-20220323104224-5d6a5f92c723
Repository: https://github.com/reisender/pipe.git
Documentation: pkg.go.dev

# Functions

Get will get the desired type out of wrapped messages.
GetNonIDKeys gets all the keys for the record that aren't a part of the ID.
NewBasicRecord creates a *BasicRecord empty with the properties initialized.
NewDeleteDelta is a delete change record related to a table.
NewIDRecord created a record that implements IDRecord and as such is identifiable // with some of value or combination of values from the record.
NewInsertDelta is an insert change record related to a table.
NewQuery is a constructor for a Query struct.
NewRecord creates a *Record empty.
NewRecordFromMSI creates a *Record from a map[string]interface{} This is a convenience function to combine new and FromMSI.
NewStructRecord createa a new StructRecord.
NewUpdateDelta is an insert change record related to a table.
RecordToMSI converts any record to a map[string]interface{} (note: column order is not preserved in a map[string]interface{}).
RecordToStrings converts a record to a slice of the values as strings.
String will extract a string from a message one way or another.
Strings will extract a []string from a message one way or another.

# Variables

ErrNotAStruct is for when the provided arg is not a struct.

# Structs

BasicIDRecord is a basic implementation of the IDRecord interface.
BasicRecord is a collection of key/value pairs where the keys are strings.
Bytes wraps a message with the bytes version of the message and keeps the original message around.
Cmd is a message that represents a command to run this is a convenience message type that implements the x.Commander interface.
DeleteDelta is the delta type for updates.
Diff is a message that holds two messages that differ but that match by Key().
Event is a message type that.
FileInfo represents the info including path of a file or directory.
InsertDelta is the delta type for inserts.
Message is a baseline implementation of a Messenger.
Query is an SQL query that has the arguments in a sparate slice.
SQLResult wraps the sql.Result and adds a String func for convenient output of the results.
StructRecord wraps a struct and implements the Record interface based on the given tag lookup as the "Keys".
UpdateDelta is the delta type for updates.

# Interfaces

Clienter is a message interface that has or is an http.Client.
ContextGetter defines what it takes to get the context from a message.
Hasher defines a message that has a Hash() func.
IDRecord is an identifyable record.
Inner defines the In function wrapping messages should implement.
Keyer defines a message that has a Key() func that can be used as the "key" for this message.
MutableIDRecord is the same as IDRecord but with a MutableRecord underlying it.
MutableOrderedRecord is the same as OrderedRecord but wih a MutableRecord.
MutableRecord defines what it takes to mutate a record.
OrderedRecord defines a record that specifies the column order.
PathInfo is the interface for providing the info for a path.
Record defines what it takes to be a record message.
Requester is a message interface that has or is an http.Request.
Stringser the interface for Strings() which is like String() but as a slice of strings.
ToSQLer defines the SQL func to extract the SQL from a message.

# Type aliases

Batch is a message type that can contain a list of other messages.
Metadata is a map to hold metadata about a message.
Path is a string that can be used as a PathInfo implementation.