void reg_fpr ::invite (visitor &v) { v.visit (*this); }
void ptrvar ::invite (visitor &v) { v.visit (*this); }
void mnemonic ::invite (visitor &v) { v.visit (*this); }
void function ::invite (visitor &v) { v.visit (*this); }
void entry ::invite (visitor &v) { v.visit (*this); }
bool usage_requirements::accept(visitor& v) const { return v.visit(*this); }
void compcall ::invite (visitor &v) { v.visit (*this); }
void instruction::invite (visitor &v) { v.visit (*this); }
void imm_int ::invite (visitor &v) { v.visit (*this); }
void attack::accept(visitor& v) { v.visit(shared_from_this()); }
void code ::invite (visitor &v) { v.visit (*this); }
void recruit::accept(visitor& v) { v.visit(shared_from_this()); }
void move::accept(visitor& v) { v.visit(shared_from_this()); }
virtual void accept(visitor& v) override { v.visit(*this); }
void fltvar ::invite (visitor &v) { v.visit (*this); }
void assignment ::invite (visitor &v) { v.visit (*this); }
void reg_ret ::invite (visitor &v) { v.visit (*this); }
bool feature_set::accept(visitor& v) const { return v.visit(*this); }