You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

80 lines
2.0 KiB

// ------------------------------------------------------------------------
// Project atila
// Active Thing (activething.com) git.activething.com/go
//
// File name main.go
// Created by DEV
// Modified 16/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 main
import (
"activething.com/go/gogo/core/errs"
"activething.com/go/gogo/packs/pjson"
"fmt"
)
type A struct {
CampoInt int
Cadena string
Arrays []int64
}
func main() {
pk := pjson.NewPacker()
t := A {
CampoInt: 23,
Cadena: "Esto es una cadena",
Arrays: []int64{233,222,221},
}
/*
pk.PackList(func(p packs.PackListBuilder, flags packs.Flags){
p.ItemUInt64(0,flags)
p.ItemFloat64(7.8,flags)
p.ItemList(func (p1 packs.PackListBuilder, f packs.Flags){
p1.ItemString("MICasa",flags)
p1.ItemString("Coche",flags)
},flags)
p.ItemObject(func (b packs.PackObjectBuilder, f packs.Flags) {
b.FieldString("field1","Esto es un campo",f)
b.FieldDate("field2",time.Now(),f)
},flags)
p.ItemMap(func (b packs.PackMapBuilder,f packs.Flags){
b.KeyValueString(2,"Una cosita",0)
b.KeyValueInt64(3.4,5,0)
},flags)
},0)
errs.Test(pk.Error(),true)
fmt.Printf("Paquete %s\n",pk.Packet())
*/
pk.PackAny(t,0)
errs.Test(pk.Error(),true)
fmt.Printf("Paquete %s\n",pk.Packet())
}

Powered by TurnKey Linux.