code
– Tools for representing JavaScript code¶
Tools for representing JavaScript code in BSON.
- class bson.code.Code(code, scope=None, **kwargs)¶
Bases:
str
BSON’s JavaScript code type.
Raises
TypeError
if code is not an instance ofstr
or scope is notNone
or an instance ofdict
.Scope variables can be set by passing a dictionary as the scope argument or by using keyword arguments. If a variable is set as a keyword argument it will override any setting for that variable in the scope dictionary.
- Parameters:
code (Union[str, Code]) – A string containing JavaScript code to be evaluated or another instance of Code. In the latter case, the scope of code becomes this Code’s
scope
.scope (Optional[Mapping[str, Any]]) – dictionary representing the scope in which code should be evaluated - a mapping from identifiers (as strings) to values. Defaults to
None
. This is applied after any scope associated with a given code above.kwargs (Any) – scope variables can also be passed as keyword arguments. These are applied after scope and code.
- Return type:
Changed in version 3.4: The default value for
scope
isNone
instead of{}
.