// ------------------------------------------------------------------------ // Project atila // Active Thing (activething.com) git.activething.com/go // // File name map_packer.go // Created by DEV // Modified 23/01/2024 // // Copyright 2024 activething.com // ------------------------------------------------------------------------ // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // ------------------------------------------------------------------------ package pjson import ( "activething.com/go/gogo/packs" "time" ) func (p *Packer) KeyValue ( key any, value any) { p.addKey(key,func (pk *Packer) { pk.Pack(value) }) } func (p *Packer) KeyValueRaw (key any, value []byte) { p.addKey(key,func (pk *Packer) { pk.PackRaw(value) }) } func (p *Packer) KeyValueBinary ( key any, value []byte) { p.addKey(key,func (pk *Packer) { pk.PackBinary(value) }) } func (p *Packer) KeyValueString ( key any, value string) { p.addKey(key,func (pk *Packer) { pk.PackString(value) }) } func (p *Packer) KeyValueBool ( key any, value bool) { p.addKey(key,func (pk *Packer) { pk.PackBool(value) }) } func (p *Packer) KeyValueInt8 ( key any, value int8) { p.addKey(key,func (pk *Packer) { pk.PackInt64(int64(value)) }) } func (p *Packer) KeyValueInt16 ( key any, value int16) { p.addKey(key,func (pk *Packer) { pk.PackInt64(int64(value)) }) } func (p *Packer) KeyValueInt32 ( key any, value int32) { p.addKey(key,func (pk *Packer) { pk.PackInt64(int64(value)) }) } func (p *Packer) KeyValueInt64 ( key any, value int64) { p.addKey(key,func (pk *Packer) { pk.PackInt64(value) }) } func (p *Packer) KeyValueUInt8 ( key any, value uint8) { p.addKey(key,func (pk *Packer) { pk.PackUInt64(uint64(value)) }) } func (p *Packer) KeyValueUInt16 ( key any, value uint16) { p.addKey(key,func (pk *Packer) { pk.PackUInt64(uint64(value)) }) } func (p *Packer) KeyValueUInt32 ( key any, value uint32) { p.addKey(key,func (pk *Packer) { pk.PackUInt64(uint64(value)) }) } func (p *Packer) KeyValueUInt64 ( key any, value uint64) { p.addKey(key,func (pk *Packer) { pk.PackUInt64(value) }) } func (p *Packer) KeyValueFloat32 ( key any, value float32) { p.addKey(key,func (pk *Packer) { pk.PackFloat64(float64(value)) }) } func (p *Packer) KeyValueFloat64 ( key any, value float64) { p.addKey(key,func (pk *Packer) { pk.PackFloat64(value) }) } func (p *Packer) KeyValueDate ( key any, value time.Time) { p.addKey(key,func (pk *Packer) { pk.PackDate(value) }) } func (p *Packer) KeyValueList (key any, builder func(packer packs.ListPacker)) { p.addKey(key,func (pk *Packer) { pk.PackList(builder) }) } func (p *Packer) KeyValueMap (key any, builder func(packer packs.MapPacker )) { p.addKey(key,func (pk *Packer) { pk.PackMap (builder) }) } func (p *Packer) KeyValueObject(key any, builder func(packer packs.ObjectPacker)) { p.addKey(key,func (pk *Packer){ pk.PackObject (builder) }) }