quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

OS-template-transparent.jinja (882B)


      1 {# One Shot function's dispatch code for transparent drivers.
      2 Expected inputs:
      3 * drivers: the list of driver descriptions.
      4 * entry_point: the name of the entry point that this function dispatches to.
      5 * entry_point_param(driver): the parameters to pass to the entry point.
      6 * nest_indent: number of extra spaces to indent the code to.
      7 -#}
      8 {% for driver in drivers if driver.type == "transparent" -%}
      9 {% for capability in driver.capabilities if entry_point in capability.entry_points -%}
     10 #if ({% if capability['mbedtls/c_condition'] is defined -%}{{ capability['mbedtls/c_condition'] }} {% else -%} {{ 1 }} {% endif %})
     11 {%- filter indent(width = nest_indent) %}
     12 status = {{ entry_point_name(capability, entry_point, driver) }}({{entry_point_param(driver) | indent(20)}});
     13 
     14 if( status != PSA_ERROR_NOT_SUPPORTED )
     15     return( status );
     16 {% endfilter -%}
     17 #endif
     18 {% endfor %}
     19 {% endfor %}