addToWhitelist(address) :
This function adds an address to the whitelist of the contract. It takes an address as an argument and checks if it is already in the whitelist. If it is not, it adds it to the whitelist and emits an event. The function is only accessible to the owner of the contract and is non-reentrant. (autogenerated documentation)
removeFromWhitelist(address) :
This function removes an address from the whitelist. It takes an address as an argument and sets the status of that address in the whitelist to "Out". It also emits an event to notify that the address has been removed from the whitelist. The function is only accessible by the owner of the contract and is non-reentrant, meaning it cannot be called again until the first call has finished. (autogenerated documentation)
isOnWhitelist(address) :
This function checks if a given address is on a whitelist. It takes an address as an argument and returns a boolean value indicating whether the address is on the whitelist or not. The function accesses the whitelist mapping, which stores the status of each address, and checks if the status of the given address is set to "In". If it is, the function returns true, otherwise it returns false. (autogenerated documentation)
getWhitelist() :
This function is used to get the active whitelist of an Ethereum smart contract. It iterates through the whitelistIndices array and checks the status of each address in the whitelist. If the status is set to "In", the address is added to the activeWhitelist array. The activeWhitelist array is then returned to the caller. (autogenerated documentation)