// create proxy class
var proxy = new Class (iface.name+"Proxy", iface.source_reference, null);
proxy.add_base_type (data_type ("GLib.DBusProxy"));
- proxy.add_base_type (context.analyzer.get_data_type_for_symbol (iface));
+ proxy.add_base_type (SemanticAnalyzer.get_data_type_for_symbol (iface));
proxy.access = iface.access;
iface.parent_symbol.add_class (proxy);
string generate_dbus_method_wrapper (Method m, ObjectTypeSymbol sym) {
Method wrapper;
wrapper_method (new VoidType (), "gdbus_server "+m.get_full_name (), out wrapper);
- var object_type = context.analyzer.get_data_type_for_symbol (sym);
+ var object_type = SemanticAnalyzer.get_data_type_for_symbol (sym);
wrapper.add_parameter (new Parameter ("object", object_type));
wrapper.add_parameter (new Parameter ("arguments", data_type ("GLib.Variant", false)));
wrapper.add_parameter (new Parameter ("invocation", data_type ("GLib.DBusMethodInvocation", false)));
sym.add_method (im);
push_builder (new CodeBuilder.for_subroutine (im));
- var object_type = context.analyzer.get_data_type_for_symbol (sym);
+ var object_type = SemanticAnalyzer.get_data_type_for_symbol (sym);
var object = b.add_temp_declaration (null, expression (@"($object_type) (((Object[])user_data)[0])"));
b.open_switch (expression ("method_name"), null);
b.add_return ();
sym.add_method (m);
push_builder (new CodeBuilder.for_subroutine (m));
- var object_type = context.analyzer.get_data_type_for_symbol (sym);
+ var object_type = SemanticAnalyzer.get_data_type_for_symbol (sym);
var object = b.add_temp_declaration (null, expression (@"($object_type) (((Object[])user_data)[0])"));
b.open_switch (expression ("property_name"), null);
b.add_return (expression ("null"));
sym.add_method (m);
push_builder (new CodeBuilder.for_subroutine (m));
- var object_type = context.analyzer.get_data_type_for_symbol (sym);
+ var object_type = SemanticAnalyzer.get_data_type_for_symbol (sym);
var object = b.add_temp_declaration (null, expression (@"($object_type) (((Object[])user_data)[0])"));
b.open_switch (expression ("property_name"), null);
b.add_return (expression ("false"));
}
Method m;
- var type = context.analyzer.get_data_type_for_symbol (st);
+ var type = SemanticAnalyzer.get_data_type_for_symbol (st);
if (!wrapper_method (data_type ("GLib.Variant"), "gvariant_serialize_struct "+type.to_string(), out m)) {
m.add_parameter (new Parameter ("st", type, b.source_reference));
push_builder (new CodeBuilder.for_subroutine (m));
}
Method m;
- var type = context.analyzer.get_data_type_for_symbol (st);
+ var type = SemanticAnalyzer.get_data_type_for_symbol (st);
type.value_owned = true;
if (!wrapper_method (type, "gvariant_deserialize_struct "+type.to_string(), out m)) {
m.add_parameter (new Parameter ("variant", data_type ("GLib.Variant", false), b.source_reference));
if (en.scope.lookup ("from_string") != null) {
return;
}
- var m = new Method ("from_string", context.analyzer.get_data_type_for_symbol (en), en.source_reference);
+ var m = new Method ("from_string", SemanticAnalyzer.get_data_type_for_symbol (en), en.source_reference);
m.add_error_type (data_type ("GLib.DBusError.INVALID_ARGS"));
m.add_parameter (new Parameter ("str", data_type ("string", false), en.source_reference));
en.add_method (m);
// only qualified types, will slightly simplify the work of SymbolResolver
public DataType data_type (string s, bool value_owned = true, bool nullable = false) {
- DataType type = context.analyzer.get_data_type_for_symbol ((TypeSymbol) symbol_from_string (s));
+ DataType type = SemanticAnalyzer.get_data_type_for_symbol ((TypeSymbol) symbol_from_string (s));
type.value_owned = value_owned;
type.nullable = nullable;
return type;