PatchworkOS  2ca1c69
A non-POSIX operating system.
Loading...
Searching...
No Matches
evaluate.h
Go to the documentation of this file.
1#pragma once
2
4
5/**
6 * @brief Object Runtime Evaluation
7 * @defgroup modules_acpi_aml_evaluate Runtime Evaluation
8 * @ingroup modules_acpi_aml
9 *
10 * @{
11 */
12
13/**
14 * @brief Evaluate an AML object.
15 *
16 * Will attempt to evaluate the given object to the desired target type, by invoking it if its a method and converting
17 * the result or just directly converting it.
18 *
19 * @param state The AML state to use for evaluation, can be `NULL` to use a temporary state.
20 * @param object The AML object to evaluate.
21 * @param targetTypes A bitmask of desired target types.
22 * @return On success, the evaluated AML object. On failure, `NULL` and `errno` is set.
23 */
24aml_object_t* aml_evaluate(aml_state_t* state, aml_object_t* object, aml_type_t targetTypes);
25
26/** @} */
aml_object_t * aml_evaluate(aml_state_t *state, aml_object_t *object, aml_type_t targetTypes)
Evaluate an AML object.
Definition evaluate.c:8
aml_type_t
ACPI data types.
Definition object.h:59
ACPI object.
Definition object.h:447
AML State.
Definition state.h:25