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.

72 lines
1.8 KiB

// ------------------------------------------------------------------------
// 🚀 Project active3
// 🔗 Active Thing (activething.com) git.activething.com/go
//
// File name with_field.go
// ✍️ Created by DEV
// 📅 Modified 05/05/2024
//
// 🔒 Copyright 2024 activething.com
//
// 📜 LICENSE --------------------------------------------------------------
// 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 wrap
import (
"blds"
"errs/erstfy"
"flds"
)
type (
Field struct {
error
flds.Field
}
)
func WithField (err error, field flds.Field) *Field {
if err == nil { panic(G.ErrNilWrap) }
if field == nil { panic(flds.G.ErrInvalidFieldNil) }
return &Field{
error: err,
Field: field,
}
}
func WithFieldNew (err error, name string, value any) *Field {
return WithField(err,flds.CreateFromValue(name,value)) }
func (e Field) String () string {
return e.Stringify(false) }
func (e Field) Stringify (partial bool) string {
ln := erstfy.DefaultStringer().LabelLine(e.Name(),string(e.Append(nil)))
if partial {
return ln
}
return erstfy.DefaultStringer().Stringify(e.error,ln) }
func (e Field) BuildField (obuilder blds.ObjectBuilder) {
e.Field.BuildField(obuilder) }

Powered by TurnKey Linux.