mutating func appendBareItem()

in Sources/StructuredFieldValues/Encoder/StructuredFieldValueEncoder.swift [898:923]


        mutating func appendBareItem(_ bareItem: BareItem) throws {
            switch self {
            case .listHeader:
                self = .list([.item(Item(bareItem: bareItem, parameters: [:]))])

            case .list(var list):
                list.append(.item(Item(bareItem: bareItem, parameters: [:])))
                self = .list(list)

            case .innerList(var list):
                list.bareInnerList.append(Item(bareItem: bareItem, parameters: [:]))
                self = .innerList(list)

            case .bareInnerList(var list):
                list.append(Item(bareItem: bareItem, parameters: [:]))
                self = .bareInnerList(list)

            case .itemOrInnerList(let params):
                // This is an inner list.
                self = .innerList(InnerList(bareInnerList: [Item(bareItem: bareItem, parameters: [:])], parameters: params))

            case .dictionaryHeader, .dictionary, .itemHeader, .item,
                 .parameters:
                throw StructuredHeaderError.invalidTypeForItem
            }
        }