Lines Matching defs:datum
49 _tnf_check_array(tnf_datum_t datum)
53 CHECK_RECORD(datum); /* XXX */
55 info = DATUM_INFO(datum);
58 _tnf_error(DATUM_TNF(datum), TNF_ERR_TYPEMISMATCH);
68 tnf_datum_t datum,
75 info = DATUM_INFO(datum);
79 _tnf_error(DATUM_TNF(datum), TNF_ERR_INTERNAL);
95 tnf_get_element_count(tnf_datum_t datum)
100 CHECK_ARRAY(datum);
102 (void) get_array_info(datum, &base, &elt, &elt_base);
105 self_size = _tnf_get_self_size(DATUM_TNF(datum),
107 DATUM_RECORD(datum));
116 tnf_get_element(tnf_datum_t datum, unsigned index)
122 CHECK_ARRAY(datum);
124 (void) get_array_info(datum, &base, &elt, &elt_base);
127 self_size = _tnf_get_self_size(DATUM_TNF(datum),
129 DATUM_RECORD(datum));
134 _tnf_error(DATUM_TNF(datum), TNF_ERR_BADINDEX);
139 * If tagged, use the tag to construct datum
145 tnf = DATUM_TNF(datum);
148 (DATUM_VAL(datum) + offset));
153 return (DATUM(elt, DATUM_VAL(datum) + offset));
161 tnf_get_element_type(tnf_datum_t datum)
165 CHECK_ARRAY(datum);
167 (void) get_array_info(datum, &base, &elt, &elt_base);
169 return (RECORD_DATUM(DATUM_TNF(datum), elt->tag));
177 tnf_get_chars(tnf_datum_t datum)
181 CHECK_ARRAY(datum);
183 info = get_array_info(datum, &base, &elt, &elt_base);
186 _tnf_error(DATUM_TNF(datum), TNF_ERR_TYPEMISMATCH);
188 return (DATUM_VAL(datum) + base->hdrsize);
196 tnf_get_elements(tnf_datum_t datum)
200 CHECK_ARRAY(datum);
202 (void) get_array_info(datum, &base, &elt, &elt_base);
204 return ((caddr_t)(DATUM_VAL(datum) + base->hdrsize));