next_->Replace(context);
}
-CYStatement *CYEmpty::Replace(CYContext &context) {
+CYForInitializer *CYEmpty::Replace(CYContext &context) {
return NULL;
}
return $ CYReturn(expression_);
}
-CYStatement *CYExpress::Replace(CYContext &context) {
+CYForInitializer *CYExpress::Replace(CYContext &context) {
context.Replace(expression_);
return this;
}
return this;
}
-CYExpression *CYForDeclarations::Replace(CYContext &context) {
- return declarations_->Replace(context, CYIdentifierVariable);
-}
-
CYStatement *CYForLexical::Initialize(CYContext &context, CYExpression *value) {
if (value == NULL) {
if (declaration_->initialiser_ == NULL)
return $N2($V("Functor"), $ CYFunctionExpression(NULL, parameters_->Parameters(context), code_), parameters_->TypeSignature(context, typed_->Replace(context)));
}
-CYStatement *CYLet::Replace(CYContext &context) {
+CYForInitializer *CYLet::Replace(CYContext &context) {
if (CYExpression *expression = declarations_->Replace(context, CYIdentifierLexical))
return $E(expression);
return $ CYEmpty();
return next_->TypeSignature(context, $ CYAdd(prefix, typed_->Replace(context)));
}
-CYStatement *CYVar::Replace(CYContext &context) {
+CYForInitializer *CYVar::Replace(CYContext &context) {
if (CYExpression *expression = declarations_->Replace(context, CYIdentifierVariable))
return $E(expression);
return $ CYEmpty();