Passed
Push — master ( 8fdecd...f93fb5 )
by Oleksandr
01:11
created

commons.actors.AIAircraft.__repr__()   A

Complexity

Conditions 1

Size

Total Lines 2
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
eloc 2
dl 0
loc 2
ccs 0
cts 0
cp 0
rs 10
c 0
b 0
f 0
cc 1
nop 1
crap 2
1
"""
2
Primitive actor data structures.
3
4
"""
5
from dataclasses import dataclass
6 1
7
from .structures import PrimitiveDataclassMixin
8
9 1
from ._utils import export
10
11
12
@export
13
@dataclass(frozen=True)
14
class Actor(PrimitiveDataclassMixin):
15 1
  ...
16 1
17
18 1
@export
19
@dataclass(frozen=True)
20
class Human(Actor):
21
  __slots__ = ["callsign", ]
22
23
  callsign: str
24
25 1
26 1
@export
27
@dataclass(frozen=True)
28 1
class HumanAircraft(Human):
29
  __slots__ = Human.__slots__ + ["aircraft", ]
30
31
  aircraft: str
32
33
34
@export
35
@dataclass(frozen=True)
36 1
class HumanAircraftCrewMember(HumanAircraft):
37 1
  __slots__ = HumanAircraft.__slots__ + ["index", ]
38
39 1
  index: int
40
41
42
@export
43
@dataclass(frozen=True)
44
class AIAircraft(Actor):
45
  __slots__ = ["flight_id", "aircraft", ]
46
47
  flight_id: str
48
  aircraft:  str
49
50 1
51 1
@export
52
@dataclass(frozen=True)
53 1
class AIAircraftCrewMember(AIAircraft):
54
  __slots__ = AIAircraft.__slots__ + ["index", ]
55
56
  index: int
57
58
59
@export
60
@dataclass(frozen=True)
61 1
class Unit(Actor):
62 1
  __slots__ = ["id", ]
63
64 1
  id: str
65
66
67
@export
68
@dataclass(frozen=True)
69
class StationaryUnit(Unit):
70
  ...
71
72
73
@export
74
@dataclass(frozen=True)
75 1
class MovingUnit(Unit):
76 1
  ...
77
78 1
79
@export
80
@dataclass(frozen=True)
81
class MovingUnitMember(MovingUnit):
82
  __slots__ = MovingUnit.__slots__ + ["index", ]
83
84
  index: int
85 1
86
87
@export
88
@dataclass(frozen=True)
89
class Building(Actor):
90
  __slots__ = ["name", ]
91 1
92
  name: str
93
94
95
@export
96
@dataclass(frozen=True)
97 1
class Bridge(Actor):
98 1
  __slots__ = ["id", ]
99
100
  id: str
101