IndexExp

e1 [ e2 ]

Constructors

this
this(Loc loc, Expression e1, Expression e2)
Undocumented in source.

Members

Functions

accept
void accept(Visitor v)
Undocumented in source. Be warned that the author may not have intended to support it.
checkModifiable
Modifiable checkModifiable(Scope* sc, int flag)
Undocumented in source. Be warned that the author may not have intended to support it.
isLvalue
bool isLvalue()
Undocumented in source. Be warned that the author may not have intended to support it.
markSettingAAElem
Expression markSettingAAElem()
Undocumented in source. Be warned that the author may not have intended to support it.
modifiableLvalue
Expression modifiableLvalue(Scope* sc, Expression e)
Undocumented in source. Be warned that the author may not have intended to support it.
syntaxCopy
IndexExp syntaxCopy()
Undocumented in source. Be warned that the author may not have intended to support it.
toLvalue
Expression toLvalue(Scope* sc, Expression e)
Undocumented in source. Be warned that the author may not have intended to support it.

Variables

indexIsInBounds
bool indexIsInBounds;
Undocumented in source.
lengthVar
VarDeclaration lengthVar;
Undocumented in source.
modifiable
bool modifiable;
Undocumented in source.

Inherited Members

From BinExp

e1
Expression e1;
Undocumented in source.
e2
Expression e2;
Undocumented in source.
att1
Type att1;
Undocumented in source.
att2
Type att2;
Undocumented in source.
syntaxCopy
BinExp syntaxCopy()
Undocumented in source. Be warned that the author may not have intended to support it.
incompatibleTypes
Expression incompatibleTypes()

The types for a binary expression are incompatible. Print error message.

checkOpAssignTypes
Expression checkOpAssignTypes(Scope* sc)
Undocumented in source. Be warned that the author may not have intended to support it.
checkIntegralBin
bool checkIntegralBin()
Undocumented in source. Be warned that the author may not have intended to support it.
checkArithmeticBin
bool checkArithmeticBin()
Undocumented in source. Be warned that the author may not have intended to support it.
checkSharedAccessBin
bool checkSharedAccessBin(Scope* sc)
Undocumented in source. Be warned that the author may not have intended to support it.
setNoderefOperands
void setNoderefOperands()

Mark the operands as will never be dereferenced, which is useful info for @safe checks. Do before semantic() on operands rewrites them.

reorderSettingAAElem
Expression reorderSettingAAElem(Scope* sc)
Undocumented in source. Be warned that the author may not have intended to support it.
accept
void accept(Visitor v)
Undocumented in source. Be warned that the author may not have intended to support it.

Meta