67 lines
2.2 KiB
Python
67 lines
2.2 KiB
Python
############################################################################
|
|
# tools/pynuttx/nxgdb/protocols/value.py
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
|
# contributor license agreements. See the NOTICE file distributed with
|
|
# this work for additional information regarding copyright ownership. The
|
|
# ASF licenses this file to you under the Apache License, Version 2.0 (the
|
|
# "License"); you may not use this file except in compliance with the
|
|
# License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
#
|
|
############################################################################
|
|
|
|
from __future__ import annotations
|
|
|
|
from typing import Protocol
|
|
|
|
import gdb
|
|
|
|
|
|
class Value(Protocol):
|
|
address: Value
|
|
is_optimized_out: bool
|
|
type: gdb.Type
|
|
dynamic_type: gdb.Type
|
|
is_lazy: bool
|
|
bytes: bytes
|
|
|
|
def cast(self, type: gdb.Type) -> Value: ...
|
|
def dereference(self) -> Value: ...
|
|
def referenced_value(self) -> Value: ...
|
|
def reference_value(self) -> Value: ...
|
|
def rvalue_reference_value(self) -> Value: ...
|
|
def const_value(self) -> Value: ...
|
|
def dynamic_cast(self, type: gdb.Type) -> Value: ...
|
|
def reinterpret_cast(self, type: gdb.Type) -> Value: ...
|
|
|
|
def format_string(
|
|
self,
|
|
raw: bool = ...,
|
|
pretty_arrays: bool = ...,
|
|
pretty_structs: bool = ...,
|
|
array_indexes: bool = ...,
|
|
symbols: bool = ...,
|
|
unions: bool = ...,
|
|
address: bool = ...,
|
|
deref_refs: bool = ...,
|
|
actual_objects: bool = ...,
|
|
static_members: bool = ...,
|
|
max_elements: int = ...,
|
|
max_depth: int = ...,
|
|
repeat_threshold: int = ...,
|
|
format: str = ...,
|
|
) -> str: ...
|
|
|
|
def string(
|
|
self, encoding: str = ..., errors: str = ..., length: int = ...
|
|
) -> str: ...
|