[vala/staging] codegen: Re-use CCodeIdentifier ("_data_")
- From: Rico Tzschichholz <ricotz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala/staging] codegen: Re-use CCodeIdentifier ("_data_")
- Date: Wed, 14 Dec 2016 18:40:52 +0000 (UTC)
commit 136c400d312cafd127dc6d223c4e2970ed8e1585
Author: Rico Tzschichholz <ricotz ubuntu com>
Date: Wed Dec 14 19:37:12 2016 +0100
codegen: Re-use CCodeIdentifier ("_data_")
codegen/valaccodemethodmodule.vala | 11 ++++++-----
codegen/valagasyncmodule.vala | 12 +++++++-----
2 files changed, 13 insertions(+), 10 deletions(-)
---
diff --git a/codegen/valaccodemethodmodule.vala b/codegen/valaccodemethodmodule.vala
index 6d8d3b6..35de6de 100644
--- a/codegen/valaccodemethodmodule.vala
+++ b/codegen/valaccodemethodmodule.vala
@@ -124,18 +124,19 @@ public abstract class Vala.CCodeMethodModule : CCodeStructModule {
}
public void complete_async () {
- var async_result_expr = new CCodeMemberAccess.pointer (new CCodeIdentifier ("_data_"),
"_async_result");
+ var data_var = new CCodeIdentifier ("_data_");
+ var async_result_expr = new CCodeMemberAccess.pointer (data_var, "_async_result");
if (context.require_glib_version (2, 36)) {
var finish_call = new CCodeFunctionCall (new CCodeIdentifier
("g_task_return_pointer"));
finish_call.add_argument (async_result_expr);
- finish_call.add_argument (new CCodeIdentifier ("_data_"));
+ finish_call.add_argument (data_var);
finish_call.add_argument (new CCodeConstant ("NULL"));
ccode.add_expression (finish_call);
// Preserve the "complete now" behavior if state != 0, do so by
// iterating the GTask's main context till the task is complete.
- var state = new CCodeMemberAccess.pointer (new CCodeIdentifier ("_data_"), "_state_");
+ var state = new CCodeMemberAccess.pointer (data_var, "_state_");
var zero = new CCodeConstant ("0");
var state_is_not_zero = new CCodeBinaryExpression (CCodeBinaryOperator.INEQUALITY,
state, zero);
ccode.open_if (state_is_not_zero);
@@ -147,7 +148,7 @@ public abstract class Vala.CCodeMethodModule : CCodeStructModule {
task_complete.add_argument (async_result_expr);
task_is_complete = new CCodeBinaryExpression (CCodeBinaryOperator.INEQUALITY,
task_complete, new CCodeConstant ("TRUE"));
} else {
- var task_complete = new CCodeMemberAccess.pointer (new CCodeIdentifier
("_data_"), "_task_complete_");
+ var task_complete = new CCodeMemberAccess.pointer (data_var,
"_task_complete_");
task_is_complete = new CCodeBinaryExpression (CCodeBinaryOperator.INEQUALITY,
task_complete, new CCodeConstant ("TRUE"));
}
@@ -162,7 +163,7 @@ public abstract class Vala.CCodeMethodModule : CCodeStructModule {
ccode.close ();
} else {
- var state = new CCodeMemberAccess.pointer (new CCodeIdentifier ("_data_"), "_state_");
+ var state = new CCodeMemberAccess.pointer (data_var, "_state_");
var zero = new CCodeConstant ("0");
var state_is_zero = new CCodeBinaryExpression (CCodeBinaryOperator.EQUALITY, state,
zero);
ccode.open_if (state_is_zero);
diff --git a/codegen/valagasyncmodule.vala b/codegen/valagasyncmodule.vala
index d389ae6..a077b4a 100644
--- a/codegen/valagasyncmodule.vala
+++ b/codegen/valagasyncmodule.vala
@@ -696,17 +696,19 @@ public class Vala.GAsyncModule : GtkModule {
push_function (readyfunc);
+ var data_var = new CCodeIdentifier ("_data_");
+
ccode.add_declaration (dataname + "*", new CCodeVariableDeclarator ("_data_"));
- ccode.add_assignment (new CCodeIdentifier ("_data_"), new CCodeIdentifier ("_user_data_"));
- ccode.add_assignment (new CCodeMemberAccess.pointer (new CCodeIdentifier ("_data_"),
"_source_object_"), new CCodeIdentifier ("source_object"));
- ccode.add_assignment (new CCodeMemberAccess.pointer (new CCodeIdentifier ("_data_"),
"_res_"), new CCodeIdentifier ("_res_"));
+ ccode.add_assignment (data_var, new CCodeIdentifier ("_user_data_"));
+ ccode.add_assignment (new CCodeMemberAccess.pointer (data_var, "_source_object_"), new
CCodeIdentifier ("source_object"));
+ ccode.add_assignment (new CCodeMemberAccess.pointer (data_var, "_res_"), new CCodeIdentifier
("_res_"));
if (context.require_glib_version (2, 36) && !context.require_glib_version (2, 44)) {
- ccode.add_assignment (new CCodeMemberAccess.pointer (new CCodeIdentifier ("_data_"),
"_task_complete_"), new CCodeConstant ("TRUE"));
+ ccode.add_assignment (new CCodeMemberAccess.pointer (data_var, "_task_complete_"),
new CCodeConstant ("TRUE"));
}
var ccall = new CCodeFunctionCall (new CCodeIdentifier (get_ccode_real_name (m) + "_co"));
- ccall.add_argument (new CCodeIdentifier ("_data_"));
+ ccall.add_argument (data_var);
ccode.add_expression (ccall);
readyfunc.modifiers |= CCodeModifiers.STATIC;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]