CommonLibSSE (powerof3)
|
#include <NativeFunction.h>
Public Types | |
using | result_type = R |
using | base_type = Base |
using | function_type = F |
Public Types inherited from RE::BSScript::IFunction | |
enum class | FunctionType { kNormal = 0 , kGetter = 1 , kSetter = 2 } |
enum class | CallResult { kCompleted = 0 , kSetupForVM = 1 , kInProgress = 2 , kFailedRetry = 3 , kFailedAbort = 4 } |
Public Member Functions | |
NativeFunction ()=delete | |
NativeFunction (const NativeFunction &)=delete | |
NativeFunction (NativeFunction &&)=delete | |
NativeFunction (std::string_view a_fnName, std::string_view a_className, function_type a_callback) | |
~NativeFunction () override=default | |
bool | HasStub () const override |
bool | MarshallAndDispatch (Variable &a_baseValue, Internal::VirtualMachine &a_vm, VMStackID a_stackID, Variable &a_resultValue, const StackFrame &a_frame) const override |
Public Member Functions inherited from RE::BSScript::NF_util::NativeFunctionBase | |
NativeFunctionBase ()=delete | |
NativeFunctionBase (std::string_view a_fnName, std::string_view a_className, bool a_isStatic, std::uint16_t a_numParams) | |
~NativeFunctionBase () override=default | |
const BSFixedString & | GetName () const override |
const BSFixedString & | GetObjectTypeName () const override |
const BSFixedString & | GetStateName () const override |
TypeInfo | GetReturnType () const override |
std::uint32_t | GetParamCount () const override |
void | GetParam (std::uint32_t a_idx, BSFixedString &a_nameOut, TypeInfo &a_typeOut) const override |
std::uint32_t | GetStackFrameSize () const override |
bool | GetIsNative () const override |
bool | GetIsStatic () const override |
bool | GetIsEmpty () const override |
FunctionType | GetFunctionType () const override |
std::uint32_t | GetUserFlags () const override |
const BSFixedString & | GetDocString () const override |
void | InsertLocals (StackFrame *a_frame) override |
CallResult | Call (const BSTSmartPointer< Stack > &a_stack, ErrorLogger *a_logger, Internal::VirtualMachine *a_vm, bool a_arg4) override |
const BSFixedString & | GetSourceFilename () const override |
bool | TranslateIPToLineNumber (std::uint32_t a_taskletExecutionOffset, std::uint32_t &a_lineNumberOut) const override |
bool | GetVarNameForStackIndex (std::uint32_t a_idx, BSFixedString &a_nameOut) const override |
bool | CanBeCalledFromTasklets () const override |
void | SetCallableFromTasklets (bool a_callable) override |
const bool | GetIsLatent () const |
Public Member Functions inherited from RE::BSScript::IFunction | |
IFunction () | |
virtual | ~IFunction ()=default |
Public Member Functions inherited from RE::BSIntrusiveRefCounted | |
std::uint32_t | IncRef () const |
std::uint32_t | DecRef () const |
TES_HEAP_REDEFINE_NEW () | |
Protected Attributes | |
std::function< function_type > | _stub |
Protected Attributes inherited from RE::BSScript::NF_util::NativeFunctionBase | |
BSFixedString | _name |
BSFixedString | _objName |
BSFixedString | _stateName { "" } |
TypeInfo | _retType |
Internal::VDescTable | _descTable |
bool | _isStatic |
bool | _isCallableFromTasklet { false } |
bool | _isLatent { false } |
std::uint8_t | _pad43 { 0 } |
std::uint32_t | _userFlags { 0 } |
BSFixedString | _docString |
Protected Attributes inherited from RE::BSIntrusiveRefCounted | |
volatile std::uint32_t | _refCount { 0 } |
Additional Inherited Members | |
Public Attributes inherited from RE::BSScript::IFunction | |
std::uint32_t | pad0C |
Static Public Attributes inherited from RE::BSScript::NF_util::NativeFunctionBase | |
static constexpr auto | RTTI = RTTI_BSScript__NF_util__NativeFunctionBase |
static constexpr auto | VTABLE = VTABLE_BSScript__NF_util__NativeFunctionBase |
Static Public Attributes inherited from RE::BSScript::IFunction | |
static constexpr auto | RTTI = RTTI_BSScript__IFunction |
static constexpr auto | VTABLE = VTABLE_BSScript__IFunction |
using RE::BSScript::NativeFunction< IS_LONG, F, R, Base, Args >::base_type = Base |
using RE::BSScript::NativeFunction< IS_LONG, F, R, Base, Args >::function_type = F |
using RE::BSScript::NativeFunction< IS_LONG, F, R, Base, Args >::result_type = R |
|
delete |
|
delete |
|
delete |
|
inline |
|
overridedefault |
|
inlineoverridevirtual |
Implements RE::BSScript::NF_util::NativeFunctionBase.
|
inlineoverridevirtual |
Implements RE::BSScript::NF_util::NativeFunctionBase.
|
protected |