Lines Matching defs:fnum
2728 static void set_field(struct zmap *unused, int fnum, char *s, size_t size)
2730 if (fnum < 0 || fnum > FIELDS_MAX) FFATAL("bad field num %d\n", fnum);
2732 // Need nfields to be > fnum b/c e.g. fnum==1 implies 2 TT.fields
2733 while (nfields <= fnum)
2735 set_zvalue_str(&FIELD[fnum], s, size);
2736 set_nf(fnum);
2737 check_numeric_string(&FIELD[fnum]);
2816 static struct zvalue *get_field_ref(int fnum)
2818 if (fnum < 0 || fnum > FIELDS_MAX) error_exit("bad field num %d", fnum);
2819 if (fnum > TT.nf_internal) {
2820 // Ensure TT.fields list is large enough for fnum
2821 // Need len of TT.fields to be > fnum b/c e.g. fnum==1 implies 2 TT.fields
2822 for (int i = TT.nf_internal + 1; i <= fnum; i++) {
2826 set_nf(fnum);
2828 return &FIELD[fnum];
2848 static void fixup_fields(int fnum)
2850 if (fnum == THIS_MEANS_SET_NF) { // NF was assigned to
2852 // Ensure TT.fields list is large enough for fnum
2853 // Need len of TT.fields to be > fnum b/c e.g. fnum==1 implies 2 TT.fields
2862 // fnum is # of field that was just updated.
2865 to_str(&FIELD[fnum]);
2866 if (fnum) check_numeric_string(&FIELD[fnum]);
2867 if (fnum) rebuild_field0();
2873 static void push_field(int fnum)
2875 if (fnum < 0 || fnum > FIELDS_MAX) error_exit("bad field num %d", fnum);
2877 if (fnum > TT.nf_internal) push_val(&uninit_string_zvalue);
2878 else push_val(&FIELD[fnum]);