delete members
This function removes eiteher all member variables (if only 1 parameter, namely the variable, is provided), or a selection of members
if a member name (for structures) or index value (for arrays) is specified, followed by an optional variable to specify the number of
members to be deleted, beginnig with the specified one.
Attention: If the function call is executed in a local varaible contect (e.g inside a user-defined fuction or a B4P program called by another B4P
program using start() or include(), then attempting to delete a non-local variable asserts an exception.
You can circumvent this by deleting the global variable in a global context provided with the global() function.
example: global ( ) delete ( a global variable [ ] );
Indirect parameter passing is disabled
Min. 1
No. | Type | Description |
---|---|---|
1 code |
variable :string |
Variable name The affected variable will be deleted resp. their members deleted. |
Opt. 2 input |
numeral | Starting array index Appicable to arrays and structures. The index must refer to an existing member in the array. Negative indexing is supported, e.g. -1 refers to the last member Default value: All members will be deleted if the 2nd function parameter is not provided |
Alt. 2 input |
numeral | Starting member name Appicable structures only. It must match with an existing member name. Default value: All members will be deleted if the 2nd function parameter is not provided |
Opt. 3 input |
numeral | Ending array index Appicable to arrays and structures. The index must refer to an existing member in the array. Negative indexing is supported, e.g. -1 refers to the last member. Note that the ending member must lie after the starting member, otherwise nothing will be deleted. Default value: Only one member will be deleted if the 3rd parameter is not provided |
Alt. 3 input |
numeral | Ending member name Appicable structures only. It must match with an existing member name and alphabetically after the starting member name. Otherwise, nothing will be deleted. Default value: Only one member will be deleted if the 3rd parameter is not provided |
Variable is protected
Attempting to delete global variable in local context
Attempting to delete system variables
array( a[], { 0, 11, 22, 33, 44, 55, 66, 77, 88, 99 } );
a[] = This is the base variable;
delete members( a[], 2, 4 ); // Delete 22, 33, 44
delete members( a[], -1 ); // Delete 99
see(a[]);
echo("Delete all remaining members");
delete members( a[] );
see(a[]);
structure( a[], { Cat, Dog, Bird, { Parrot, Parakeet }, Rat, Mouse, Elephant, Zebra },
{ Katze, Hund, Vogel, { Papagei, Sittich }, Ratte, Maus, Elefant, Zebra } );
delete members( a[], Bird, Dog ); // Bird (incl. Parrot, Parakeet), Cat, Dog
delete members( a[], Rat); // Delete Rat
delete members( a[], -2); // Delete Mouse
see(a[]); // Elephant, Zebra
a[] This is the base variable (softquoted string,full access)
Array [ 0] 0 "0" (numeral,full access)
Array [ 1] 11 "11" (numeral,full access)
Array [ 2] 55 "55" (numeral,full access)
Array [ 3] 66 "66" (numeral,full access)
Array [ 4] 77 "77" (numeral,full access)
Array [ 5] 88 "88" (numeral,full access)
Delete all remaining members
a[] This is the base variable (softquoted string,full access)
a[] This is the base variable (softquoted string,full access)
Elephant Elefant (softquoted string,full access)
Zebra Zebra (softquoted string,full access)