• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //===-- OptionGroupVariable.h -----------------------------------*- 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 #ifndef liblldb_OptionGroupVariable_h_
11 #define liblldb_OptionGroupVariable_h_
12 
13 // C Includes
14 // C++ Includes
15 // Other libraries and framework includes
16 // Project includes
17 #include "lldb/Interpreter/OptionValueString.h"
18 #include "lldb/Interpreter/Options.h"
19 
20 namespace lldb_private {
21 
22 //-------------------------------------------------------------------------
23 // OptionGroupVariable
24 //-------------------------------------------------------------------------
25 
26     class OptionGroupVariable : public OptionGroup
27     {
28     public:
29 
30         OptionGroupVariable (bool show_frame_options);
31 
32         virtual
33         ~OptionGroupVariable ();
34 
35         virtual uint32_t
36         GetNumDefinitions ();
37 
38         virtual const OptionDefinition*
39         GetDefinitions ();
40 
41         virtual Error
42         SetOptionValue (CommandInterpreter &interpreter,
43                         uint32_t option_idx,
44                         const char *option_arg);
45 
46         virtual void
47         OptionParsingStarting (CommandInterpreter &interpreter);
48 
49         bool include_frame_options:1,
50              show_args:1,       // Frame option only (include_frame_options == true)
51              show_locals:1,     // Frame option only (include_frame_options == true)
52              show_globals:1,    // Frame option only (include_frame_options == true)
53              use_regex:1,
54              show_scope:1,
55              show_decl:1;
56         OptionValueString summary;            // the name of a named summary
57         OptionValueString summary_string;     // a summary string
58 
59     private:
60         DISALLOW_COPY_AND_ASSIGN(OptionGroupVariable);
61     };
62 
63 } // namespace lldb_private
64 
65 #endif  // liblldb_OptionGroupVariable_h_
66