//===-- Expression.h ---------------------------------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// #include "lldb/Expression/Expression.h" #include "lldb/Target/ExecutionContextScope.h" #include "lldb/Target/Target.h" using namespace lldb_private; Expression::Expression (Target &target) : m_target_wp (target.shared_from_this()), m_jit_start_addr (LLDB_INVALID_ADDRESS), m_jit_end_addr (LLDB_INVALID_ADDRESS) { // Can't make any kind of expression without a target. assert (m_target_wp.lock()); } Expression::Expression (ExecutionContextScope &exe_scope) : m_target_wp (exe_scope.CalculateTarget()), m_jit_start_addr (LLDB_INVALID_ADDRESS), m_jit_end_addr (LLDB_INVALID_ADDRESS) { assert (m_target_wp.lock()); }