Wire Sysio Wire Sysion 1.0.0
Loading...
Searching...
No Matches
Runtime::LazyResolver Struct Reference

#include <Linker.h>

Inheritance diagram for Runtime::LazyResolver:
Collaboration diagram for Runtime::LazyResolver:

Public Member Functions

 LazyResolver (std::function< Resolver *()> &inInnerResolverThunk)
 
bool resolve (const std::string &moduleName, const std::string &exportName, IR::ObjectType type, Runtime::ObjectInstance *&outObject) override
 
- Public Member Functions inherited from Runtime::Resolver

Detailed Description

Definition at line 35 of file Linker.h.

Constructor & Destructor Documentation

◆ LazyResolver()

Runtime::LazyResolver::LazyResolver ( std::function< Resolver *()> & inInnerResolverThunk)
inline

Definition at line 37 of file Linker.h.

38 : innerResolverThunk(std::move(inInnerResolverThunk)), innerResolver(nullptr) {}

Member Function Documentation

◆ resolve()

bool Runtime::LazyResolver::resolve ( const std::string & moduleName,
const std::string & exportName,
IR::ObjectType type,
Runtime::ObjectInstance *& outObject )
inlineoverridevirtual

Implements Runtime::Resolver.

Definition at line 40 of file Linker.h.

41 {
42 if(!innerResolver) { innerResolver = innerResolverThunk(); }
43 return innerResolver->resolve(moduleName,exportName,type,outObject);
44 }
virtual bool resolve(const std::string &moduleName, const std::string &exportName, IR::ObjectType type, ObjectInstance *&outObject)=0
Here is the call graph for this function:

The documentation for this struct was generated from the following file: