jscript: Moved allocating double literal to separated function.
diff --git a/dlls/jscript/lex.c b/dlls/jscript/lex.c
index 5ac92d9..135c1d1 100644
--- a/dlls/jscript/lex.c
+++ b/dlls/jscript/lex.c
@@ -364,7 +364,7 @@
return tStringLiteral;
}
-static literal_t *alloc_int_literal(parser_ctx_t *ctx, LONG l)
+static literal_t *new_int_literal(parser_ctx_t *ctx, LONG l)
{
literal_t *ret = parser_alloc(ctx, sizeof(literal_t));
@@ -374,6 +374,15 @@
return ret;
}
+static literal_t *new_double_literal(parser_ctx_t *ctx, DOUBLE d)
+{
+ literal_t *ret = parser_alloc(ctx, sizeof(literal_t));
+
+ ret->type = LT_DOUBLE;
+ ret->u.dval = d;
+ return ret;
+}
+
literal_t *new_boolean_literal(parser_ctx_t *ctx, VARIANT_BOOL bval)
{
literal_t *ret = parser_alloc(ctx, sizeof(literal_t));
@@ -455,10 +464,7 @@
else exp += e;
}
- *literal = parser_alloc(ctx, sizeof(literal_t));
- (*literal)->type = LT_DOUBLE;
- (*literal)->u.dval = (double)d*pow(10, exp);
-
+ *literal = new_double_literal(ctx, (DOUBLE)d*pow(10, exp));
return tNumericLiteral;
}
@@ -468,7 +474,7 @@
l = *ctx->ptr++ - '0';
if(ctx->ptr == ctx->end) {
- *literal = alloc_int_literal(ctx, l);
+ *literal = new_int_literal(ctx, l);
return tNumericLiteral;
}
@@ -489,7 +495,7 @@
return lex_error(ctx, E_FAIL);
}
- *literal = alloc_int_literal(ctx, l);
+ *literal = new_int_literal(ctx, l);
return tNumericLiteral;
}
@@ -498,7 +504,7 @@
return lex_error(ctx, E_FAIL);
}
- *literal = alloc_int_literal(ctx, 0);
+ *literal = new_int_literal(ctx, 0);
}
while(ctx->ptr < ctx->end && isdigitW(*ctx->ptr))
@@ -523,7 +529,7 @@
}
}
- *literal = alloc_int_literal(ctx, l);
+ *literal = new_int_literal(ctx, l);
return tNumericLiteral;
}