2020-02-21 10:10:00 +01:00
|
|
|
############################################################################
|
|
|
|
#
|
|
|
|
# Copyright (C) 2016 The Qt Company Ltd.
|
|
|
|
# Contact: https://www.qt.io/licensing/
|
|
|
|
#
|
|
|
|
# This file is part of Qt Creator.
|
|
|
|
#
|
|
|
|
# Commercial License Usage
|
|
|
|
# Licensees holding valid commercial Qt licenses may use this file in
|
|
|
|
# accordance with the commercial license agreement provided with the
|
|
|
|
# Software or, alternatively, in accordance with the terms contained in
|
|
|
|
# a written agreement between you and The Qt Company. For licensing terms
|
|
|
|
# and conditions see https://www.qt.io/terms-conditions. For further
|
|
|
|
# information use the contact form at https://www.qt.io/contact-us.
|
|
|
|
#
|
|
|
|
# GNU General Public License Usage
|
|
|
|
# Alternatively, this file may be used under the terms of the GNU
|
|
|
|
# General Public License version 3 as published by the Free Software
|
|
|
|
# Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
|
|
|
|
# included in the packaging of this file. Please review the following
|
|
|
|
# information to ensure the GNU General Public License requirements will
|
|
|
|
# be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
|
|
|
#
|
|
|
|
############################################################################
|
|
|
|
|
|
|
|
# Debugger start modes. Keep in sync with DebuggerStartMode in debuggerconstants.h
|
|
|
|
|
|
|
|
|
2020-02-24 14:37:56 +01:00
|
|
|
class DebuggerStartMode():
|
2020-02-21 10:10:00 +01:00
|
|
|
(
|
|
|
|
NoStartMode,
|
|
|
|
StartInternal,
|
|
|
|
StartExternal,
|
|
|
|
AttachExternal,
|
|
|
|
AttachCrashedExternal,
|
|
|
|
AttachCore,
|
|
|
|
AttachToRemoteServer,
|
|
|
|
AttachToRemoteProcess,
|
|
|
|
StartRemoteProcess,
|
|
|
|
) = range(0, 9)
|
|
|
|
|
|
|
|
|
|
|
|
# Known special formats. Keep in sync with DisplayFormat in debuggerprotocol.h
|
2020-02-24 14:37:56 +01:00
|
|
|
class DisplayFormat():
|
2020-02-21 10:10:00 +01:00
|
|
|
(
|
2020-02-24 15:10:47 +01:00
|
|
|
Automatic,
|
|
|
|
Raw,
|
|
|
|
Simple,
|
|
|
|
Enhanced,
|
|
|
|
Separate,
|
|
|
|
Latin1String,
|
|
|
|
SeparateLatin1String,
|
|
|
|
Utf8String,
|
|
|
|
SeparateUtf8String,
|
|
|
|
Local8BitString,
|
|
|
|
Utf16String,
|
|
|
|
Ucs4String,
|
|
|
|
Array10,
|
|
|
|
Array100,
|
|
|
|
Array1000,
|
|
|
|
Array10000,
|
|
|
|
ArrayPlot,
|
|
|
|
CompactMap,
|
|
|
|
DirectQListStorage,
|
|
|
|
IndirectQListStorage,
|
2020-02-21 10:10:00 +01:00
|
|
|
) = range(0, 20)
|
|
|
|
|
|
|
|
|
|
|
|
# Breakpoints. Keep synchronized with BreakpointType in breakpoint.h
|
2020-02-24 14:37:56 +01:00
|
|
|
class BreakpointType():
|
2020-02-21 10:10:00 +01:00
|
|
|
(
|
|
|
|
UnknownType,
|
|
|
|
BreakpointByFileAndLine,
|
|
|
|
BreakpointByFunction,
|
|
|
|
BreakpointByAddress,
|
|
|
|
BreakpointAtThrow,
|
|
|
|
BreakpointAtCatch,
|
|
|
|
BreakpointAtMain,
|
|
|
|
BreakpointAtFork,
|
|
|
|
BreakpointAtExec,
|
|
|
|
BreakpointAtSysCall,
|
|
|
|
WatchpointAtAddress,
|
|
|
|
WatchpointAtExpression,
|
|
|
|
BreakpointOnQmlSignalEmit,
|
|
|
|
BreakpointAtJavaScriptThrow,
|
|
|
|
) = range(0, 14)
|
|
|
|
|
|
|
|
|
2020-05-07 17:35:34 +02:00
|
|
|
# Internal codes for types. Keep in sync with cdbextensions pytype.cpp
|
2020-02-24 14:37:56 +01:00
|
|
|
class TypeCode():
|
2020-02-21 10:10:00 +01:00
|
|
|
(
|
2020-02-24 15:10:47 +01:00
|
|
|
Typedef,
|
|
|
|
Struct,
|
|
|
|
Void,
|
|
|
|
Integral,
|
|
|
|
Float,
|
|
|
|
Enum,
|
|
|
|
Pointer,
|
|
|
|
Array,
|
|
|
|
Complex,
|
|
|
|
Reference,
|
|
|
|
Function,
|
|
|
|
MemberPointer,
|
|
|
|
FortranString,
|
|
|
|
Unresolvable,
|
|
|
|
Bitfield,
|
|
|
|
RValueReference,
|
2020-02-21 10:10:00 +01:00
|
|
|
) = range(0, 16)
|
|
|
|
|
|
|
|
|
2020-05-07 17:35:34 +02:00
|
|
|
# Internal codes for logging channels. Keep in sync woth debuggerconstants.h
|
|
|
|
class LogChannel():
|
|
|
|
(
|
|
|
|
LogInput, # Used for user input
|
|
|
|
LogMiscInput, # Used for misc stuff in the input pane
|
|
|
|
LogOutput,
|
|
|
|
LogWarning,
|
|
|
|
LogError,
|
|
|
|
LogStatus, # Used for status changed messages
|
|
|
|
LogTime, # Used for time stamp messages
|
|
|
|
LogDebug,
|
|
|
|
LogMisc,
|
|
|
|
AppOutput, # stdout
|
|
|
|
AppError, # stderr
|
|
|
|
AppStuff, # (possibly) windows debug channel
|
|
|
|
StatusBar, # LogStatus and also put to the status bar
|
|
|
|
ConsoleOutput # Used to output to console
|
|
|
|
) = range(0, 14)
|
|
|
|
|
|
|
|
|
2020-02-21 10:10:00 +01:00
|
|
|
def isIntegralTypeName(name):
|
|
|
|
return name in (
|
|
|
|
"int",
|
|
|
|
"unsigned int",
|
|
|
|
"signed int",
|
|
|
|
"short",
|
|
|
|
"unsigned short",
|
|
|
|
"long",
|
|
|
|
"unsigned long",
|
|
|
|
"long long",
|
|
|
|
"unsigned long long",
|
|
|
|
"char",
|
|
|
|
"signed char",
|
|
|
|
"unsigned char",
|
|
|
|
"bool",
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
def isFloatingPointTypeName(name):
|
|
|
|
return name in ("float", "double", "long double")
|