fun read()

in thrifty-runtime/src/commonTest/kotlin/com/microsoft/thrifty/protocol/BinaryProtocolTest.kt [176:218]


    fun read(protocol: Protocol) {
        protocol.readStructBegin()
        while (true) {
            val field = protocol.readFieldBegin()
            if (field.typeId == TType.STOP) {
                break
            }
            when (field.fieldId.toInt()) {
                1 -> {
                    if (field.typeId == TType.BYTE) {
                        protocol.readByte()
                    } else {
                        skip(protocol, field.typeId)
                    }
                }
                2 -> {
                    if (field.typeId == TType.I16) {
                        protocol.readI16()
                    } else {
                        skip(protocol, field.typeId)
                    }
                }
                3 -> {
                    if (field.typeId == TType.I16) {
                        protocol.readI16()
                    } else {
                        skip(protocol, field.typeId)
                    }
                }
                4 -> {
                    if (field.typeId == TType.STRING) {
                        protocol.readBinary()
                    } else {
                        skip(protocol, field.typeId)
                    }
                }
                else -> {
                    skip(protocol, field.typeId)
                }
            }
            protocol.readFieldEnd()
        }
    }