2022-07-07 20:11:50 +00:00
|
|
|
// Copyright (c) 2015, Emir Pasic. All rights reserved.
|
|
|
|
// Use of this source code is governed by a BSD-style
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
|
|
|
package containers
|
|
|
|
|
|
|
|
// JSONSerializer provides JSON serialization
|
|
|
|
type JSONSerializer interface {
|
|
|
|
// ToJSON outputs the JSON representation of containers's elements.
|
|
|
|
ToJSON() ([]byte, error)
|
2024-10-16 10:54:40 +00:00
|
|
|
// MarshalJSON @implements json.Marshaler
|
|
|
|
MarshalJSON() ([]byte, error)
|
2022-07-07 20:11:50 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
// JSONDeserializer provides JSON deserialization
|
|
|
|
type JSONDeserializer interface {
|
|
|
|
// FromJSON populates containers's elements from the input JSON representation.
|
|
|
|
FromJSON([]byte) error
|
2024-10-16 10:54:40 +00:00
|
|
|
// UnmarshalJSON @implements json.Unmarshaler
|
|
|
|
UnmarshalJSON([]byte) error
|
2022-07-07 20:11:50 +00:00
|
|
|
}
|