Documentation ¶
Index ¶
- type Change
- type Reader
- func (T *Reader) Array(key string, def ...[]interface{}) []interface{}
- func (T *Reader) Bool(key string, def ...bool) bool
- func (T *Reader) BoolAnyEqual(eq bool, keys ...string) bool
- func (T *Reader) Change() *Change
- func (T *Reader) Err() error
- func (T *Reader) Float64(key string, def ...float64) float64
- func (T *Reader) Float64AnyEqual(eq float64, keys ...string) bool
- func (T *Reader) Has(keys ...interface{}) bool
- func (T *Reader) Index(i int, def ...interface{}) interface{}
- func (T *Reader) IndexArray(i int, def ...[]interface{}) []interface{}
- func (T *Reader) IndexFloat64(i int, def ...float64) float64
- func (T *Reader) IndexInt64(i int, def ...int64) int64
- func (T *Reader) IndexString(i int, def ...string) string
- func (T *Reader) Int64(key string, def ...int64) int64
- func (T *Reader) Int64AnyEqual(eq int64, keys ...string) bool
- func (T *Reader) Interface(key string, def ...interface{}) interface{}
- func (T *Reader) IsNil(keys ...interface{}) bool
- func (T *Reader) MarshalJSON() ([]byte, error)
- func (T *Reader) NewArray(key string, def ...[]interface{}) *Reader
- func (T *Reader) NewIndex(i int, def ...interface{}) *Reader
- func (T *Reader) NewIndexArray(i int, def ...[]interface{}) *Reader
- func (T *Reader) NewInterface(key string, def ...interface{}) *Reader
- func (T *Reader) NewSlice(s, e int) *Reader
- func (T *Reader) NoZero(y bool) *Reader
- func (T *Reader) ReadFrom(r io.Reader) (int64, error)
- func (T *Reader) Reset(i interface{}) error
- func (T *Reader) Slice(s, e int) []interface{}
- func (T *Reader) String(key string, def ...string) string
- func (T *Reader) StringAnyEqual(eq string, keys ...string) bool
- func (T *Reader) UnmarshalJSON(data []byte) error
- type Writer
- func (T *Writer) Message(s interface{})
- func (T *Writer) Messagef(f string, a ...interface{})
- func (T *Writer) Result(key string, i interface{})
- func (T *Writer) SetResult(i interface{})
- func (T *Writer) Status(d int)
- func (T *Writer) String() string
- func (T *Writer) WriteTo(w io.Writer) (n int64, err error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Reader ¶
type Reader struct { M map[string]interface{} // 记录对象 A []interface{} // 记录数组 // contains filtered or unexported fields }
func NewReader ¶
func NewReader(i interface{}) *Reader
读取
i interface{} 数据,支持map,array,slice,io.Reader, *string,[]byte。你也可以对 Reader.M 或 Reader.A 进行赋值。 *Reader 读取对象
func (*Reader) Array ¶
读取值是数组类型的
key string 键名 def []interface{} 默认值 []interface{} 读取的数组类型 例如:{"a":[1,3,4,5,6]} Array("a",[7,8,9,0]) == [1,3,4,5,6] 或 Array("b",[7,8,9,0]) == [7,8,9,0]
func (*Reader) Bool ¶
读取值是布尔值类型的
key string, def bool 键名,默认值 bool 读取的布尔值 例如:{"a":true} Bool("a",false) == true
func (*Reader) BoolAnyEqual ¶
判断值是否等于eq这个布尔值
eq bool 判断keys是否等于这个布尔值 keys ... string 支持多个键名判断 bool 值等于eq,返回true 例如:{"a":true} BoolAnyEqual(false,"a") == false 或 BoolAnyEqual(true,"a") == true
func (*Reader) Float64 ¶
读取值是浮点数类型的
key, def float64 键名,默认值 float64 读取的浮点数 例如:{"a":123} Float64("a",123) == 123
func (*Reader) Float64AnyEqual ¶
判断值是否等于eq这个浮点数
eq string 判断keys是否等于这个浮点数 keys ... string 支持多个键名判断 bool 值等于eq,返回true 例如:{"a":123} Float64AnyEqual(456,"a") == false 或 Float64AnyEqual(123,"a") == true
func (*Reader) Has ¶
检查键是否存在
keys ...interface{} 键名,如果需要判断切片的长度,可以传入int类型。当然也可以这样 len(Reader.A) bool 存在,返回true 例如:{"a":"b"} Has("a") == true 或 Has("b") == false
func (*Reader) Index ¶
读取值是切片类型的
i int 索引位置 def nterface{} 默认值 interface{} 读取到的切片值 例如:[1,2,3,4,5,6] Index(1,11) == 1 或 Index(8,22) == 22
func (*Reader) IndexArray ¶
读取切片类型的值是数组类型的
i int 索引位置 def []interface{} 默认值 []interface{} 读取到的切片值 例如:[[1],[2]] IndexArray(1,[]interface{1,2}) == [2] 或 IndexArray(3,[]interface{1,2}) == [1,2]
func (*Reader) IndexFloat64 ¶
读取切片类型的值是浮点数类型的
i int 索引位置 def float64 默认值 float64 读取到的浮点数 例如:[1,2,[7,8,9,0],4,5,6] IndexInt64(1,11) == 2 或 IndexInt64(2,22) == 22
func (*Reader) IndexInt64 ¶
读取切片类型的值是整数类型的
i int 索引位置 def int64 默认值 int64 读取到的整数 例如:[1,2,[7,8,9,0],4,5,6] IndexInt64(1,11) == 2 或 IndexInt64(2,22) == 22
func (*Reader) IndexString ¶
读取切片类型的值是字符串类型的
i int 索引位置 def string 默认值 string 读取到的切片值 例如:["1","2",[7,8,9,0],"4","5","6"] IndexString(1,"11") == "2" 或 IndexString(2,"22") == "22"
func (*Reader) Int64 ¶
读取值是整数类型的
key, def int64 键名,默认值 int64 读取的整数 例如:{"a":123} Int64("a",0) == 123 或 Int64("b",456) == 456
func (*Reader) Int64AnyEqual ¶
判断值是否等于eq这个整数
eq int64 判断keys是否等于这个整数 keys ... int64 支持多个键名判断 bool 值等于eq,返回true 例如:{"a":123} Int64AnyEqual(456,"a") == false 或 Int64AnyEqual(123,"a") == true
func (*Reader) Interface ¶
读取值是接口类型的
key string 键名 def interface{} 默认值 interface{} 读取的接口类型,需要转换 例如:{"a":"b"} Interface("a","c") == "b" 或 Interface("b","c") == "c"
func (*Reader) NewArray ¶
读取值是数组类型的
key string 键名 def []interface{} 默认值 []interface{} 读取的数组类型 例如:{"a":[1,3,4,5,6]} Array("a",[7,8,9,0]) == *[1,3,4,5,6] 或 Array("b",[7,8,9,0]) == *[7,8,9,0]
func (*Reader) NewIndex ¶
读取值是切片类型的
i int 索引位置 def nterface{} 默认值 *Reader 读取到的切片值 例如:[1,2,[7,8,9,0],4,5,6] NewIndex(2,[11,22,33]) == *[7,8,9,0] 或 NewIndex(3,[11,22,33]) == *[] 或 NewIndex(33,[11,22,33]) == *[11,22,33]
func (*Reader) NewIndexArray ¶
读取切片类型的值是数组类型的
i int 索引位置 def []interface{} 默认值 *Reader 读取到的切片值 例如:[[1],[2]] NewIndexArray(1,[]interface{1,2}) == *[2] 或 NewIndexArray(3,[]interface{1,2}) == *[1,2]
func (*Reader) NewInterface ¶
读取值是接口类型的
key string 键名 def interface{} 默认值 interface{} 读取的接口类型,需要转换 例如:{"a":{"b":123}} NewInterface("a",*{"b":456}) == *{"b":123} 或 NewInterface("b",*{"b":456}) == *{"b":456}
func (*Reader) NewSlice ¶
读取值是切片类型的,设定开始和结束位置来读取。
s, e int 开始,结束。 *Reader 读取到的切片对象 例如:[1,2,3,4,5,6] NewSlice(1,2) == *[2] 或 NewSlice(8,9) == *[]
func (*Reader) Reset ¶
重置,如果需要重置为空,需要先调用一次.Reset(nil)
i interface{} 支持格式,包括:map,array,slice,io.Reader,*string, []byte error 错误
func (*Reader) Slice ¶
读取值是切片类型的,设定开始和结束位置来读取。
s, e int 开始,结束。 []interface{} 读取到的切片 例如:[1,2,3,4,5,6] Slice(1,2) == [2] 或 Slice(8,9) == []
func (*Reader) String ¶
读取值是字符串类型的
key, def string 键名,默认值 string 读取的字符串 例如:{"a":"b"} String("a","") == "b"
func (*Reader) StringAnyEqual ¶
判断值是否等于eq这个字符串
eq string 判断keys是否等于这个字符串 keys ... string 支持多个键名判断 bool 值等于eq,返回true 例如:{"a":"b"} StringAnyEqual("","a") == false 或 StringAnyEqual("b","a") == true
type Writer ¶
type Writer struct {
M map[string]interface{} // 写记录
}
func NewWriter ¶
func NewWriter() *Writer
写,这是http响应的一种特定格式。采用格式为:{"Status":200,"Message":"内容","Result":[{...},{...}]}
Click to show internal directories.
Click to hide internal directories.