HLVM API Documentation
#include <Linkables.h>
Inheritance diagram for Function:

This class provides an Abstract Syntax Tree node that represents a Function. A Function is a callable block of code that accepts parameters and returns a result. This is the basic unit of code in HLVM. A Function has a name, a set of formal arguments, a return type, and, optionally, a Block of code to execute. The name of a function is used for linking purposes. The formal arguments and return type are encapsulated in the Function's associated SignatureType. If a Block is associated with the Function then the function is defined and the Block defines the computation the Function provides. If a Block is not associated with the Function, then the function is undefined and serves as a reference to a function in another Bundle.
Definition at line 192 of file Linkables.h.
|
|
Definition at line 197 of file Linkables.h. |
|
|
Definition at line 199 of file Linkables.h. |
|
|
Definition at line 198 of file Linkables.h. |
|
|
Definition at line 205 of file Linkables.h. |
|
|
Definition at line 51 of file Linkables.cpp. |
|
|
Definition at line 250 of file Linkables.h. References Function::args. |
|
|
Definition at line 241 of file Linkables.h. References Function::args. |
|
|
Definition at line 240 of file Linkables.h. References Function::args. |
|
|
Definition at line 233 of file Linkables.h. References Function::args. |
|
|
Definition at line 232 of file Linkables.h. References Function::args. |
|
|
Provide support for isa<X> and friends.
Reimplemented from Linkable. Reimplemented in Program. Definition at line 226 of file Linkables.h. References Node::isFunction(). |
|
|
Definition at line 225 of file Linkables.h. |
|
|
Definition at line 237 of file Linkables.h. References Function::args. |
|
|
Definition at line 235 of file Linkables.h. References Function::args. |
|
|
Definition at line 234 of file Linkables.h. References Function::args. |
|
|
Definition at line 239 of file Linkables.h. References Function::args. |
|
|
Definition at line 238 of file Linkables.h. References Function::args. |
|
|
Return the 1-based index of the Definition at line 70 of file Linkables.cpp. References Function::begin(), and Function::end(). |
|
|
Definition at line 63 of file Linkables.cpp. References Function::args, hlvmAssert, and Function::size(). |
|
|
Definition at line 54 of file Linkables.cpp. References Function::begin(), and Function::end(). |
|
|
Definition at line 213 of file Linkables.h. References Function::block. |
|
|
Definition at line 216 of file Linkables.h. References SignatureType::getResultType(), and Function::getSignature(). |
|
|
Definition at line 214 of file Linkables.h. References Value::type. |
|
|
Definition at line 212 of file Linkables.h. References Function::block. |
|
|
Reimplemented from Node. Definition at line 82 of file Linkables.cpp. References Function::block, and hlvmAssert. |
|
|
Reimplemented from Node. Definition at line 94 of file Linkables.cpp. References Function::block, and hlvmAssert. |
|
||||||||||||
|
Reimplemented from Value. Definition at line 104 of file Linkables.cpp. References Function::begin(), Function::end(), and Value::resolveTypeTo(). |
|
|
Definition at line 249 of file Linkables.h. References Node::setParent(). |
|
|
Definition at line 236 of file Linkables.h. References Function::args. |
|
|
Reimplemented from Linkable. Reimplemented in Program. Definition at line 260 of file Linkables.h. |
|
|
Definition at line 258 of file Linkables.h. |
|
|
The code block to be executed.
Definition at line 257 of file Linkables.h. |