code: func (m *Mapper) FieldMap(v reflect.Value) map[string]reflect.Value {
  	v = reflect.Indirect(v)
  	mustBe(v, reflect.Struct)
  
  	r := map[string]reflect.Value{}
  	tm := m.TypeMap(v.Type())
  	for tagName, fi := range tm.Names {
  		r[tagName] = FieldByIndexes(v, fi.Index)
  	}
  	return r
  }
docs: // FieldMap returns the mapper's mapping of field names to reflect values.  Panics
  // if v's Kind is not Struct, or v is not Indirectable to a struct kind.