unregister_default_behavior

unregister_default_behavior#

class brainstate.environ.unregister_default_behavior(key, *, env=None)[source]#

Remove a registered callback for an environment parameter.

Parameters:
  • key (str) – Environment parameter key.

  • env (EnvironmentState | None) – The environment state to modify. If None, uses the global environment.

Returns:

True if a callback was removed, False if no callback existed.

Return type:

bool

Examples

>>> import brainstate.environ as env
>>>
>>> # Register a callback
>>> def callback(value):
...     print(f"Value: {value}")
>>>
>>> env.register_default_behavior('param', callback)
>>>
>>> # Remove the callback
>>> removed = env.unregister_default_behavior('param')
>>> print(f"Callback removed: {removed}")  # True
>>>
>>> # No callback triggers now
>>> env.set(param='test')  # No output
>>>
>>> # Removing non-existent callback
>>> removed = env.unregister_default_behavior('nonexistent')
>>> print(f"Callback removed: {removed}")  # False

Using custom environment:

>>> import brainstate.environ as env
>>>
>>> custom_env = env.EnvironmentState()
>>> env.register_default_behavior('param', lambda x: None, env=custom_env)
>>> env.unregister_default_behavior('param', env=custom_env)  # Returns True