MCPcopy Create free account
hub / github.com/GNOME/gjs / release

Method release

gi/arg-cache.cpp:1746–1760  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1744struct FixedSizeArrayInOut : FallbackInOut {
1745 using FallbackInOut::FallbackInOut;
1746 bool release(JSContext* cx, GjsFunctionCallState* state, GIArgument*,
1747 GIArgument* out_arg) override {
1748 GITransfer transfer =
1749 state->call_completed() ? m_transfer : GI_TRANSFER_NOTHING;
1750 GIArgument* original_out_arg = &state->inout_original_cvalue(m_arg_pos);
1751 size_t size = m_type_info.array_fixed_size().value();
1752 if (!gjs_gi_argument_release_in_array(cx, transfer, m_type_info, size,
1753 original_out_arg))
1754 return false;
1755
1756 transfer =
1757 state->call_completed() ? m_transfer : GI_TRANSFER_EVERYTHING;
1758 return gjs_gi_argument_release_out_array(cx, transfer, m_type_info,
1759 size, out_arg);
1760 }
1761};
1762
1763static const char* reason_strings[] = {

Callers

nothing calls this directly

Calls 5

call_completedMethod · 0.80
array_fixed_sizeMethod · 0.80
valueMethod · 0.45

Tested by

no test coverage detected