func unpack()

in react-native-pytorch-core/ios/ML/Processing/BaseIValuePacker.swift [57:82]


    func unpack(ivalue: IValue, params: NSDictionary, modelSpec: JSON) throws -> [String: Any] {
        let unpack = modelSpec["unpack"]

        guard let type = unpack["type"].string else {
            throw BaseIValuePackerError.InvalidUnpackType
        }

        var map: [String: Any] = [String: Any]()
        switch type {
        case "tensor":
            try unpackTensor(ivalue: ivalue, unpack: unpack, map: &map)
        case "argmax":
            try unpackArgmax(ivalue: ivalue, unpack: unpack, map: &map)
        case "tensor_to_image":
            try unpackTensorToImage(ivalue: ivalue, unpack: unpack, map: &map)
        case "bert_decode_qa_answer":
            try decodeBertQAAnswer(ivalue: ivalue, unpack: unpack, map: &map)
        case "bounding_boxes":
            try decodeObjects(ivalue: ivalue, unpack: unpack, params: params, map: &map)
        case "string":
            try decodeTensorToString(ivalue: ivalue, unpack: unpack, map: &map)
        default:
            throw BaseIValuePackerError.InvalidUnpackType
        }
        return map
    }