2 lines
9.5 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>CMethodSignature (infer.ClangFrontend.CMethodSignature)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 1.5.2"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body><div class="content"><header><nav><a href="../index.html">Up</a> <a href="../../index.html">infer</a> &#x00BB; <a href="../index.html">ClangFrontend</a> &#x00BB; CMethodSignature</nav><h1>Module <code>ClangFrontend.CMethodSignature</code></h1></header><aside><p>Define the signature of a method consisting of its name, its arguments, return type, location and whether its an instance method.</p></aside><dl><dt class="spec type" id="type-param_type"><a href="#type-param_type" class="anchor"></a><code><span class="keyword">type</span> param_type</code><code> = </code><code>{</code><table class="record"><tr id="type-param_type.annot" class="anchored"><td class="def field"><a href="#type-param_type.annot" class="anchor"></a><code>annot : <a href="../../IR/Annot/Item/index.html#type-t">IR.Annot.Item.t</a>;</code></td></tr><tr id="type-param_type.is_no_escape_block_arg" class="anchored"><td class="def field"><a href="#type-param_type.is_no_escape_block_arg" class="anchor"></a><code>is_no_escape_block_arg : bool;</code></td></tr><tr id="type-param_type.is_pointer_to_const" class="anchored"><td class="def field"><a href="#type-param_type.is_pointer_to_const" class="anchor"></a><code>is_pointer_to_const : bool;</code></td></tr><tr id="type-param_type.name" class="anchored"><td class="def field"><a href="#type-param_type.name" class="anchor"></a><code>name : <a href="../../IR/Mangled/index.html#type-t">IR.Mangled.t</a>;</code></td></tr><tr id="type-param_type.typ" class="anchored"><td class="def field"><a href="#type-param_type.typ" class="anchor"></a><code>typ : <a href="../../IR/Typ/index.html#type-t">IR.Typ.t</a>;</code></td></tr></table><code>}</code></dt><dt class="spec type" id="type-t"><a href="#type-t" class="anchor"></a><code><span class="keyword">type</span> t</code><code> = </code><code>{</code><table class="record"><tr id="type-t.name" class="anchored"><td class="def field"><a href="#type-t.name" class="anchor"></a><code>name : <a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a>;</code></td></tr><tr id="type-t.access" class="anchored"><td class="def field"><a href="#type-t.access" class="anchor"></a><code>access : <a href="../../ATDGenerated/Clang_ast_t/index.html#type-access_specifier">ATDGenerated.Clang_ast_t.access_specifier</a>;</code></td></tr><tr id="type-t.class_param" class="anchored"><td class="def field"><a href="#type-t.class_param" class="anchor"></a><code>class_param : <span><a href="index.html#type-param_type">param_type</a> option</span>;</code></td></tr><tr id="type-t.params" class="anchored"><td class="def field"><a href="#type-t.params" class="anchor"></a><code>params : <span><a href="index.html#type-param_type">param_type</a> list</span>;</code></td></tr><tr id="type-t.ret_type" class="anchored"><td class="def field"><a href="#type-t.ret_type" class="anchor"></a><code>ret_type : <a href="../../IR/Typ/index.html#type-t">IR.Typ.t</a> * <a href="../../IR/Annot/Item/index.html#type-t">IR.Annot.Item.t</a>;</code></td></tr><tr id="type-t.has_added_return_param" class="anchored"><td class="def field"><a href="#type-t.has_added_return_param" class="anchor"></a><code>has_added_return_param : bool;</code></td></tr><tr id="type-t.is_ret_type_pod" class="anchored"><td class="def field"><a href="#type-t.is_ret_type_pod" class="anchor"></a><code>is_ret_type_pod : bool;</code></td></tr><tr id="type-t.is_ret_constexpr" class="anchored"><td class="def field"><a href="#type-t.is_ret_constexpr" class="anchor"></a><code>is_ret_constexpr : bool;</code></td></tr><tr id="type-t.attributes" class="anchored"><td class="def field"><a href="#type-t.attributes" class="anchor"></a><code>attributes : <span><a href="../../ATDGenerated/Clang_ast_t/index.html#type-attribute">ATDGenerated.Clang_ast_t.attribute</a> list</span>;</code></td></tr><tr id="type-t.loc" class="anchored"><td class="def field"><a href="#type-t.loc" class="anchor"></a><code>loc : <a href="../../ATDGenerated/Clang_ast_t/index.html#type-source_range">ATDGenerated.Clang_ast_t.source_range</a>;</code></td></tr><tr id="type-t.method_kind" class="anchored"><td class="def field"><a href="#type-t.method_kind" class="anchor"></a><code>method_kind : <a href="../../IR/ClangMethodKind/index.html#type-t">IR.ClangMethodKind.t</a>;</code></td></tr><tr id="type-t.is_cpp_virtual" class="anchored"><td class="def field"><a href="#type-t.is_cpp_virtual" class="anchor"></a><code>is_cpp_virtual : bool;</code></td></tr><tr id="type-t.passed_as_noescape_block_to" class="anchored"><td class="def field"><a href="#type-t.passed_as_noescape_block_to" class="anchor"></a><code>passed_as_noescape_block_to : <span><a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a> option</span>;</code></td></tr><tr id="type-t.is_no_return" class="anchored"><td class="def field"><a href="#type-t.is_no_return" class="anchor"></a><code>is_no_return : bool;</code></td></tr><tr id="type-t.is_variadic" class="anchored"><td class="def field"><a href="#type-t.is_variadic" class="anchor"></a><code>is_variadic : bool;</code></td></tr><tr id="type-t.pointer_to_parent" class="anchored"><td class="def field"><a href="#type-t.pointer_to_parent" class="anchor"></a><code>pointer_to_parent : <span><a href="../../ATDGenerated/Clang_ast_t/index.html#type-pointer">ATDGenerated.Clang_ast_t.pointer</a> option</span>;</code></td></tr><tr id="type-t.pointer_to_property_opt" class="anchored"><td class="def field"><a href="#type-t.pointer_to_property_opt" class="anchor"></a><code>pointer_to_property_opt : <span><a href="../../ATDGenerated/Clang_ast_t/index.html#type-pointer">ATDGenerated.Clang_ast_t.pointer</a> option</span>;</code></td></tr><tr id="type-t.return_param_typ" class="anchored"><td class="def field"><a href="#type-t.return_param_typ" class="anchor"></a><code>return_param_typ : <span><a href="../../IR/Typ/index.html#type-t">IR.Typ.t</a> option</span>;</code></td></tr></table><code>}</code></dt></dl><dl><dt class="spec value" id="val-is_getter"><a href="#val-is_getter" class="anchor"></a><code><span class="keyword">val</span> is_getter : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> bool</code></dt><dt class="spec value" id="val-is_setter"><a href="#val-is_setter" class="anchor"></a><code><span class="keyword">val</span> is_setter : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> bool</code></dt><dt class="spec value" id="val-mk"><a href="#val-mk" class="anchor"></a><code><span class="keyword">val</span> mk : <a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a> <span>&#45;&gt;</span> <span><a href="index.html#type-param_type">param_type</a> option</span> <span>&#45;&gt;</span> <span><a href="index.html#type-param_type">param_type</a> list</span> <span>&#45;&gt;</span> <span>(<a href="../../IR/Typ/index.html#type-t">IR.Typ.t</a> * <a href="../../IR/Annot/Item/index.html#type-t">IR.Annot.Item.t</a>)</span> <span>&#45;&gt;</span> <span>?&#8288;has_added_return_param:bool</span> <span>&#45;&gt;</span> <span>?&#8288;is_ret_type_pod:bool</span> <span>&#45;&gt;</span> <span>is_ret_constexpr:bool</span> <span>&#45;&gt;</span> <span><a href="../../ATDGenerated/Clang_ast_t/index.html#type-attribute">ATDGenerated.Clang_ast_t.attribute</a> list</span> <span>&#45;&gt;</span> <a href="../../ATDGenerated/Clang_ast_t/index.html#type-source_range">ATDGenerated.Clang_ast_t.source_range</a> <span>&#45;&gt;</span> <a href="../../IR/ClangMethodKind/index.html#type-t">IR.ClangMethodKind.t</a> <span>&#45;&gt;</span> <span>?&#8288;is_cpp_virtual:bool</span> <span>&#45;&gt;</span> <span>?&#8288;passed_as_noescape_block_to:<span><a href="../../IR/Procname/index.html#type-t">IR.Procname.t</a> option</span></span> <span>&#45;&gt;</span> <span>?&#8288;is_no_return:bool</span> <span>&#45;&gt;</span> <span>?&#8288;is_variadic:bool</span> <span>&#45;&gt;</span> <span><a href="../../ATDGenerated/Clang_ast_t/index.html#type-pointer">ATDGenerated.Clang_ast_t.pointer</a> option</span> <span>&#45;&gt;</span> <span><a href="../../ATDGenerated/Clang_ast_t/index.html#type-pointer">ATDGenerated.Clang_ast_t.pointer</a> option</span> <span>&#45;&gt;</span> <span><a href="../../IR/Typ/index.html#type-t">IR.Typ.t</a> option</span> <span>&#45;&gt;</span> <a href="../../ATDGenerated/Clang_ast_t/index.html#type-access_specifier">ATDGenerated.Clang_ast_t.access_specifier</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dt class="spec value" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span class="keyword">val</span> pp : Stdlib.Format.formatter <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> unit</code></dt><dt class="spec value" id="val-mk_param_type"><a href="#val-mk_param_type" class="anchor"></a><code><span class="keyword">val</span> mk_param_type : <span>?&#8288;is_pointer_to_const:bool</span> <span>&#45;&gt;</span> <span>?&#8288;annot:<a href="../../IR/Annot/Item/index.html#type-t">IR.Annot.Item.t</a></span> <span>&#45;&gt;</span> <span>?&#8288;is_no_escape_block_arg:bool</span> <span>&#45;&gt;</span> <a href="../../IR/Mangled/index.html#type-t">IR.Mangled.t</a> <span>&#45;&gt;</span> <a href="../../IR/Typ/index.html#type-t">IR.Typ.t</a> <span>&#45;&gt;</span> <a href="index.html#type-param_type">param_type</a></code></dt></dl></div></body></html>