(ctx *ReadContext, refMode RefMode, readType bool, hasGenerics bool, value reflect.Value)
| 2838 | } |
| 2839 | |
| 2840 | func (s *skipStructSerializer) Read(ctx *ReadContext, refMode RefMode, readType bool, hasGenerics bool, value reflect.Value) { |
| 2841 | buf := ctx.Buffer() |
| 2842 | ctxErr := ctx.Err() |
| 2843 | switch refMode { |
| 2844 | case RefModeTracking: |
| 2845 | refID, refErr := ctx.RefResolver().TryPreserveRefId(buf) |
| 2846 | if refErr != nil { |
| 2847 | ctx.SetError(FromError(refErr)) |
| 2848 | return |
| 2849 | } |
| 2850 | if refID < int32(NotNullValueFlag) { |
| 2851 | // Reference found, nothing to skip |
| 2852 | return |
| 2853 | } |
| 2854 | case RefModeNullOnly: |
| 2855 | flag := buf.ReadInt8(ctxErr) |
| 2856 | if flag == NullFlag { |
| 2857 | return |
| 2858 | } |
| 2859 | } |
| 2860 | if ctx.HasError() { |
| 2861 | return |
| 2862 | } |
| 2863 | s.ReadData(ctx, value) |
| 2864 | } |
| 2865 | |
| 2866 | func (s *skipStructSerializer) ReadWithTypeInfo(ctx *ReadContext, refMode RefMode, typeInfo *TypeInfo, value reflect.Value) { |
| 2867 | // typeInfo is already read, don't read it again - just skip data |
no test coverage detected