// Supposes that expression is a symbol expression, i.e. the head is a symbol. // Returns the definition of this symbol. (Overridden by Symbol.) Definition *Expression::SymbolDefinition(Calculator *calculator) { if(head) { Symbol *symbolHead = dynamic_cast<Symbol*>(head); if(symbolHead) return symbolHead->GetDefinition(calculator); } return 0; }