|
hoshi-lang dev
Yet another programming language
|
#include <IR.h>

Classes | |
| class | ImportLibrary |
Public Member Functions | |
| yoi::indexT | addImportedFunction (const yoi::wstr &libraryName, const yoi::wstr &functionName, const std::shared_ptr< IRFunctionDefinition > &functionDefinition) |
| void | addForeignType (const yoi::wstr &foreignTypeName, const std::shared_ptr< IRValueType > &structType) |
| void | addExportedFunction (const yoi::wstr &exportName, yoi::indexT moduleIndex, yoi::indexT functionIndex, const std::set< IRFunctionDefinition::FunctionAttrs > &attrs) |
| Add an exported function to the FFI table. | |
Public Attributes | |
| yoi::indexTable< yoi::wstr, std::tuple< yoi::indexT, yoi::indexT, std::set< IRFunctionDefinition::FunctionAttrs > > > | exportedFunctionTable |
| yoi::indexTable< yoi::wstr, std::shared_ptr< IRValueType > > | foreignTypeTable |
| yoi::indexTable< yoi::wstr, ImportLibrary > | importedLibraries |
| void addExportedFunction | ( | const yoi::wstr & | exportName, |
| yoi::indexT | moduleIndex, | ||
| yoi::indexT | functionIndex, | ||
| const std::set< IRFunctionDefinition::FunctionAttrs > & | attrs | ||
| ) |
Add an exported function to the FFI table.
| exportName | The name of the exported function. |
| moduleIndex | Module index of the function. |
| functionIndex | Function index of the function. |
| attrs | The attributes of the function. |
| std::out_of_range | If the export name already exists in the FFI table. |
Definition at line 1049 of file IR.cpp.
References IRFFITable::exportedFunctionTable, and indexTable< A, B >::put_create().

| void addForeignType | ( | const yoi::wstr & | foreignTypeName, |
| const std::shared_ptr< IRValueType > & | structType | ||
| ) |
Definition at line 1056 of file IR.cpp.
References IRFFITable::foreignTypeTable.
| yoi::indexT addImportedFunction | ( | const yoi::wstr & | libraryName, |
| const yoi::wstr & | functionName, | ||
| const std::shared_ptr< IRFunctionDefinition > & | functionDefinition | ||
| ) |
Definition at line 1039 of file IR.cpp.
References IRFFITable::importedLibraries.
| yoi::indexTable<yoi::wstr, std::tuple<yoi::indexT, yoi::indexT, std::set<IRFunctionDefinition::FunctionAttrs> > > exportedFunctionTable |
Definition at line 1106 of file IR.h.
Referenced by IRFFITable::addExportedFunction().
| yoi::indexTable<yoi::wstr, std::shared_ptr<IRValueType> > foreignTypeTable |
Definition at line 1108 of file IR.h.
Referenced by IRFFITable::addForeignType().
| yoi::indexTable<yoi::wstr, ImportLibrary> importedLibraries |
Definition at line 1110 of file IR.h.
Referenced by IRFFITable::addImportedFunction().