supportsInterface
Contract: JBV1TokenPaymentTerminal
Interface: IERC165
- Step by step
 - Code
 - Bug bounty
 
Indicates if this contract adheres to the specified interface.
See IERC165-supportsInterface.
Definition
function supportsInterface(bytes4 _interfaceId)
  public
  view
  virtual
  override(ERC165, IERC165)
  returns (bool) { ... }
- Arguments:
_interfaceIdis the ID of the interface to check for adherance to.
 - The view function can be accessed externally by anyone, and internally within this contract.
 - The view function does not alter state on the blockchain.
 - The function overrides a function definition from the 
IERC165interface. - The function returns a flag indicating if this contract adheres to the specified interface.
 
Body
- 
Return true if the provided interface ID is in the list of interfaces this contract adheres to.
return
_interfaceId == type(IJBPaymentTerminal).interfaceId ||
_interfaceId == type(IJBV1TokenPaymentTerminal).interfaceId ||
super.supportsInterface(_interfaceId); 
/**
  @notice
  Indicates if this contract adheres to the specified interface.
  @dev
  See IERC165-supportsInterface.
  @param _interfaceId The ID of the interface to check for adherance to.
*/
function supportsInterface(bytes4 _interfaceId) external pure override returns (bool) {
  return
    _interfaceId == type(IJBPaymentTerminal).interfaceId ||
    _interfaceId == type(IJBV1TokenPaymentTerminal).interfaceId ||
    super.supportsInterface(_interfaceId);
}
| Category | Description | Reward | 
|---|---|---|
| Optimization | Help make this operation more efficient. | 0.5ETH | 
| Low severity | Identify a vulnerability in this operation that could lead to an inconvenience for a user of the protocol or for a protocol developer. | 1ETH | 
| High severity | Identify a vulnerability in this operation that could lead to data corruption or loss of funds. | 5+ETH |