32 |
#define variable_fall 0x8003 |
#define variable_fall 0x8003 |
33 |
|
|
34 |
|
|
35 |
|
struct ort_absolut; |
36 |
|
class Blop; |
37 |
|
class Ort; |
38 |
class VarDefinition; |
class VarDefinition; |
39 |
|
|
40 |
/** (Auftreten einer) Variable in einer Prozedur. |
/** (Auftreten einer) Variable in einer Prozedur. |
57 |
|
|
58 |
/** Relative Koordinaten, so wie sie der cual-Programmierer eingegeben |
/** Relative Koordinaten, so wie sie der cual-Programmierer eingegeben |
59 |
hat. */ |
hat. */ |
60 |
int mDX, mDY; |
Ort * mOrt; |
61 |
|
|
62 |
|
|
63 |
public: |
public: |
64 |
/** Erzeugt eine Müll-Variable. Wird verwendet, wenn es einen Fehler |
/** Erzeugt eine Müll-Variable. Wird verwendet, wenn es einen Fehler |
68 |
Variable(); |
Variable(); |
69 |
|
|
70 |
Variable(//__String datna, int znr, |
Variable(//__String datna, int znr, |
71 |
VarDefinition * d, int dx, int dy = 0); |
VarDefinition * d, Ort * ort); |
72 |
|
|
73 |
|
~Variable(); |
74 |
|
|
75 |
__String toString() const; |
__String toString() const; |
76 |
|
|
77 |
/** Liefert die absoluten Koordinaten, so wie sie intern gebraucht |
|
78 |
werden (also ggf. gespiegelt und Hex-bereinigt). (y wird von |
bool Ort_hier() const; |
79 |
getDX() zwar nicht gebraucht, aber so sieht's schöner aus.) */ |
|
80 |
int getX(int x, int y) const; |
ort_absolut getOrt(ort_absolut vonhieraus, Blop & fuer_code) const; |
|
int getY(int x, int y) const; |
|
|
|
|
|
/** Liefert bei variable_fall 0 oder 1, je nachdem welcher Fall-Blop |
|
|
gemeint ist. Das wurde dem Konstruktor über dy mitgeteilt. */ |
|
|
int getWelcherFall() const; |
|
81 |
|
|
82 |
int getNummer() const; |
int getNummer() const; |
83 |
|
|
|
int getOrt() const; |
|
|
|
|
84 |
bool istKonstante() const; |
bool istKonstante() const; |
85 |
|
|
86 |
/** Liefert den Default-Wert, wenn's eine Variable ist und den |
/** Liefert den Default-Wert, wenn's eine Variable ist und den |