Class RuntimeMapField<T,​K,​V>


  • abstract class RuntimeMapField<T,​K,​V>
    extends Field<T>
    A runtime field for a Map. Allows null keys and values.
    • Field Detail

      • schema

        protected final MapSchema<K,​V> schema
        Since we cannot inherit multiple classes, we create this Map schema simply to delegate to the wrapping class' abstract methods.
    • Method Detail

      • kFrom

        protected abstract K kFrom​(Input input,
                                   MapSchema.MapWrapper<K,​V> wrapper)
                            throws java.io.IOException
        Throws:
        java.io.IOException
      • vPutFrom

        protected abstract void vPutFrom​(Input input,
                                         MapSchema.MapWrapper<K,​V> wrapper,
                                         K key)
                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • kTo

        protected abstract void kTo​(Output output,
                                    int fieldNumber,
                                    K key,
                                    boolean repeated)
                             throws java.io.IOException
        Throws:
        java.io.IOException
      • vTo

        protected abstract void vTo​(Output output,
                                    int fieldNumber,
                                    V value,
                                    boolean repeated)
                             throws java.io.IOException
        Throws:
        java.io.IOException
      • kTransfer

        protected abstract void kTransfer​(Pipe pipe,
                                          Input input,
                                          Output output,
                                          int number,
                                          boolean repeated)
                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • vTransfer

        protected abstract void vTransfer​(Pipe pipe,
                                          Input input,
                                          Output output,
                                          int number,
                                          boolean repeated)
                                   throws java.io.IOException
        Throws:
        java.io.IOException