33    std::map<const IR::Expression *, cstring> name;
 
   38        setName(
"KeyNameGenerator");
 
   40    void error(
const IR::Expression *expression);
 
   41    void postorder(
const IR::Expression *expression) 
override;
 
   42    void postorder(
const IR::PathExpression *expression) 
override;
 
   43    void postorder(
const IR::Member *expression) 
override;
 
   44    void postorder(
const IR::ArrayIndex *expression) 
override;
 
   45    void postorder(
const IR::Constant *expression) 
override;
 
   46    void postorder(
const IR::Slice *expression) 
override;
 
   47    void postorder(
const IR::BAnd *expression) 
override;
 
   48    void postorder(
const IR::MethodCallExpression *expression) 
override;
 
   49    cstring getName(
const IR::Expression *expression) { return ::get(name, expression); }