SeedObject seed_module_init(SeedEngine *local_eng) { SeedObject library_constructor; seed_class_definition ffi_library_def = seed_empty_class; seed_class_definition ffi_function_def = seed_empty_class; ffi_library_def.class_name = "FFILibrary"; ffi_library_def.finalize = seed_ffi_library_finalize; ffi_library_def.get_property = seed_ffi_library_get_property; ffi_function_def.class_name = "FFIFunction"; ffi_function_def.finalize = seed_ffi_function_finalize; ffi_function_def.static_values = ffi_function_values; ffi_function_def.call_as_function = seed_ffi_function_call; ffi_library_class = seed_create_class (&ffi_library_def); ffi_function_class = seed_create_class (&ffi_function_def); eng = local_eng; namespace_ref = seed_make_object (eng->context, NULL, NULL); library_constructor = seed_make_constructor (eng->context, ffi_library_class, seed_ffi_construct_library); seed_object_set_property (eng->context, namespace_ref, "Library", library_constructor); return namespace_ref; }
static void seed_libxml_define_stuff () { SeedObject node_proto; seed_class_definition xml_doc_class_def = seed_empty_class; seed_class_definition xml_node_class_def = seed_empty_class; seed_class_definition xml_attr_class_def = seed_empty_class; seed_class_definition xml_xpath_class_def = seed_empty_class; seed_class_definition xml_xpathobj_class_def = seed_empty_class; xml_doc_class_def.class_name="XMLDocument"; xml_doc_class_def.static_functions = doc_funcs; xml_doc_class_def.static_values = doc_values; xml_doc_class_def.finalize = seed_xml_doc_finalize; xml_doc_class = seed_create_class (&xml_doc_class_def); xml_node_class_def.class_name="XMLNode"; xml_node_class_def.static_functions = node_funcs; xml_node_class_def.static_values = node_values; xml_node_class_def.finalize = seed_xml_node_finalize; xml_node_class_def.initialize = seed_xml_node_init; xml_node_class = seed_create_class (&xml_node_class_def); xml_attr_class_def.class_name="XMLAttribute"; xml_attr_class_def.static_functions = attr_funcs; xml_attr_class_def.static_values = attr_values; xml_attr_class_def.finalize = seed_xml_node_finalize; xml_attr_class_def.initialize = seed_xml_node_init; xml_attr_class = seed_create_class (&xml_attr_class_def); xml_xpath_class_def.class_name = "XMLXPathContext"; xml_xpath_class_def.finalize = seed_xml_xpath_finalize; xml_xpath_class_def.static_functions = xpath_funcs; xml_xpath_class = seed_create_class (&xml_xpath_class_def); xml_xpathobj_class_def.class_name = "XMLXPathObj"; xml_xpathobj_class_def.finalize = seed_xml_xpathobj_finalize; xml_xpathobj_class_def.static_values = xpathobj_values; xml_xpathobj_class = seed_create_class (&xml_xpathobj_class_def); seed_create_function (eng->context, "parseFile", (SeedFunctionCallback) seed_xml_parse_file, namespace_ref); seed_create_function (eng->context, "parseString", (SeedFunctionCallback) seed_xml_parse_string, namespace_ref); node_proto = seed_object_get_prototype (eng->context, seed_make_object (eng->context, xml_node_class, NULL)); seed_make_object (eng->context, xml_node_class, NULL); seed_object_set_property (eng->context, namespace_ref, "_nodeProto", node_proto); seed_simple_evaluate (eng->context, "imports.extensions.xml", NULL); }
SeedObject seed_module_init(SeedEngine * local_eng) { SeedObject db_constructor; seed_class_definition sqlite_class_def = seed_empty_class; eng = local_eng; namespace_ref = seed_make_object(eng->context, 0, 0); define_errors(eng); sqlite_class_def.class_name = "Database"; sqlite_class_def.finalize = sqlite_database_finalize; sqlite_class_def.static_functions = database_funcs; sqlite_class = seed_create_class(&sqlite_class_def); db_constructor = seed_make_constructor(eng->context, sqlite_class, sqlite_construct_database); seed_object_set_property(eng->context, namespace_ref, "Database", db_constructor); return namespace_ref; }
SeedObject seed_module_init(SeedEngine *local_eng) { SeedGlobalContext ctx = local_eng->context; seed_class_definition gettext_ns_class_def = seed_empty_class; gettext_ns_class_def.static_functions = gettext_funcs; SeedClass gettext_ns_class = seed_create_class(&gettext_ns_class_def); ns_ref = seed_make_object (ctx, gettext_ns_class, NULL); seed_value_protect (ctx, ns_ref); /* define enums for setlocale. Where to put them? */ DEFINE_ENUM_MEMBER(ns_ref, LC_CTYPE); DEFINE_ENUM_MEMBER(ns_ref, LC_NUMERIC); DEFINE_ENUM_MEMBER(ns_ref, LC_TIME); DEFINE_ENUM_MEMBER(ns_ref, LC_COLLATE); DEFINE_ENUM_MEMBER(ns_ref, LC_MONETARY); DEFINE_ENUM_MEMBER(ns_ref, LC_MESSAGES); DEFINE_ENUM_MEMBER(ns_ref, LC_ALL); DEFINE_ENUM_MEMBER(ns_ref, LC_PAPER); DEFINE_ENUM_MEMBER(ns_ref, LC_NAME); DEFINE_ENUM_MEMBER(ns_ref, LC_ADDRESS); DEFINE_ENUM_MEMBER(ns_ref, LC_TELEPHONE); DEFINE_ENUM_MEMBER(ns_ref, LC_MEASUREMENT); DEFINE_ENUM_MEMBER(ns_ref, LC_IDENTIFICATION); DEFINE_ENUM_MEMBER(ns_ref, LC_CTYPE); return ns_ref; }
void seed_define_cairo_matrix (SeedContext ctx, SeedObject namespace_ref) { seed_class_definition matrix_def = seed_empty_class; matrix_def.class_name = "Matrix"; matrix_def.static_functions = matrix_funcs; seed_matrix_class = seed_create_class (&matrix_def); seed_object_set_property (ctx, namespace_ref, "Matrix", seed_make_object (ctx, seed_matrix_class, NULL)); }
SeedObject seed_module_init(SeedEngine * local_eng) { seed_class_definition readline_ns_class_def = seed_empty_class; readline_ns_class_def.static_functions = readline_funcs; SeedClass readline_ns_class = seed_create_class(&readline_ns_class_def); eng = local_eng; namespace_ref = seed_make_object(eng->context, readline_ns_class, 0); return namespace_ref; }
void seed_define_cairo_surface (SeedContext ctx, SeedObject namespace_ref) { seed_class_definition surface_def = seed_empty_class; surface_def.class_name = "Surface"; surface_def.finalize = seed_cairo_surface_finalize; surface_def.static_functions = surface_funcs; surface_def.static_values = surface_values; seed_cairo_surface_class = seed_create_class (&surface_def); seed_define_cairo_image_surface (ctx, namespace_ref); seed_define_cairo_pdf_surface (ctx, namespace_ref); }
void seed_define_cairo_pdf_surface (SeedContext ctx, SeedObject namespace_ref) { seed_class_definition pdf_def = seed_empty_class; pdf_def.class_name = "PDFSurface"; pdf_def.static_values = pdf_surface_values; pdf_def.parent_class = seed_get_cairo_surface_class (); pdf_def.static_functions = pdf_surface_funcs; seed_cairo_pdf_surface_class = seed_create_class (&pdf_def); pdf_surface_constructor_ref = seed_make_constructor (ctx, NULL, //seed_cairo_pdf_surface_class, seed_cairo_construct_pdf_surface); seed_object_set_property (ctx, namespace_ref, "PDFSurface", pdf_surface_constructor_ref); }
SeedObject gjs_compat_define_gi_stuff(SeedEngine* eng) { SeedContext context = eng->context; SeedObject module; gboolean ret; module = seed_make_object(context, seed_create_class(&system_def), NULL); SeedValue seed = seed_object_get_property(context, eng->global, "Seed"); SeedValue argv = seed_object_get_property(context, seed, "argv"); ret = seed_object_set_property( context, module, "version", (SeedValue) seed_value_from_int(context, GJS_COMPAT_VERSION, NULL)); return module; }
void seed_define_cairo_pattern (SeedContext ctx, SeedObject namespace_ref) { SeedObject linear_constructor, radial_constructor; seed_class_definition pattern_def = seed_empty_class; pattern_def.class_name = "Pattern"; pattern_def.finalize = seed_cairo_pattern_finalize; pattern_def.static_functions = pattern_funcs; seed_cairo_pattern_class = seed_create_class (&pattern_def); linear_constructor = seed_make_constructor (ctx, NULL, seed_cairo_construct_linear_gradient); seed_object_set_property(ctx, namespace_ref, "LinearGradient", linear_constructor); radial_constructor = seed_make_constructor (ctx, NULL, seed_cairo_construct_radial_gradient); seed_object_set_property(ctx, namespace_ref, "RadialGradient", radial_constructor); }
static SeedObject exports_new (SeedContext ctx, DBusBusType which_bus) { SeedObject exports; SeedObject global; global = seed_context_get_global_object (ctx); if (!seed_js_exports_class) { seed_class_definition def = seed_empty_class; def.initialize = exports_constructor; def.finalize = exports_finalize; seed_js_exports_class = seed_create_class (&def); } exports = seed_make_object (ctx, seed_js_exports_class, NULL); return exports; }
SeedObject seed_module_init(SeedEngine * local_eng) { SeedObject pipe_constructor; seed_class_definition pipe_class_def = seed_empty_class; eng = local_eng; namespace_ref = seed_make_object(eng->context, 0, 0); pipe_class_def.class_name = "Pipe"; pipe_class_def.static_functions = pipe_funcs; pipe_class_def.finalize = pipe_finalize; pipe_class = seed_create_class(&pipe_class_def); pipe_constructor = seed_make_constructor(eng->context, 0, seed_construct_pipe); seed_object_set_property(eng->context, namespace_ref, "Pipe", pipe_constructor); return namespace_ref; }