1*1cd43426Sandvar.\" $NetBSD: prop_array_util.3,v 1.13 2024/02/10 18:43:51 andvar Exp $ 29b09c481Shaad.\" 3a792b843Sthorpej.\" Copyright (c) 2006, 2020 The NetBSD Foundation, Inc. 49b09c481Shaad.\" All rights reserved. 59b09c481Shaad.\" 69b09c481Shaad.\" This code is derived from software contributed to The NetBSD Foundation 79b09c481Shaad.\" by Jason R. Thorpe. 89b09c481Shaad.\" 99b09c481Shaad.\" Redistribution and use in source and binary forms, with or without 109b09c481Shaad.\" modification, are permitted provided that the following conditions 119b09c481Shaad.\" are met: 129b09c481Shaad.\" 1. Redistributions of source code must retain the above copyright 139b09c481Shaad.\" notice, this list of conditions and the following disclaimer. 149b09c481Shaad.\" 2. Redistributions in binary form must reproduce the above copyright 159b09c481Shaad.\" notice, this list of conditions and the following disclaimer in the 169b09c481Shaad.\" documentation and/or other materials provided with the distribution. 179b09c481Shaad.\" 189b09c481Shaad.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 199b09c481Shaad.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 209b09c481Shaad.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 219b09c481Shaad.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 229b09c481Shaad.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 239b09c481Shaad.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 249b09c481Shaad.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 259b09c481Shaad.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 269b09c481Shaad.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 279b09c481Shaad.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 289b09c481Shaad.\" POSSIBILITY OF SUCH DAMAGE. 299b09c481Shaad.\" 30a792b843Sthorpej.Dd June 2, 2020 319b09c481Shaad.Dt PROP_ARRAY_UTIL 3 329b09c481Shaad.Os 339b09c481Shaad.Sh NAME 349b09c481Shaad.Nm prop_array_util , 359b09c481Shaad.Nm prop_array_get_bool , 369b09c481Shaad.Nm prop_array_set_bool , 37a792b843Sthorpej.Nm prop_array_get_schar , 38a792b843Sthorpej.Nm prop_array_get_uchar , 39a792b843Sthorpej.Nm prop_array_set_schar , 40a792b843Sthorpej.Nm prop_array_set_uchar , 41a792b843Sthorpej.Nm prop_array_get_short , 42a792b843Sthorpej.Nm prop_array_get_ushort , 43a792b843Sthorpej.Nm prop_array_set_short , 44a792b843Sthorpej.Nm prop_array_set_ushort , 45a792b843Sthorpej.Nm prop_array_get_int , 46a792b843Sthorpej.Nm prop_array_get_uint , 47a792b843Sthorpej.Nm prop_array_set_int , 48a792b843Sthorpej.Nm prop_array_set_uint , 49a792b843Sthorpej.Nm prop_array_get_long , 50a792b843Sthorpej.Nm prop_array_get_ulong , 51a792b843Sthorpej.Nm prop_array_set_long , 52a792b843Sthorpej.Nm prop_array_set_ulong , 53a792b843Sthorpej.Nm prop_array_get_longlong , 54a792b843Sthorpej.Nm prop_array_get_ulonglong , 55a792b843Sthorpej.Nm prop_array_set_longlong , 56a792b843Sthorpej.Nm prop_array_set_ulonglong , 57a792b843Sthorpej.Nm prop_array_get_intptr , 58a792b843Sthorpej.Nm prop_array_get_uintptr , 59a792b843Sthorpej.Nm prop_array_set_intptr , 60a792b843Sthorpej.Nm prop_array_set_uintptr , 619b09c481Shaad.Nm prop_array_get_int8 , 629b09c481Shaad.Nm prop_array_get_uint8 , 639b09c481Shaad.Nm prop_array_set_int8 , 649b09c481Shaad.Nm prop_array_set_uint8 , 659b09c481Shaad.Nm prop_array_get_int16 , 669b09c481Shaad.Nm prop_array_get_uint16 , 679b09c481Shaad.Nm prop_array_set_int16 , 689b09c481Shaad.Nm prop_array_set_uint16 , 699b09c481Shaad.Nm prop_array_get_int32 , 709b09c481Shaad.Nm prop_array_get_uint32 , 719b09c481Shaad.Nm prop_array_set_int32 , 729b09c481Shaad.Nm prop_array_set_uint32 , 739b09c481Shaad.Nm prop_array_get_int64 , 749b09c481Shaad.Nm prop_array_get_uint64 , 759b09c481Shaad.Nm prop_array_set_int64 , 769b09c481Shaad.Nm prop_array_set_uint64 , 77a792b843Sthorpej.Nm prop_array_get_data , 78a792b843Sthorpej.Nm prop_array_set_data , 79a792b843Sthorpej.Nm prop_array_set_data_nocopy , 80a792b843Sthorpej.Nm prop_array_get_string , 81a792b843Sthorpej.Nm prop_array_set_string , 82a792b843Sthorpej.Nm prop_array_set_string_nocopy , 83a792b843Sthorpej.Nm prop_array_add_schar , 84a792b843Sthorpej.Nm prop_array_add_uchar , 85a792b843Sthorpej.Nm prop_array_add_short , 86a792b843Sthorpej.Nm prop_array_add_ushort , 87a792b843Sthorpej.Nm prop_array_add_int , 88a792b843Sthorpej.Nm prop_array_add_uint , 89a792b843Sthorpej.Nm prop_array_add_long , 90a792b843Sthorpej.Nm prop_array_add_ulong , 91a792b843Sthorpej.Nm prop_array_add_longlong , 92a792b843Sthorpej.Nm prop_array_add_ulonglong , 93a792b843Sthorpej.Nm prop_array_add_intptr , 94a792b843Sthorpej.Nm prop_array_add_uintptr , 95185aec71Shaad.Nm prop_array_add_int8 , 96185aec71Shaad.Nm prop_array_add_uint8 , 97185aec71Shaad.Nm prop_array_add_int16 , 98185aec71Shaad.Nm prop_array_add_uint16 , 99185aec71Shaad.Nm prop_array_add_int32 , 100185aec71Shaad.Nm prop_array_add_uint32 , 101185aec71Shaad.Nm prop_array_add_int64 , 102185aec71Shaad.Nm prop_array_add_uint64 , 103a792b843Sthorpej.Nm prop_array_add_data , 104a792b843Sthorpej.Nm prop_array_add_data_nocopy , 105a792b843Sthorpej.Nm prop_array_add_string , 106a792b843Sthorpej.Nm prop_array_add_string_nocopy , 107d9210c24Sbouyer.Nm prop_array_add_and_rel 108276389feSwiz.Nd array property collection object utility functions 1099b09c481Shaad.Sh LIBRARY 1109b09c481Shaad.Lb libprop 1119b09c481Shaad.Sh SYNOPSIS 1129b09c481Shaad.In prop/proplib.h 1139b09c481Shaad.\" 1149b09c481Shaad.Ft bool 115a792b843Sthorpej.Fn prop_array_get_bool "prop_array_t array" "unsigned int indx" \ 1169b09c481Shaad "bool *valp" 1179b09c481Shaad.Ft bool 118a792b843Sthorpej.Fn prop_array_set_bool "prop_array_t array" "unsigned int indx" \ 1199b09c481Shaad "bool val" 1209b09c481Shaad.\" 1219b09c481Shaad.Ft bool 122a792b843Sthorpej.Fn prop_array_get_schar "prop_array_t array" "unsigned int indx" \ 123a792b843Sthorpej "signed char *valp" 124a792b843Sthorpej.Ft bool 125a792b843Sthorpej.Fn prop_array_get_uchar "prop_array_t array" "unsigned int indx" \ 126a792b843Sthorpej "unsigned char *valp" 127a792b843Sthorpej.Ft bool 128a792b843Sthorpej.Fn prop_array_set_schar "prop_array_t array" "unsigned int indx" \ 129a792b843Sthorpej "signed char val" 130a792b843Sthorpej.Ft bool 131a792b843Sthorpej.Fn prop_array_set_uchar "prop_array_t array" "unsigned int indx" \ 132a792b843Sthorpej "unsigned char val" 133a792b843Sthorpej.\" 134a792b843Sthorpej.Ft bool 135a792b843Sthorpej.Fn prop_array_get_short "prop_array_t array" "unsigned int indx" \ 136a792b843Sthorpej "short *valp" 137a792b843Sthorpej.Ft bool 138a792b843Sthorpej.Fn prop_array_get_ushort "prop_array_t array" "unsigned int indx" \ 139a792b843Sthorpej "unsigned short *valp" 140a792b843Sthorpej.Ft bool 141a792b843Sthorpej.Fn prop_array_set_short "prop_array_t array" "unsigned int indx" \ 142a792b843Sthorpej "short val" 143a792b843Sthorpej.Ft bool 144a792b843Sthorpej.Fn prop_array_set_ushort "prop_array_t array" "unsigned int indx" \ 145a792b843Sthorpej "unsigned short val" 146a792b843Sthorpej.\" 147a792b843Sthorpej.Ft bool 148a792b843Sthorpej.Fn prop_array_get_int "prop_array_t array" "unsigned int indx" \ 149a792b843Sthorpej "int *valp" 150a792b843Sthorpej.Ft bool 151a792b843Sthorpej.Fn prop_array_get_uint "prop_array_t array" "unsigned int indx" \ 152a792b843Sthorpej "unsigned int *valp" 153a792b843Sthorpej.Ft bool 154a792b843Sthorpej.Fn prop_array_set_int "prop_array_t array" "unsigned int indx" \ 155a792b843Sthorpej "int val" 156a792b843Sthorpej.Ft bool 157a792b843Sthorpej.Fn prop_array_set_uint "prop_array_t array" "unsigned int indx" \ 158a792b843Sthorpej "unsigned int val" 159a792b843Sthorpej.\" 160a792b843Sthorpej.Ft bool 161a792b843Sthorpej.Fn prop_array_get_long "prop_array_t array" "unsigned int indx" \ 162a792b843Sthorpej "long *valp" 163a792b843Sthorpej.Ft bool 164a792b843Sthorpej.Fn prop_array_get_ulong "prop_array_t array" "unsigned int indx" \ 165a792b843Sthorpej "unsigned long *valp" 166a792b843Sthorpej.Ft bool 167a792b843Sthorpej.Fn prop_array_set_long "prop_array_t array" "unsigned int indx" \ 168a792b843Sthorpej "long val" 169a792b843Sthorpej.Ft bool 170a792b843Sthorpej.Fn prop_array_set_ulong "prop_array_t array" "unsigned int indx" \ 171a792b843Sthorpej "unsigned long val" 172a792b843Sthorpej.\" 173a792b843Sthorpej.Ft bool 174a792b843Sthorpej.Fn prop_array_get_longlong "prop_array_t array" "unsigned int indx" \ 175a792b843Sthorpej "long long *valp" 176a792b843Sthorpej.Ft bool 177a792b843Sthorpej.Fn prop_array_get_ulonglong "prop_array_t array" "unsigned int indx" \ 178a792b843Sthorpej "unsigned long long *valp" 179a792b843Sthorpej.Ft bool 180a792b843Sthorpej.Fn prop_array_set_longlong "prop_array_t array" "unsigned int indx" \ 181a792b843Sthorpej "long long val" 182a792b843Sthorpej.Ft bool 183a792b843Sthorpej.Fn prop_array_set_ulonglong "prop_array_t array" "unsigned int indx" \ 184a792b843Sthorpej "unsigned long long val" 185a792b843Sthorpej.\" 186a792b843Sthorpej.Ft bool 187a792b843Sthorpej.Fn prop_array_get_intptr "prop_array_t array" "unsigned int indx" \ 188a792b843Sthorpej "intptr_t *valp" 189a792b843Sthorpej.Ft bool 190a792b843Sthorpej.Fn prop_array_get_uintptr "prop_array_t array" "unsigned int indx" \ 191a792b843Sthorpej "uintptr_t *valp" 192a792b843Sthorpej.Ft bool 193a792b843Sthorpej.Fn prop_array_set_intptr "prop_array_t array" "unsigned int indx" \ 194a792b843Sthorpej "intptr_t val" 195a792b843Sthorpej.Ft bool 196a792b843Sthorpej.Fn prop_array_set_uintptr "prop_array_t array" "unsigned int indx" \ 197a792b843Sthorpej "uintptr_t val" 198a792b843Sthorpej.\" 199a792b843Sthorpej.Ft bool 200a792b843Sthorpej.Fn prop_array_get_int8 "prop_array_t array" "unsigned int indx" \ 2019b09c481Shaad "int8_t *valp" 2029b09c481Shaad.Ft bool 203a792b843Sthorpej.Fn prop_array_get_uint8 "prop_array_t array" "unsigned int indx" \ 2049b09c481Shaad "uint8_t *valp" 2059b09c481Shaad.Ft bool 206a792b843Sthorpej.Fn prop_array_set_int8 "prop_array_t array" "unsigned int indx" \ 2079b09c481Shaad "int8_t val" 2089b09c481Shaad.Ft bool 209a792b843Sthorpej.Fn prop_array_set_uint8 "prop_array_t array" "unsigned int indx" \ 2109b09c481Shaad "uint8_t val" 2119b09c481Shaad.\" 2129b09c481Shaad.Ft bool 213a792b843Sthorpej.Fn prop_array_get_int16 "prop_array_t array" "unsigned int indx" \ 2149b09c481Shaad "int16_t *valp" 2159b09c481Shaad.Ft bool 216a792b843Sthorpej.Fn prop_array_get_uint16 "prop_array_t array" "unsigned int indx" \ 2179b09c481Shaad "uint16_t *valp" 2189b09c481Shaad.Ft bool 219a792b843Sthorpej.Fn prop_array_set_int16 "prop_array_t array" "unsigned int indx" \ 2209b09c481Shaad "int16_t val" 2219b09c481Shaad.Ft bool 222a792b843Sthorpej.Fn prop_array_set_uint16 "prop_array_t array" "unsigned int indx" \ 2239b09c481Shaad "uint16_t val" 2249b09c481Shaad.\" 2259b09c481Shaad.Ft bool 226a792b843Sthorpej.Fn prop_array_get_int32 "prop_array_t array" "unsigned int indx" \ 2279b09c481Shaad "int32_t *valp" 2289b09c481Shaad.Ft bool 229a792b843Sthorpej.Fn prop_array_get_uint32 "prop_array_t array" "unsigned int indx" \ 2309b09c481Shaad "uint32_t *valp" 2319b09c481Shaad.Ft bool 232a792b843Sthorpej.Fn prop_array_set_int32 "prop_array_t array" "unsigned int indx" \ 2339b09c481Shaad "int32_t val" 2349b09c481Shaad.Ft bool 235a792b843Sthorpej.Fn prop_array_set_uint32 "prop_array_t array" "unsigned int indx" \ 2369b09c481Shaad "uint32_t val" 2379b09c481Shaad.\" 2389b09c481Shaad.Ft bool 239a792b843Sthorpej.Fn prop_array_get_int64 "prop_array_t array" "unsigned int indx" \ 2409b09c481Shaad "int64_t *valp" 2419b09c481Shaad.Ft bool 242a792b843Sthorpej.Fn prop_array_get_uint64 "prop_array_t array" "unsigned int indx" \ 2439b09c481Shaad "uint64_t *valp" 2449b09c481Shaad.Ft bool 245a792b843Sthorpej.Fn prop_array_set_int64 "prop_array_t array" "unsigned int indx" \ 2469b09c481Shaad "int64_t val" 2479b09c481Shaad.Ft bool 248a792b843Sthorpej.Fn prop_array_set_uint64 "prop_array_t array" "unsigned int indx" \ 2499b09c481Shaad "uint64_t val" 2509b09c481Shaad.\" 2519b09c481Shaad.Ft bool 252a792b843Sthorpej.Fn prop_array_get_data "prop_array_t array" "unsigned int indx" \ 253a792b843Sthorpej "const void **datap" "size_t *sizep" 254185aec71Shaad.Ft bool 255a792b843Sthorpej.Fn prop_array_set_data "prop_array_t array" "unsigned int indx" \ 256a792b843Sthorpej "const void *data" "size_t len" 257a792b843Sthorpej.Ft bool 258a792b843Sthorpej.Fn prop_array_set_data_nocopy "prop_array_t array" "unsigned int indx" \ 259a792b843Sthorpej "const void *data" "size_t len" 260185aec71Shaad.\" 261185aec71Shaad.Ft bool 262a792b843Sthorpej.Fn prop_array_get_string "prop_array_t array" "unsigned int indx" \ 263a792b843Sthorpej "const char **strp" 264185aec71Shaad.Ft bool 265a792b843Sthorpej.Fn prop_array_set_string "prop_array_t array" "unsigned int indx" \ 266a792b843Sthorpej "const char *str" 267185aec71Shaad.Ft bool 268a792b843Sthorpej.Fn prop_array_set_string_nocopy "prop_array_t array" "unsigned int indx" \ 2699b09c481Shaad "const char *str" 2709b09c481Shaad.\" 2719b09c481Shaad.Ft bool 272a792b843Sthorpej.Fn prop_array_set_and_rel "prop_array_t array" "unsigned int indx" \ 273d9210c24Sbouyer "prop_object_t obj" 274a792b843Sthorpej.\" 275a792b843Sthorpej.Ft bool 276a792b843Sthorpej.Fn prop_array_add_bool "prop_array_t array" "bool val" 277a792b843Sthorpej.Ft bool 278a792b843Sthorpej.Fn prop_array_add_schar "prop_array_t array" "signed char val" 279a792b843Sthorpej.Ft bool 280a792b843Sthorpej.Fn prop_array_add_uchar "prop_array_t array" "unsigned char val" 281a792b843Sthorpej.Ft bool 282a792b843Sthorpej.Fn prop_array_add_short "prop_array_t array" "short val" 283a792b843Sthorpej.Ft bool 284a792b843Sthorpej.Fn prop_array_add_ushort "prop_array_t array" "unsigned short val" 285a792b843Sthorpej.Ft bool 286a792b843Sthorpej.Fn prop_array_add_int "prop_array_t array" "int val" 287a792b843Sthorpej.Ft bool 288a792b843Sthorpej.Fn prop_array_add_uint "prop_array_t array" "unsigned int val" 289a792b843Sthorpej.Ft bool 290a792b843Sthorpej.Fn prop_array_add_long "prop_array_t array" "long val" 291a792b843Sthorpej.Ft bool 292a792b843Sthorpej.Fn prop_array_add_ulong "prop_array_t array" "unsigned long val" 293a792b843Sthorpej.Ft bool 294a792b843Sthorpej.Fn prop_array_add_longlong "prop_array_t array" "long long val" 295a792b843Sthorpej.Ft bool 296a792b843Sthorpej.Fn prop_array_add_ulonglong "prop_array_t array" "unsigned long long val" 297a792b843Sthorpej.Ft bool 298a792b843Sthorpej.Fn prop_array_add_intptr "prop_array_t array" "intptr_t val" 299a792b843Sthorpej.Ft bool 300a792b843Sthorpej.Fn prop_array_add_uintptr "prop_array_t array" "uintptr_t val" 301a792b843Sthorpej.Ft bool 302a792b843Sthorpej.Fn prop_array_add_int8 "prop_array_t array" "int8_t val" 303a792b843Sthorpej.Ft bool 304a792b843Sthorpej.Fn prop_array_add_uint8 "prop_array_t array" "uint8_t val" 305a792b843Sthorpej.Ft bool 306a792b843Sthorpej.Fn prop_array_add_int16 "prop_array_t array" "int16_t val" 307a792b843Sthorpej.Ft bool 308a792b843Sthorpej.Fn prop_array_add_uint16 "prop_array_t array" "uint16_t val" 309a792b843Sthorpej.Ft bool 310a792b843Sthorpej.Fn prop_array_add_int32 "prop_array_t array" "int32_t val" 311a792b843Sthorpej.Ft bool 312a792b843Sthorpej.Fn prop_array_add_uint32 "prop_array_t array" "uint32_t val" 313a792b843Sthorpej.Ft bool 314a792b843Sthorpej.Fn prop_array_add_int64 "prop_array_t array" "int64_t val" 315a792b843Sthorpej.Ft bool 316a792b843Sthorpej.Fn prop_array_add_uint64 "prop_array_t array" "uint64_t val" 317a792b843Sthorpej.\" 318a792b843Sthorpej.Ft bool 319a792b843Sthorpej.Fn prop_array_add_data "prop_array_t array" "const void *data" \ 320a792b843Sthorpej "size_t len" 321a792b843Sthorpej.Ft bool 322a792b843Sthorpej.Fn prop_array_add_data_nocopy "prop_array_t array" "const char *data" \ 323a792b843Sthorpej "size_t len" 324a792b843Sthorpej.\" 325a792b843Sthorpej.Ft bool 326a792b843Sthorpej.Fn prop_array_add_string "prop_array_t array" "const char *str" 327a792b843Sthorpej.Ft bool 328a792b843Sthorpej.Fn prop_array_add_string_nocopy "prop_array_t array" "const char *str" 329a792b843Sthorpej.\" 330a792b843Sthorpej.Ft bool 331a792b843Sthorpej.Fn prop_array_add_and_rel "prop_array_t array" "prop_object_t obj" 3329b09c481Shaad.Sh DESCRIPTION 3339b09c481ShaadThe 334a792b843Sthorpej.Nm 3359b09c481Shaadfamily of functions are provided to make getting and setting values in 3369b09c481Shaadarrays more convenient in some applications. 3379b09c481Shaad.Pp 3389b09c481ShaadThe getters check the type of the returned object and, in some cases, also 3399b09c481Shaadensure that the returned value is within the range implied by the getter's 3409b09c481Shaadvalue type. 3419b09c481Shaad.Pp 342*1cd43426SandvarThe setters and adders handle object creation and release for the caller. 343a792b843Sthorpej.Pp 344a792b843SthorpejIf the 345a792b843Sthorpej.Fa sizep 346a792b843Sthorpejargument to 347a792b843Sthorpej.Fn prop_array_get_data 348a792b843Sthorpejis not 349a792b843Sthorpej.Dv NULL , 350a792b843Sthorpejthen it will be set to the size of the returned data. 3519b09c481Shaad.Pp 3529b09c481ShaadThe 353a792b843Sthorpej.Fn prop_array_get_data , 354a792b843Sthorpej.Fn prop_array_set_data_nocopy , 35566c6aeebSpgoyetteand 356a792b843Sthorpej.Fn prop_array_add_data_nocopy 357a792b843Sthorpejdo not copy the data that is set or returned. 358a792b843SthorpejSee 359a792b843Sthorpej.Xr prop_data 3 36095f94af3Sandvarfor more information. 361a792b843Sthorpej.Pp 362a792b843SthorpejThe 363a792b843Sthorpej.Fn prop_array_get_string , 364a792b843Sthorpej.Fn prop_array_set_string_nocopy , 365a792b843Sthorpejand 366a792b843Sthorpej.Fn prop_array_add_string_nocopy 367a792b843Sthorpejdo not copy the string that is set or returned. 3689b09c481ShaadSee 3699b09c481Shaad.Xr prop_string 3 3709b09c481Shaadfor more information. 3719b09c481ShaadThe 372a792b843Sthorpej.Fn prop_array_set_and_rel 3739b09c481Shaadand 374d9210c24Sbouyer.Fn prop_array_add_and_rel 375a792b843Sthorpejfunctions add the object to the array and release it. 376a792b843SthorpejThe object is always released, even if adding it to the array fails. 3779b09c481Shaad.Sh RETURN VALUES 3789b09c481ShaadThe 379a792b843Sthorpej.Nm 3809b09c481Shaadgetter functions return 3819b09c481Shaad.Dv true 3829b09c481Shaadif the object exists in the array and the value is in-range, or 3839b09c481Shaad.Dv false 3849b09c481Shaadotherwise. 3859b09c481Shaad.Pp 3869b09c481ShaadThe 387a792b843Sthorpej.Nm 388a792b843Sthorpejsetter and adder functions return 3899b09c481Shaad.Dv true 3909b09c481Shaadif creating the object and storing it in the array is successful, or 3919b09c481Shaad.Dv false 3929b09c481Shaadotherwise. 3939b09c481Shaad.Sh SEE ALSO 3949b09c481Shaad.Xr prop_array 3 , 39546c5658aSwiz.Xr prop_bool 3 , 396a792b843Sthorpej.Xr prop_data 3 , 3979b09c481Shaad.Xr prop_number 3 , 398a792b843Sthorpej.Xr prop_string 3 , 3999b09c481Shaad.Xr proplib 3 4009b09c481Shaad.Sh HISTORY 4019b09c481ShaadThe 4023ed54b8dSabhinav.Xr proplib 3 4039b09c481Shaadproperty container object library first appeared in 4049b09c481Shaad.Nx 4.0 . 405