plugins/input/docker/stdout/docker_stdout_struct_easyjson.go (100 lines of code) (raw):

// Copyright 2021 iLogtail Authors // // 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. // TEMPORARY AUTOGENERATED FILE: easyjson stub code to make the package // compilable during generation. package stdout import ( json "encoding/json" easyjson "github.com/mailru/easyjson" jlexer "github.com/mailru/easyjson/jlexer" jwriter "github.com/mailru/easyjson/jwriter" ) // suppress unused package warning var ( _ *json.RawMessage _ *jlexer.Lexer _ *jwriter.Writer _ easyjson.Marshaler ) func easyjsonAd89f942DecodeLogtailpluginExperimentsJson(in *jlexer.Lexer, out *DockerJSONLog) { isTopLevel := in.IsStart() if in.IsNull() { if isTopLevel { in.Consumed() } in.Skip() return } in.Delim('{') for !in.IsDelim('}') { key := in.UnsafeString() in.WantColon() if in.IsNull() { in.Skip() in.WantComma() continue } switch key { case "log": out.LogContent = string(in.String()) case "stream": out.StreamType = string(in.String()) case "time": out.Time = string(in.String()) default: in.SkipRecursive() } in.WantComma() } in.Delim('}') if isTopLevel { in.Consumed() } } func easyjsonAd89f942EncodeLogtailpluginExperimentsJson(out *jwriter.Writer, in DockerJSONLog) { out.RawByte('{') first := true _ = first { const prefix string = ",\"log\":" if first { first = false out.RawString(prefix[1:]) } else { out.RawString(prefix) } out.String(string(in.LogContent)) } { const prefix string = ",\"stream\":" if first { first = false out.RawString(prefix[1:]) } else { out.RawString(prefix) } out.String(string(in.StreamType)) } { const prefix string = ",\"time\":" if first { first = false out.RawString(prefix[1:]) } else { out.RawString(prefix) } out.String(string(in.Time)) } out.RawByte('}') } // MarshalJSON supports json.Marshaler interface func (v DockerJSONLog) MarshalJSON() ([]byte, error) { w := jwriter.Writer{} easyjsonAd89f942EncodeLogtailpluginExperimentsJson(&w, v) return w.Buffer.BuildBytes(), w.Error } // MarshalEasyJSON supports easyjson.Marshaler interface func (v DockerJSONLog) MarshalEasyJSON(w *jwriter.Writer) { easyjsonAd89f942EncodeLogtailpluginExperimentsJson(w, v) } // UnmarshalJSON supports json.Unmarshaler interface func (v *DockerJSONLog) UnmarshalJSON(data []byte) error { r := jlexer.Lexer{Data: data} easyjsonAd89f942DecodeLogtailpluginExperimentsJson(&r, v) return r.Error() } // UnmarshalEasyJSON supports easyjson.Unmarshaler interface func (v *DockerJSONLog) UnmarshalEasyJSON(l *jlexer.Lexer) { easyjsonAd89f942DecodeLogtailpluginExperimentsJson(l, v) }