Lines Matching refs:field
121 /// At least one field has a serde(getter) attribute, implying that the
122 /// remote type has a private field.
158 // field type that will be deserialized by us, plus a bound `T: Default` for
159 // each generic field type that will be set to a default value.
203 // field.
204 fn needs_deserialize_bound(field: &attr::Field, variant: Option<&attr::Variant>) -> bool {
205 !field.skip_deserializing()
206 && field.deserialize_with().is_none()
207 && field.de_bound().is_none()
217 fn requires_default(field: &attr::Field, _variant: Option<&attr::Variant>) -> bool {
218 if let attr::Default::Default = *field.default() {
251 // The union of lifetimes borrowed by each field of the container.
262 for field in cont.data.all_fields() {
263 if !field.attrs.skip_deserializing() {
264 lifetimes.extend(field.attrs.borrowed_lifetimes().iter().cloned());
367 let assign = fields.iter().map(|field| {
368 let member = &field.member;
369 if ptr::eq(field, transparent_field) {
372 let value = match field.attrs.default() {
468 .filter(|field| !field.attrs.skip_deserializing())
586 .filter(|field| !field.attrs.skip_deserializing())
600 // We do not generate deserialize_in_place if every field has a
684 .filter(|field| !field.attrs.skip_deserializing())
694 let let_values = vars.clone().zip(fields).map(|(var, field)| {
695 if field.attrs.skip_deserializing() {
696 let default = Expr(expr_is_missing(field, cattrs));
701 let visit = match field.attrs.deserialize_with() {
703 let field_ty = field.ty;
704 let span = field.original.span();
710 let (wrapper, wrapper_ty) = wrap_deserialize_field_with(params, field.ty, path);
719 let value_if_none = expr_is_missing_seq(None, index_in_seq, field, cattrs, expecting);
780 .filter(|field| !field.attrs.skip_deserializing())
790 let write_values = fields.iter().map(|field| {
791 let member = &field.member;
793 if field.attrs.skip_deserializing() {
794 let default = Expr(expr_is_missing(field, cattrs));
799 let value_if_none = expr_is_missing_seq(Some(quote!(self.place.#member = )), index_in_seq, field, cattrs, expecting);
800 let write = match field.attrs.deserialize_with() {
811 let (wrapper, wrapper_ty) = wrap_deserialize_field_with(params, field.ty, path);
856 field: &Field,
859 let field_ty = field.ty;
861 let value = match field.attrs.deserialize_with() {
863 let span = field.original.span();
952 .filter(|&(_, field)| !field.attrs.skip_deserializing() && !field.attrs.flatten())
953 .map(|(i, field)| {
955 field.attrs.name().deserialize_name(),
957 field.attrs.aliases(),
1109 .filter(|&(_, field)| !field.attrs.skip_deserializing())
1110 .map(|(i, field)| {
1112 field.attrs.name().deserialize_name(),
1114 field.attrs.aliases(),
1579 field: __Field,
1591 match self.field {
1630 field: __field,
1680 field: __field,
1843 let default = variant.fields.first().map(|field| {
1844 let default = Expr(expr_is_missing(field, cattrs));
1888 let default = variant.fields.first().map(|field| {
1889 let default = Expr(expr_is_missing(field, cattrs));
1926 field: &Field,
1931 if field.attrs.skip_deserializing() {
1932 let default = Expr(expr_is_missing(field, cattrs));
1939 match field.attrs.deserialize_with() {
1941 let field_ty = field.ty;
1942 let span = field.original.span();
1950 let (wrapper, wrapper_ty) = wrap_deserialize_field_with(params, field.ty, path);
1964 field: &Field,
1968 let field_ty = field.ty;
1969 match field.attrs.deserialize_with() {
1971 let span = field.original.span();
2042 /// non-skipped field of the struct
2207 "field identifier"
2360 let index_expecting = if is_variant { "variant" } else { "field" };
2464 // Create the field names for the fields.
2468 .map(|(i, field)| (field, field_i(i)))
2471 // Declare each field that will be deserialized.
2474 .filter(|&&(field, _)| !field.attrs.skip_deserializing() && !field.attrs.flatten())
2475 .map(|(field, name)| {
2476 let field_ty = field.ty;
2494 // Match arms to extract a value for a field.
2497 .filter(|&&(field, _)| !field.attrs.skip_deserializing() && !field.attrs.flatten())
2498 .map(|(field, name)| {
2499 let deser_name = field.attrs.name().deserialize_name();
2501 let visit = match field.attrs.deserialize_with() {
2503 let field_ty = field.ty;
2504 let span = field.original.span();
2512 let (wrapper, wrapper_ty) = wrap_deserialize_field_with(params, field.ty, path);
2551 let all_skipped = fields.iter().all(|field| field.attrs.skip_deserializing());
2573 .filter(|&&(field, _)| !field.attrs.skip_deserializing() && !field.attrs.flatten())
2574 .map(|(field, name)| {
2575 let missing_expr = Match(expr_is_missing(field, cattrs));
2587 .filter(|&&(field, _)| field.attrs.flatten() && !field.attrs.skip_deserializing())
2588 .map(|(field, name)| {
2589 let field_ty = field.ty;
2590 let func = match field.attrs.deserialize_with() {
2592 let span = field.original.span();
2612 _serde::de::Error::custom(format_args!("unknown field `{}`", &__key)));
2623 let result = fields_names.iter().map(|(field, name)| {
2624 let member = &field.member;
2625 if field.attrs.skip_deserializing() {
2626 let value = Expr(expr_is_missing(field, cattrs));
2683 // Create the field names for the fields.
2687 .map(|(i, field)| (field, field_i(i)))
2690 // For deserialize_in_place, declare booleans for each field that will be
2694 .filter(|&&(field, _)| !field.attrs.skip_deserializing())
2701 // Match arms to extract a value for a field.
2704 .filter(|&&(field, _)| !field.attrs.skip_deserializing())
2705 .map(|(field, name)| {
2706 let deser_name = field.attrs.name().deserialize_name();
2707 let member = &field.member;
2709 let visit = match field.attrs.deserialize_with() {
2716 let (wrapper, wrapper_ty) = wrap_deserialize_field_with(params, field.ty, path);
2748 let all_skipped = fields.iter().all(|field| field.attrs.skip_deserializing());
2771 .filter(|&&(field, _)| !field.attrs.skip_deserializing())
2772 .map(|(field, name)| {
2773 let missing_expr = expr_is_missing(field, cattrs);
2776 if field.attrs.default().is_none()
2778 && field.attrs.deserialize_with().is_some()
2787 let member = &field.member;
2883 let field_tys = variant.fields.iter().map(|field| field.ty);
2904 let field_tys = variant.fields.iter().map(|field| field.ty);
2923 let members = variant.fields.iter().map(|field| &field.member);
2940 fn expr_is_missing(field: &Field, cattrs: &attr::Container) -> Fragment {
2941 match field.attrs.default() {
2943 let span = field.original.span();
2955 let member = &field.member;
2961 let name = field.attrs.name().deserialize_name();
2962 match field.attrs.deserialize_with() {
2964 let span = field.original.span();
2981 field: &Field,
2985 match field.attrs.default() {
2987 let span = field.original.span();
2998 let member = &field.member;