Home | History | Annotate | Download | only in Orc
      1 //===------ NullResolver.h - Reject symbol lookup requests ------*- C++ -*-===//
      2 //
      3 //                     The LLVM Compiler Infrastructure
      4 //
      5 // This file is distributed under the University of Illinois Open Source
      6 // License. See LICENSE.TXT for details.
      7 //
      8 //===----------------------------------------------------------------------===//
      9 //
     10 //   Defines a RuntimeDyld::SymbolResolver subclass that rejects all symbol
     11 // resolution requests, for clients that have no cross-object fixups.
     12 //
     13 //===----------------------------------------------------------------------===//
     14 
     15 #ifndef LLVM_EXECUTIONENGINE_ORC_NULLRESOLVER_H
     16 #define LLVM_EXECUTIONENGINE_ORC_NULLRESOLVER_H
     17 
     18 #include "llvm/ExecutionEngine/RuntimeDyld.h"
     19 
     20 namespace llvm {
     21 namespace orc {
     22 
     23 /// SymbolResolver impliementation that rejects all resolution requests.
     24 /// Useful for clients that have no cross-object fixups.
     25 class NullResolver : public RuntimeDyld::SymbolResolver {
     26 public:
     27   RuntimeDyld::SymbolInfo findSymbol(const std::string &Name) final;
     28 
     29   RuntimeDyld::SymbolInfo
     30   findSymbolInLogicalDylib(const std::string &Name) final;
     31 };
     32 
     33 } // End namespace orc.
     34 } // End namespace llvm.
     35 
     36 #endif // LLVM_EXECUTIONENGINE_ORC_NULLRESOLVER_H
     37