1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
import collections
import copy
from .Utils import _write_complex_object
class StackFrame(object):
"""Data contract class for type StackFrame.
"""
_defaults = collections.OrderedDict([
('level', None),
('method', None),
('assembly', None),
('fileName', None),
('line', None)
])
def __init__(self):
"""Initializes a new instance of the class.
"""
self._values = {
'level': None,
'method': None,
}
self._initialize()
@property
def level(self):
"""The level property.
Returns:
(int). the property value. (defaults to: None)
"""
return self._values['level']
@level.setter
def level(self, value):
"""The level property.
Args:
value (int). the property value.
"""
self._values['level'] = value
@property
def method(self):
"""The method property.
Returns:
(string). the property value. (defaults to: None)
"""
return self._values['method']
@method.setter
def method(self, value):
"""The method property.
Args:
value (string). the property value.
"""
self._values['method'] = value
@property
def assembly(self):
"""The assembly property.
Returns:
(string). the property value. (defaults to: None)
"""
if 'assembly' in self._values:
return self._values['assembly']
return self._defaults['assembly']
@assembly.setter
def assembly(self, value):
"""The assembly property.
Args:
value (string). the property value.
"""
if value == self._defaults['assembly'] and 'assembly' in self._values:
del self._values['assembly']
else:
self._values['assembly'] = value
@property
def file_name(self):
"""The file_name property.
Returns:
(string). the property value. (defaults to: None)
"""
if 'fileName' in self._values:
return self._values['fileName']
return self._defaults['fileName']
@file_name.setter
def file_name(self, value):
"""The file_name property.
Args:
value (string). the property value.
"""
if value == self._defaults['fileName'] and 'fileName' in self._values:
del self._values['fileName']
else:
self._values['fileName'] = value
@property
def line(self):
"""The line property.
Returns:
(int). the property value. (defaults to: None)
"""
if 'line' in self._values:
return self._values['line']
return self._defaults['line']
@line.setter
def line(self, value):
"""The line property.
Args:
value (int). the property value.
"""
if value == self._defaults['line'] and 'line' in self._values:
del self._values['line']
else:
self._values['line'] = value
def _initialize(self):
"""Initializes the current instance of the object.
"""
pass
def write(self):
"""Writes the contents of this object and returns the content as a dict object.
Returns:
(dict). the object that represents the same data as the current instance.
"""
return _write_complex_object(self._defaults, self._values)
|