LLDB  mainline
CFCBundle.h
Go to the documentation of this file.
1 //===-- CFCBundle.h ---------------------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLDB_SOURCE_HOST_MACOSX_CFCPP_CFCBUNDLE_H
10 #define LLDB_SOURCE_HOST_MACOSX_CFCPP_CFCBUNDLE_H
11 
12 #include "CFCReleaser.h"
13 
14 class CFCBundle : public CFCReleaser<CFBundleRef> {
15 public:
16  // Constructors and Destructors
17  CFCBundle(const char *path = NULL);
18  CFCBundle(CFURLRef url);
19 
20  virtual ~CFCBundle();
21 
22  CFURLRef CopyExecutableURL() const;
23 
24  CFStringRef GetIdentifier() const;
25 
26  CFTypeRef GetValueForInfoDictionaryKey(CFStringRef key) const;
27 
28  bool GetPath(char *dst, size_t dst_len);
29 
30  bool SetPath(const char *path);
31 
32 private:
33  // Disallow copy and assignment constructors
34  CFCBundle(const CFCBundle &) = delete;
35 
36  const CFCBundle &operator=(const CFCBundle &) = delete;
37 };
38 
39 #endif // LLDB_SOURCE_HOST_MACOSX_CFCPP_CFCBUNDLE_H
CFCBundle::GetValueForInfoDictionaryKey
CFTypeRef GetValueForInfoDictionaryKey(CFStringRef key) const
Definition: CFCBundle.cpp:64
CFCBundle::CFCBundle
CFCBundle(const char *path=NULL)
Definition: CFCBundle.cpp:13
CFCBundle::GetIdentifier
CFStringRef GetIdentifier() const
Definition: CFCBundle.cpp:57
CFCReleaser
CFCReleaser.h
CFCBundle::CopyExecutableURL
CFURLRef CopyExecutableURL() const
Definition: CFCBundle.cpp:71
CFCBundle::operator=
const CFCBundle & operator=(const CFCBundle &)=delete
CFCBundle
Definition: CFCBundle.h:14
CFCBundle::SetPath
bool SetPath(const char *path)
Definition: CFCBundle.cpp:25
CFCBundle::~CFCBundle
virtual ~CFCBundle()
CFCBundle::GetPath
bool GetPath(char *dst, size_t dst_len)
Definition: CFCBundle.cpp:43