democracy 0.0.56
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of democracy might be problematic. Click here for more details.
- checksums.yaml +7 -0
- data/LIBERTY +310 -0
- data/README +310 -0
- data/README2 +14 -0
- data/READ_THIS_TO_CHANGE_THINGS +310 -0
- data/Resume.pdf +0 -0
- data/Ruby Installer.exe +0 -0
- data/VERSION_NUMBER +1 -0
- data/WE_NEEDNT_BE_ENSLAVED +310 -0
- data/_.html +460 -0
- data/__index.html +11 -0
- data/a.html +21 -0
- data/ac +73 -0
- data/all_code.cpp +280 -0
- data/all_code.js +30 -0
- data/app_topics +93 -0
- data/background.jpg +0 -0
- data/better_string +26 -0
- data/bin/abs +0 -0
- data/bin/ac +34 -0
- data/bin/add +0 -0
- data/bin/append +14 -0
- data/bin/args +0 -0
- data/bin/autorequire +85 -0
- data/bin/big_num +155 -0
- data/bin/black +0 -0
- data/bin/blue +0 -0
- data/bin/bold +0 -0
- data/bin/c_repl +76 -0
- data/bin/close +3 -0
- data/bin/copy +0 -0
- data/bin/count +0 -0
- data/bin/cpy +0 -0
- data/bin/cyan +0 -0
- data/bin/democracyinstall.exe +0 -0
- data/bin/div +0 -0
- data/bin/down_all_links +50 -0
- data/bin/dump +0 -0
- data/bin/email +127 -0
- data/bin/emerald-browser +0 -0
- data/bin/emoji +176 -0
- data/bin/executable +1 -0
- data/bin/exp +0 -0
- data/bin/files +0 -0
- data/bin/floor +0 -0
- data/bin/foreach +49 -0
- data/bin/g+ +557 -0
- data/bin/get_all_links +11 -0
- data/bin/github +55 -0
- data/bin/green +0 -0
- data/bin/gsearch +159 -0
- data/bin/gsub +0 -0
- data/bin/gsub_in_place +0 -0
- data/bin/last_nth +0 -0
- data/bin/lines +0 -0
- data/bin/magenta +0 -0
- data/bin/mkfile +47 -0
- data/bin/mul +0 -0
- data/bin/nth +0 -0
- data/bin/open +0 -0
- data/bin/play +0 -0
- data/bin/prepend +14 -0
- data/bin/processes +3 -0
- data/bin/qt_download +21 -0
- data/bin/record +121 -0
- data/bin/red +0 -0
- data/bin/replace_in_place +0 -0
- data/bin/replace_not_in_place +0 -0
- data/bin/selectlines +0 -0
- data/bin/sort_in_place +0 -0
- data/bin/splitfiles +16 -0
- data/bin/squeeze +17 -0
- data/bin/string +161 -0
- data/bin/strip_extensions +13 -0
- data/bin/sub +0 -0
- data/bin/t +63 -0
- data/bin/tracefile +555 -0
- data/bin/underline +0 -0
- data/bin/undump +0 -0
- data/bin/viu +0 -0
- data/bin/white +0 -0
- data/bin/yellow +0 -0
- data/bin/youtube_video +45 -0
- data/bin/youtube_video2 +45 -0
- data/code.js +28490 -0
- data/crystal-gobject/.git/HEAD +1 -0
- data/crystal-gobject/.git/config +11 -0
- data/crystal-gobject/.git/description +1 -0
- data/crystal-gobject/.git/hooks/applypatch-msg.sample +15 -0
- data/crystal-gobject/.git/hooks/commit-msg.sample +24 -0
- data/crystal-gobject/.git/hooks/fsmonitor-watchman.sample +109 -0
- data/crystal-gobject/.git/hooks/post-update.sample +8 -0
- data/crystal-gobject/.git/hooks/pre-applypatch.sample +14 -0
- data/crystal-gobject/.git/hooks/pre-commit.sample +49 -0
- data/crystal-gobject/.git/hooks/pre-merge-commit.sample +13 -0
- data/crystal-gobject/.git/hooks/pre-push.sample +53 -0
- data/crystal-gobject/.git/hooks/pre-rebase.sample +169 -0
- data/crystal-gobject/.git/hooks/pre-receive.sample +24 -0
- data/crystal-gobject/.git/hooks/prepare-commit-msg.sample +42 -0
- data/crystal-gobject/.git/hooks/update.sample +128 -0
- data/crystal-gobject/.git/index +0 -0
- data/crystal-gobject/.git/info/exclude +6 -0
- data/crystal-gobject/.git/logs/HEAD +1 -0
- data/crystal-gobject/.git/logs/refs/heads/main +1 -0
- data/crystal-gobject/.git/logs/refs/remotes/origin/HEAD +1 -0
- data/crystal-gobject/.git/objects/pack/pack-c21cfd88c6eef3076f2c2aebb658b750e87e10b6.idx +0 -0
- data/crystal-gobject/.git/objects/pack/pack-c21cfd88c6eef3076f2c2aebb658b750e87e10b6.pack +0 -0
- data/crystal-gobject/.git/packed-refs +15 -0
- data/crystal-gobject/.git/refs/heads/main +1 -0
- data/crystal-gobject/.git/refs/remotes/origin/HEAD +1 -0
- data/crystal-gobject/.github/workflows/ci.yml +22 -0
- data/crystal-gobject/.gitignore +14 -0
- data/crystal-gobject/LICENSE +27 -0
- data/crystal-gobject/README.md +143 -0
- data/crystal-gobject/samples/base_class_container.cr +15 -0
- data/crystal-gobject/samples/connect_after.cr +35 -0
- data/crystal-gobject/samples/crout/crout.cr +59 -0
- data/crystal-gobject/samples/e +0 -0
- data/crystal-gobject/samples/gdk_window.cr +36 -0
- data/crystal-gobject/samples/glist.cr +16 -0
- data/crystal-gobject/samples/greeter.cr +34 -0
- data/crystal-gobject/samples/greeter.glade +91 -0
- data/crystal-gobject/samples/gtk_accel_group.cr +13 -0
- data/crystal-gobject/samples/gtk_application.cr +12 -0
- data/crystal-gobject/samples/gtk_boxes.cr +44 -0
- data/crystal-gobject/samples/gtk_css_styling/css_window.cr +37 -0
- data/crystal-gobject/samples/gtk_css_styling/css_window.css +3 -0
- data/crystal-gobject/samples/gtk_css_styling/css_window.glade +104 -0
- data/crystal-gobject/samples/gtk_editable.cr +14 -0
- data/crystal-gobject/samples/gtk_entry.cr +10 -0
- data/crystal-gobject/samples/gtk_hello_world.cr +13 -0
- data/crystal-gobject/samples/gtk_menu_and_actions.cr +69 -0
- data/crystal-gobject/samples/gtk_message_dialog.cr +9 -0
- data/crystal-gobject/samples/gtk_subclasses.cr +30 -0
- data/crystal-gobject/samples/gtk_tree_view.cr +30 -0
- data/crystal-gobject/samples/gtk_tree_view.glade +44 -0
- data/crystal-gobject/samples/hello +0 -0
- data/crystal-gobject/samples/libgdk-3.a +0 -0
- data/crystal-gobject/samples/libgdk_pixbuf-2.0.a +0 -0
- data/crystal-gobject/samples/libgtk-3.a +0 -0
- data/crystal-gobject/samples/timeout.cr +34 -0
- data/crystal-gobject/script/ci.sh +17 -0
- data/crystal-gobject/script/release.sh +31 -0
- data/crystal-gobject/script/run_with_timeout.cr +14 -0
- data/crystal-gobject/script/test +7 -0
- data/crystal-gobject/shard.yml +16 -0
- data/crystal-gobject/spec/basic_spec.cr +46 -0
- data/crystal-gobject/spec/libsample/Makefile +28 -0
- data/crystal-gobject/spec/libsample/test-subject.c +107 -0
- data/crystal-gobject/spec/libsample/test-subject.h +65 -0
- data/crystal-gobject/spec/spec_helper.cr +5 -0
- data/crystal-gobject/src/atk/atk.cr +2 -0
- data/crystal-gobject/src/closure_data_manager.cr +62 -0
- data/crystal-gobject/src/crout.cr +601 -0
- data/crystal-gobject/src/g_i_repository/dumper.cr +116 -0
- data/crystal-gobject/src/g_i_repository/g_i_repository.cr +46 -0
- data/crystal-gobject/src/g_i_repository/info/arg_info.cr +157 -0
- data/crystal-gobject/src/g_i_repository/info/base_info.cr +169 -0
- data/crystal-gobject/src/g_i_repository/info/callable_info.cr +266 -0
- data/crystal-gobject/src/g_i_repository/info/callback_info.cr +54 -0
- data/crystal-gobject/src/g_i_repository/info/constant_info.cr +115 -0
- data/crystal-gobject/src/g_i_repository/info/enum_info.cr +88 -0
- data/crystal-gobject/src/g_i_repository/info/field_info.cr +97 -0
- data/crystal-gobject/src/g_i_repository/info/function_info.cr +237 -0
- data/crystal-gobject/src/g_i_repository/info/interface_info.cr +97 -0
- data/crystal-gobject/src/g_i_repository/info/object_info.cr +170 -0
- data/crystal-gobject/src/g_i_repository/info/property_info.cr +93 -0
- data/crystal-gobject/src/g_i_repository/info/registered_type_info.cr +62 -0
- data/crystal-gobject/src/g_i_repository/info/signal_info.cr +119 -0
- data/crystal-gobject/src/g_i_repository/info/struct_info.cr +139 -0
- data/crystal-gobject/src/g_i_repository/info/type_info.cr +326 -0
- data/crystal-gobject/src/g_i_repository/info/union_info.cr +136 -0
- data/crystal-gobject/src/g_i_repository/info/v_func_info.cr +33 -0
- data/crystal-gobject/src/g_i_repository/info/value_info.cr +62 -0
- data/crystal-gobject/src/g_i_repository/repository.cr +68 -0
- data/crystal-gobject/src/g_i_repository/wrapper_generator.cr +103 -0
- data/crystal-gobject/src/g_lib/error.cr +34 -0
- data/crystal-gobject/src/g_lib/g_lib.cr +81 -0
- data/crystal-gobject/src/g_lib/list_iterator.cr +81 -0
- data/crystal-gobject/src/g_lib/s_list_iterator.cr +54 -0
- data/crystal-gobject/src/g_object/closure.cr +40 -0
- data/crystal-gobject/src/g_object/g_object.cr +7 -0
- data/crystal-gobject/src/g_object/module_functions.cr +38 -0
- data/crystal-gobject/src/g_object/object.cr +104 -0
- data/crystal-gobject/src/g_object/type.cr +68 -0
- data/crystal-gobject/src/g_object/value.cr +308 -0
- data/crystal-gobject/src/gdk/event.cr +34 -0
- data/crystal-gobject/src/gdk/gdk.cr +35 -0
- data/crystal-gobject/src/generated/g_i_repository/argument.cr +130 -0
- data/crystal-gobject/src/generated/g_i_repository/array_type.cr +34 -0
- data/crystal-gobject/src/generated/g_i_repository/attribute_iter.cr +65 -0
- data/crystal-gobject/src/generated/g_i_repository/base_info.cr +134 -0
- data/crystal-gobject/src/generated/g_i_repository/direction.cr +33 -0
- data/crystal-gobject/src/generated/g_i_repository/field_info_flags.cr +34 -0
- data/crystal-gobject/src/generated/g_i_repository/function_info_flags.cr +38 -0
- data/crystal-gobject/src/generated/g_i_repository/g_i_repository.cr +7 -0
- data/crystal-gobject/src/generated/g_i_repository/info_type.cr +50 -0
- data/crystal-gobject/src/generated/g_i_repository/module_functions.cr +816 -0
- data/crystal-gobject/src/generated/g_i_repository/repository.cr +214 -0
- data/crystal-gobject/src/generated/g_i_repository/repository_class.cr +55 -0
- data/crystal-gobject/src/generated/g_i_repository/repository_error.cr +34 -0
- data/crystal-gobject/src/generated/g_i_repository/repository_load_flags.cr +33 -0
- data/crystal-gobject/src/generated/g_i_repository/repository_private.cr +46 -0
- data/crystal-gobject/src/generated/g_i_repository/scope_type.cr +34 -0
- data/crystal-gobject/src/generated/g_i_repository/transfer.cr +33 -0
- data/crystal-gobject/src/generated/g_i_repository/type_tag.cr +52 -0
- data/crystal-gobject/src/generated/g_i_repository/typelib.cr +61 -0
- data/crystal-gobject/src/generated/g_i_repository/unresolved_info.cr +45 -0
- data/crystal-gobject/src/generated/g_i_repository/v_func_info_flags.cr +36 -0
- data/crystal-gobject/src/generated/g_object/param_flags.cr +44 -0
- data/crystal-gobject/src/generated/g_object/signal_flags.cr +42 -0
- data/crystal-gobject/src/generated/lib_g_i_repository.cr +302 -0
- data/crystal-gobject/src/generated/lib_g_lib.cr +2261 -0
- data/crystal-gobject/src/generated/lib_g_object.cr +874 -0
- data/crystal-gobject/src/generator/build_namespace.cr +22 -0
- data/crystal-gobject/src/generator/doc.cr +259 -0
- data/crystal-gobject/src/generator/dump.cr +55 -0
- data/crystal-gobject/src/generator/generator.cr +22 -0
- data/crystal-gobject/src/generator/namespace.cr +192 -0
- data/crystal-gobject/src/generator/stage2.cr +113 -0
- data/crystal-gobject/src/generator/stage3.cr +3 -0
- data/crystal-gobject/src/gio/gio.cr +4 -0
- data/crystal-gobject/src/gobject.cr +54 -0
- data/crystal-gobject/src/gtk/autorun.cr +16 -0
- data/crystal-gobject/src/gtk/gtk.cr +61 -0
- data/crystal-gobject/src/notify/notification.cr +158 -0
- data/crystal-gobject/src/notify/notify.cr +4 -0
- data/crystal-gobject/src/pointer_iterator.cr +49 -0
- data/crystal-gobject/src/wrapped_type.cr +53 -0
- data/democracy.gemspec +14 -0
- data/dictate +183 -0
- data/emerald-browser/.qmake.stash +23 -0
- data/emerald-browser/Makefile +469 -0
- data/emerald-browser/OUT +90 -0
- data/emerald-browser/a.out +0 -0
- data/emerald-browser/empty +0 -0
- data/emerald-browser/empty.c +1 -0
- data/emerald-browser/open +0 -0
- data/emerald-browser/open.c +57 -0
- data/emerald-browser/qmake.pro +23 -0
- data/emerald-browser/src/OUT +438 -0
- data/emerald-browser/src/a.cpp +303 -0
- data/emerald-browser/src/a.out +0 -0
- data/emerald-browser/src/ss.h +12 -0
- data/emerald-browser/src/t/fullscreennotification.cpp +98 -0
- data/emerald-browser/src/t/fullscreennotification.h +72 -0
- data/emerald-browser/src/t/fullscreenwindow.cpp +99 -0
- data/emerald-browser/src/t/fullscreenwindow.h +76 -0
- data/emerald-browser/src/t/main.cpp +64 -0
- data/emerald-browser/src/t/mainwindow.cpp +83 -0
- data/emerald-browser/src/t/mainwindow.h +75 -0
- data/emerald-browser/test/a.cpp +2 -0
- data/f +0 -0
- data/faster_googler +31 -0
- data/favicon.ico +0 -0
- data/foo +80 -0
- data/foo.c +39 -0
- data/foo.cpp +36 -0
- data/foo.js +25 -0
- data/free_icons/site/bulb +0 -0
- data/free_icons/site/chess +0 -0
- data/free_icons/site/compiz.svg +463 -0
- data/free_icons/site/cursor.svg +1 -0
- data/free_icons/site/dock +0 -0
- data/free_icons/site/gnu +0 -0
- data/free_icons/site/info.svg +200 -0
- data/free_icons/site/iphone.svg +222 -0
- data/free_icons/site/laptop +0 -0
- data/free_icons/site/magic.svg +856 -0
- data/free_icons/site/man +0 -0
- data/free_icons/site/mint +0 -0
- data/free_icons/site/mouse +0 -0
- data/free_icons/site/paint.svg +2640 -0
- data/free_icons/site/present +0 -0
- data/free_icons/site/python +0 -0
- data/free_icons/site/reality +0 -0
- data/free_icons/site/ruby +0 -0
- data/free_icons/site/skeptic +0 -0
- data/free_icons/site/terminal +0 -0
- data/free_icons/site/video.svg +358 -0
- data/free_icons/site/warning +0 -0
- data/free_icons/site/wikipedia.svg +553 -0
- data/free_icons/site/write.svg +287 -0
- data/g +0 -0
- data/graphical_help.c +6 -0
- data/gregory_coreutils/DOC +14 -0
- data/gregory_coreutils/build/Makefile +12 -0
- data/gregory_coreutils/build/code +1 -0
- data/gregory_coreutils/build/functions +465 -0
- data/gregory_coreutils/build/make +93 -0
- data/gregory_coreutils/build/mk +74 -0
- data/gregory_coreutils/build/regex +2 -0
- data/gregory_coreutils/build/ruby_functions +0 -0
- data/gregory_coreutils/utilities/abs +0 -0
- data/gregory_coreutils/utilities/add +0 -0
- data/gregory_coreutils/utilities/args +0 -0
- data/gregory_coreutils/utilities/black +0 -0
- data/gregory_coreutils/utilities/blue +0 -0
- data/gregory_coreutils/utilities/bold +0 -0
- data/gregory_coreutils/utilities/copy +0 -0
- data/gregory_coreutils/utilities/count +0 -0
- data/gregory_coreutils/utilities/cpy +0 -0
- data/gregory_coreutils/utilities/cyan +0 -0
- data/gregory_coreutils/utilities/div +0 -0
- data/gregory_coreutils/utilities/dump +0 -0
- data/gregory_coreutils/utilities/exp +0 -0
- data/gregory_coreutils/utilities/files +0 -0
- data/gregory_coreutils/utilities/floor +0 -0
- data/gregory_coreutils/utilities/green +0 -0
- data/gregory_coreutils/utilities/gsub +0 -0
- data/gregory_coreutils/utilities/gsub_in_place +0 -0
- data/gregory_coreutils/utilities/last_nth +0 -0
- data/gregory_coreutils/utilities/lines +0 -0
- data/gregory_coreutils/utilities/magenta +0 -0
- data/gregory_coreutils/utilities/mul +0 -0
- data/gregory_coreutils/utilities/nth +0 -0
- data/gregory_coreutils/utilities/red +0 -0
- data/gregory_coreutils/utilities/replace_in_place +0 -0
- data/gregory_coreutils/utilities/replace_not_in_place +0 -0
- data/gregory_coreutils/utilities/selectlines +0 -0
- data/gregory_coreutils/utilities/sort_in_place +0 -0
- data/gregory_coreutils/utilities/sub +0 -0
- data/gregory_coreutils/utilities/underline +0 -0
- data/gregory_coreutils/utilities/undump +0 -0
- data/gregory_coreutils/utilities/white +0 -0
- data/gregory_coreutils/utilities/yellow +0 -0
- data/gtk +3 -0
- data/html_file +0 -0
- data/html_file.html +92 -0
- data/i +181 -0
- data/index.html +38 -0
- data/index2.html +344 -0
- data/inspect.rb +209 -0
- data/lib/README +310 -0
- data/lib/__index.html +11 -0
- data/lib/because.rb +41 -0
- data/lib/code.js +28490 -0
- data/lib/compile +5 -0
- data/lib/conjunction.rb +49 -0
- data/lib/evidence.rb +45 -0
- data/lib/graphical_help +90 -0
- data/lib/however.rb +42 -0
- data/lib/index.html +49 -0
- data/lib/index2.html +344 -0
- data/lib/inputreceiver.rb +135 -0
- data/lib/item.rb +77 -0
- data/lib/itemlist.rb +50 -0
- data/lib/negative.rb +43 -0
- data/lib/neutral.rb +43 -0
- data/lib/outputter.rb +60 -0
- data/lib/p.rb +71 -0
- data/lib/positive.rb +41 -0
- data/lib/script.js +423 -0
- data/lib/string__.rb +110 -0
- data/lib/sub/file +5 -0
- data/man/foo.rb +6 -0
- data/man/gtk.html +1 -0
- data/man/out +7288 -0
- data/more/ac.desktop +12 -0
- data/more/res +1 -0
- data/more/web-speech-api/.git/HEAD +1 -0
- data/more/web-speech-api/.git/config +11 -0
- data/more/web-speech-api/.git/description +1 -0
- data/more/web-speech-api/.git/hooks/applypatch-msg.sample +15 -0
- data/more/web-speech-api/.git/hooks/commit-msg.sample +24 -0
- data/more/web-speech-api/.git/hooks/fsmonitor-watchman.sample +109 -0
- data/more/web-speech-api/.git/hooks/post-update.sample +8 -0
- data/more/web-speech-api/.git/hooks/pre-applypatch.sample +14 -0
- data/more/web-speech-api/.git/hooks/pre-commit.sample +49 -0
- data/more/web-speech-api/.git/hooks/pre-merge-commit.sample +13 -0
- data/more/web-speech-api/.git/hooks/pre-push.sample +53 -0
- data/more/web-speech-api/.git/hooks/pre-rebase.sample +169 -0
- data/more/web-speech-api/.git/hooks/pre-receive.sample +24 -0
- data/more/web-speech-api/.git/hooks/prepare-commit-msg.sample +42 -0
- data/more/web-speech-api/.git/hooks/update.sample +128 -0
- data/more/web-speech-api/.git/index +0 -0
- data/more/web-speech-api/.git/info/exclude +6 -0
- data/more/web-speech-api/.git/logs/HEAD +1 -0
- data/more/web-speech-api/.git/logs/refs/heads/master +1 -0
- data/more/web-speech-api/.git/logs/refs/remotes/origin/HEAD +1 -0
- data/more/web-speech-api/.git/objects/pack/pack-4d2adae000c513b287d53e24937e9e836954f901.idx +0 -0
- data/more/web-speech-api/.git/objects/pack/pack-4d2adae000c513b287d53e24937e9e836954f901.pack +0 -0
- data/more/web-speech-api/.git/packed-refs +2 -0
- data/more/web-speech-api/.git/refs/heads/master +1 -0
- data/more/web-speech-api/.git/refs/remotes/origin/HEAD +1 -0
- data/more/web-speech-api/CODE_OF_CONDUCT.md +15 -0
- data/more/web-speech-api/LICENSE +116 -0
- data/more/web-speech-api/README.md +23 -0
- data/more/web-speech-api/index.html +25 -0
- data/more/web-speech-api/phrase-matcher/index.html +30 -0
- data/more/web-speech-api/phrase-matcher/script.js +124 -0
- data/more/web-speech-api/phrase-matcher/style.css +54 -0
- data/more/web-speech-api/speak-easy-synthesis/img/ws128.png +0 -0
- data/more/web-speech-api/speak-easy-synthesis/img/ws512.png +0 -0
- data/more/web-speech-api/speak-easy-synthesis/index.html +43 -0
- data/more/web-speech-api/speak-easy-synthesis/manifest.webapp +14 -0
- data/more/web-speech-api/speak-easy-synthesis/script.js +87 -0
- data/more/web-speech-api/speak-easy-synthesis/style.css +74 -0
- data/more/web-speech-api/speech-color-changer/img/ws128.png +0 -0
- data/more/web-speech-api/speech-color-changer/img/ws512.png +0 -0
- data/more/web-speech-api/speech-color-changer/index.html +26 -0
- data/more/web-speech-api/speech-color-changer/manifest.webapp +23 -0
- data/more/web-speech-api/speech-color-changer/script.js +58 -0
- data/more/web-speech-api/speech-color-changer/style.css +38 -0
- data/opensrc +68 -0
- data/out +39 -0
- data/playsrc +14 -0
- data/program.c +11 -0
- data/program.prog +568 -0
- data/proj/a +0 -0
- data/proj/a.c +1 -0
- data/proj/a.o +0 -0
- data/proj/a.rs +18 -0
- data/proj/b.rs +22 -0
- data/proj/linker.sh +8 -0
- data/proj/save_last +4 -0
- data/push +16 -0
- data/q.cpp +175 -0
- data/qt/.qmake.stash +23 -0
- data/qt/Qt5Core.dll +0 -0
- data/qt/Qt5Gui.dll +0 -0
- data/qt/Qt5Multimedia.dll +0 -0
- data/qt/Qt5MultimediaWidgets.dll +0 -0
- data/qt/Qt5Network.dll +0 -0
- data/qt/Qt5PrintSupport.dll +0 -0
- data/qt/Qt5Qml.dll +0 -0
- data/qt/Qt5QmlModels.dll +0 -0
- data/qt/Qt5Quick.dll +0 -0
- data/qt/Qt5Sensors.dll +0 -0
- data/qt/Qt5WebChannel.dll +0 -0
- data/qt/Qt5WebKit.dll +0 -0
- data/qt/Qt5WebKitWidgets.dll +0 -0
- data/qt/Qt5Widgets.dll +0 -0
- data/qt/a.cpp +39 -0
- data/qt/a.out +0 -0
- data/qt/a.sh +7 -0
- data/qt/icudt66.dll +0 -0
- data/qt/icuin66.dll +0 -0
- data/qt/icuuc66.dll +0 -0
- data/qt/libbz2.dll +0 -0
- data/qt/libcrypto-1_1-x64.dll +0 -0
- data/qt/libfreetype-6.dll +0 -0
- data/qt/libgcc_s_seh-1.dll +0 -0
- data/qt/libglib-2.0-0.dll +0 -0
- data/qt/libharfbuzz-0.dll +0 -0
- data/qt/libiconv-2.dll +0 -0
- data/qt/libintl-8.dll +0 -0
- data/qt/libjpeg-9.dll +0 -0
- data/qt/liblzma-5.dll +0 -0
- data/qt/libpcre-1.dll +0 -0
- data/qt/libpcre2-16-0.dll +0 -0
- data/qt/libpng16-16.dll +0 -0
- data/qt/libsqlite3-0.dll +0 -0
- data/qt/libssl-1_1-x64.dll +0 -0
- data/qt/libstdc++-6.dll +0 -0
- data/qt/libwebp-7.dll +0 -0
- data/qt/libwinpthread-1.dll +0 -0
- data/qt/libxml2-2.dll +0 -0
- data/qt/libxslt-1.dll +0 -0
- data/qt/libzstd.dll +0 -0
- data/qt/prog +1 -0
- data/qt/qwindows.dll +0 -0
- data/qt/zlib1.dll +0 -0
- data/quickjs/.git/HEAD +1 -0
- data/quickjs/.git/config +11 -0
- data/quickjs/.git/description +1 -0
- data/quickjs/.git/hooks/applypatch-msg.sample +15 -0
- data/quickjs/.git/hooks/commit-msg.sample +24 -0
- data/quickjs/.git/hooks/fsmonitor-watchman.sample +109 -0
- data/quickjs/.git/hooks/post-update.sample +8 -0
- data/quickjs/.git/hooks/pre-applypatch.sample +14 -0
- data/quickjs/.git/hooks/pre-commit.sample +49 -0
- data/quickjs/.git/hooks/pre-merge-commit.sample +13 -0
- data/quickjs/.git/hooks/pre-push.sample +53 -0
- data/quickjs/.git/hooks/pre-rebase.sample +169 -0
- data/quickjs/.git/hooks/pre-receive.sample +24 -0
- data/quickjs/.git/hooks/prepare-commit-msg.sample +42 -0
- data/quickjs/.git/hooks/update.sample +128 -0
- data/quickjs/.git/index +0 -0
- data/quickjs/.git/info/exclude +6 -0
- data/quickjs/.git/logs/HEAD +1 -0
- data/quickjs/.git/logs/refs/heads/master +1 -0
- data/quickjs/.git/logs/refs/remotes/origin/HEAD +1 -0
- data/quickjs/.git/objects/pack/pack-744a13dba8773a756b22372ba65ded3aca50cdeb.idx +0 -0
- data/quickjs/.git/objects/pack/pack-744a13dba8773a756b22372ba65ded3aca50cdeb.pack +0 -0
- data/quickjs/.git/packed-refs +2 -0
- data/quickjs/.git/refs/heads/master +1 -0
- data/quickjs/.git/refs/remotes/origin/HEAD +1 -0
- data/quickjs/.obj/.d +1 -0
- data/quickjs/.obj/cutils.nolto.o +0 -0
- data/quickjs/.obj/cutils.o +0 -0
- data/quickjs/.obj/cutils.o.d +1 -0
- data/quickjs/.obj/hello.o +0 -0
- data/quickjs/.obj/hello.o.d +1 -0
- data/quickjs/.obj/libbf.nolto.o +0 -0
- data/quickjs/.obj/libbf.o +0 -0
- data/quickjs/.obj/libbf.o.d +1 -0
- data/quickjs/.obj/libregexp.nolto.o +0 -0
- data/quickjs/.obj/libregexp.o +0 -0
- data/quickjs/.obj/libregexp.o.d +2 -0
- data/quickjs/.obj/libunicode.nolto.o +0 -0
- data/quickjs/.obj/libunicode.o +0 -0
- data/quickjs/.obj/libunicode.o.d +1 -0
- data/quickjs/.obj/qjs.check.o +0 -0
- data/quickjs/.obj/qjs.check.o.d +1 -0
- data/quickjs/.obj/qjs.o +0 -0
- data/quickjs/.obj/qjs.o.d +1 -0
- data/quickjs/.obj/qjsc.o +0 -0
- data/quickjs/.obj/qjsc.o.d +1 -0
- data/quickjs/.obj/qjscalc.o +0 -0
- data/quickjs/.obj/qjscalc.o.d +1 -0
- data/quickjs/.obj/quickjs-libc.nolto.o +0 -0
- data/quickjs/.obj/quickjs-libc.o +0 -0
- data/quickjs/.obj/quickjs-libc.o.d +2 -0
- data/quickjs/.obj/quickjs.check.o +0 -0
- data/quickjs/.obj/quickjs.check.o.d +2 -0
- data/quickjs/.obj/quickjs.nolto.o +0 -0
- data/quickjs/.obj/quickjs.o +0 -0
- data/quickjs/.obj/quickjs.o.d +2 -0
- data/quickjs/.obj/repl.o +0 -0
- data/quickjs/.obj/repl.o.d +1 -0
- data/quickjs/.obj/run-test262.o +0 -0
- data/quickjs/.obj/run-test262.o.d +2 -0
- data/quickjs/COMPILE_WIN +1 -0
- data/quickjs/Changelog +148 -0
- data/quickjs/LICENSE +22 -0
- data/quickjs/Makefile +470 -0
- data/quickjs/TODO +70 -0
- data/quickjs/VERSION +1 -0
- data/quickjs/a.c +50038 -0
- data/quickjs/a.js +26075 -0
- data/quickjs/a.rb +3 -0
- data/quickjs/cutils.c +631 -0
- data/quickjs/cutils.h +297 -0
- data/quickjs/doc/jsbignum.texi +589 -0
- data/quickjs/doc/quickjs.texi +1097 -0
- data/quickjs/examples/fib.c +72 -0
- data/quickjs/examples/fib_module.js +10 -0
- data/quickjs/examples/hello +0 -0
- data/quickjs/examples/hello.js +1 -0
- data/quickjs/examples/hello_module.js +6 -0
- data/quickjs/examples/pi_bigdecimal.js +68 -0
- data/quickjs/examples/pi_bigfloat.js +66 -0
- data/quickjs/examples/pi_bigint.js +118 -0
- data/quickjs/examples/point.c +151 -0
- data/quickjs/examples/test_fib.js +6 -0
- data/quickjs/examples/test_point.js +40 -0
- data/quickjs/hello.c +44 -0
- data/quickjs/libbf.c +8466 -0
- data/quickjs/libbf.h +535 -0
- data/quickjs/libquickjs.a +0 -0
- data/quickjs/libquickjs.lto.a +0 -0
- data/quickjs/libregexp-opcode.h +58 -0
- data/quickjs/libregexp.c +2610 -0
- data/quickjs/libregexp.h +92 -0
- data/quickjs/libunicode-table.h +4368 -0
- data/quickjs/libunicode.c +1556 -0
- data/quickjs/libunicode.h +124 -0
- data/quickjs/libwinpthread-1.dll +0 -0
- data/quickjs/list.h +100 -0
- data/quickjs/out.c +24 -0
- data/quickjs/out55.c +59 -0
- data/quickjs/out56.c +79 -0
- data/quickjs/out57.c +24 -0
- data/quickjs/out58.c +4 -0
- data/quickjs/p.exe +0 -0
- data/quickjs/qjs +0 -0
- data/quickjs/qjs.c +570 -0
- data/quickjs/qjsc +0 -0
- data/quickjs/qjsc.c +762 -0
- data/quickjs/qjsc.exe +0 -0
- data/quickjs/qjscalc.c +4005 -0
- data/quickjs/qjscalc.js +2657 -0
- data/quickjs/quickjs-atom.h +273 -0
- data/quickjs/quickjs-libc.c +3927 -0
- data/quickjs/quickjs-libc.h +59 -0
- data/quickjs/quickjs-opcode.h +365 -0
- data/quickjs/quickjs.c +54036 -0
- data/quickjs/quickjs.h +1049 -0
- data/quickjs/readme.txt +1 -0
- data/quickjs/release.sh +158 -0
- data/quickjs/repl.c +2020 -0
- data/quickjs/repl.js +1566 -0
- data/quickjs/run-test262 +0 -0
- data/quickjs/run-test262.c +2107 -0
- data/quickjs/test262.conf +199 -0
- data/quickjs/test262_errors.txt +35 -0
- data/quickjs/test262o.conf +410 -0
- data/quickjs/test262o_errors.txt +0 -0
- data/quickjs/tests/bjson.c +96 -0
- data/quickjs/tests/microbench.js +1065 -0
- data/quickjs/tests/test262.patch +71 -0
- data/quickjs/tests/test_bignum.js +326 -0
- data/quickjs/tests/test_bjson.js +191 -0
- data/quickjs/tests/test_builtin.js +685 -0
- data/quickjs/tests/test_closure.js +221 -0
- data/quickjs/tests/test_language.js +547 -0
- data/quickjs/tests/test_loop.js +368 -0
- data/quickjs/tests/test_op_overloading.js +207 -0
- data/quickjs/tests/test_qjscalc.js +256 -0
- data/quickjs/tests/test_std.js +281 -0
- data/quickjs/tests/test_worker.js +62 -0
- data/quickjs/tests/test_worker_module.js +31 -0
- data/quickjs/unicode_download.sh +19 -0
- data/quickjs/unicode_gen.c +3057 -0
- data/quickjs/unicode_gen_def.h +284 -0
- data/readline +3 -0
- data/rm_com +1 -0
- data/run.sh +13 -0
- data/scaling +6 -0
- data/script.js +572 -0
- data/server_creator/__ +307 -0
- data/server_creator/a/a (1).tar.gz +0 -0
- data/server_creator/a/a.out +0 -0
- data/server_creator/a/hello_world +0 -0
- data/server_creator/a/help +57 -0
- data/server_creator/a/main_v1.cpp +83 -0
- data/server_creator/a/my_libs_gregory/.deps +0 -0
- data/server_creator/a/my_libs_gregory/.libs/mod_my_libs_gregory.lai +41 -0
- data/server_creator/a/my_libs_gregory/.libs/mod_my_libs_gregory.o +0 -0
- data/server_creator/a/my_libs_gregory/.libs/mod_my_libs_gregory.so +0 -0
- data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.c +72 -0
- data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.la +41 -0
- data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.lo +12 -0
- data/server_creator/a/my_libs_gregory/mod_my_libs_gregory.slo +0 -0
- data/server_creator/a/nginx.conf +32 -0
- data/server_creator/a/six +1 -0
- data/server_creator/a.out +0 -0
- data/server_creator/all_code.cpp +448 -0
- data/server_creator/all_code.js +27 -0
- data/server_creator/code +510 -0
- data/server_creator/make_application +64 -0
- data/server_creator/prog.cpp +33 -0
- data/server_creator/prog.js +22 -0
- data/server_creator/program.js +745 -0
- data/server_creator/rm_com +1 -0
- data/server_creator/test.sh +82 -0
- data/speakcat.rb +9 -0
- data/string +48 -0
- data/super_trans +83 -0
- data/test.sh +21 -0
- data/todo +8 -0
- data/version_decrement +3 -0
- data/viu_license +21 -0
- data/windows/program.c +21 -0
- data/windows/program.exe +0 -0
- metadata +759 -0
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
#
|
|
3
|
+
# Democracy software compilation VERSION 0.0., created on 2021-11-14 17:41:34 -0500
|
|
4
|
+
# Get all of this code, and all of these files, with
|
|
5
|
+
# gem install democracy
|
|
6
|
+
# Linux ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu]
|
|
7
|
+
#
|
|
8
|
+
# Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
|
|
9
|
+
#
|
|
10
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
# 54 of 16 source files
|
|
17
|
+
module GIRepository
|
|
18
|
+
require_relative "string__"
|
|
19
|
+
class TypeInfo < BaseInfo
|
|
20
|
+
TAG_MAP = {
|
|
21
|
+
TypeTag::VOID => "Void",
|
|
22
|
+
TypeTag::BOOLEAN => "LibC::Int",
|
|
23
|
+
TypeTag::INT8 => "Int8",
|
|
24
|
+
TypeTag::UINT8 => "UInt8",
|
|
25
|
+
TypeTag::INT16 => "Int16",
|
|
26
|
+
TypeTag::UINT16 => "UInt16",
|
|
27
|
+
TypeTag::INT32 => "Int32",
|
|
28
|
+
TypeTag::UINT32 => "UInt32",
|
|
29
|
+
TypeTag::INT64 => "Int64",
|
|
30
|
+
TypeTag::UINT64 => "UInt64",
|
|
31
|
+
TypeTag::FLOAT => "Float32",
|
|
32
|
+
TypeTag::DOUBLE => "Float64",
|
|
33
|
+
TypeTag::GTYPE => "UInt64",
|
|
34
|
+
TypeTag::UTF8 => "UInt8",
|
|
35
|
+
TypeTag::FILENAME => "UInt8",
|
|
36
|
+
TypeTag::GLIST => "Void*",
|
|
37
|
+
TypeTag::GSLIST => "Void*",
|
|
38
|
+
TypeTag::GHASH => "Void*",
|
|
39
|
+
TypeTag::ERROR => "LibGLib::Error*",
|
|
40
|
+
TypeTag::UNICHAR => "UInt8",
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
BLACKLIST = {"VaClosureMarshal", "DBusProxyClass", "DBusInterfaceSkeletonClass"}
|
|
44
|
+
|
|
45
|
+
def tag
|
|
46
|
+
GIRepository.type_info_get_tag(self)
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def pointer?
|
|
50
|
+
GIRepository.type_info_is_pointer(self)
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
def void?
|
|
54
|
+
tag.void?
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def interface
|
|
58
|
+
BaseInfo.wrap(GIRepository.type_info_get_interface(self)).not_nil!
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def array_type
|
|
62
|
+
GIRepository.type_info_get_array_type(self)
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def array_length_param
|
|
66
|
+
GIRepository.type_info_get_array_length(self)
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
def array_fixed_size
|
|
70
|
+
GIRepository.type_info_get_array_fixed_size(self)
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
def param_type(n = 0)
|
|
74
|
+
BaseInfo.wrap(GIRepository.type_info_get_param_type(self, n)).as(TypeInfo)
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
def zero_terminated?
|
|
78
|
+
GIRepository.type_info_is_zero_terminated(self)
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
def primitive?
|
|
82
|
+
{
|
|
83
|
+
TypeTag::BOOLEAN,
|
|
84
|
+
TypeTag::INT8,
|
|
85
|
+
TypeTag::UINT8,
|
|
86
|
+
TypeTag::INT16,
|
|
87
|
+
TypeTag::UINT16,
|
|
88
|
+
TypeTag::INT32,
|
|
89
|
+
TypeTag::UINT32,
|
|
90
|
+
TypeTag::INT64,
|
|
91
|
+
TypeTag::UINT64,
|
|
92
|
+
TypeTag::FLOAT,
|
|
93
|
+
TypeTag::DOUBLE,
|
|
94
|
+
TypeTag::GTYPE,
|
|
95
|
+
TypeTag::UTF8,
|
|
96
|
+
TypeTag::FILENAME,
|
|
97
|
+
TypeTag::UNICHAR,
|
|
98
|
+
}.includes?(tag)
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
def lib_definition(builder)
|
|
102
|
+
base = case tag
|
|
103
|
+
when .interface?
|
|
104
|
+
interface = self.interface
|
|
105
|
+
name = interface.name
|
|
106
|
+
if interface.info_type.unresolved?
|
|
107
|
+
return "Void*"
|
|
108
|
+
elsif name.nil? || BLACKLIST.includes?(name) || (name && 'a' <= name[0] <= 'z') # More weird stuff, also compiler could be smarter here
|
|
109
|
+
interface.is_a?(CallbackInfo) ? "-> Void" : "Void*"
|
|
110
|
+
elsif interface.is_a?(CallbackInfo) && inline_type?
|
|
111
|
+
return Crout.build { |b| write interface.as(CallbackInfo).signature(b) }
|
|
112
|
+
else
|
|
113
|
+
namespace = "Lib#{interface.namespace}::"
|
|
114
|
+
namespace = nil if namespace == self.namespace
|
|
115
|
+
"#{namespace}#{interface.name}"
|
|
116
|
+
end
|
|
117
|
+
when .array?
|
|
118
|
+
case array_type
|
|
119
|
+
when ArrayType::C
|
|
120
|
+
param = param_type.lib_definition(builder)
|
|
121
|
+
param += "[#{array_fixed_size}]" if array_fixed_size > 1
|
|
122
|
+
param
|
|
123
|
+
else
|
|
124
|
+
"Void"
|
|
125
|
+
end
|
|
126
|
+
else
|
|
127
|
+
TAG_MAP[tag]
|
|
128
|
+
end
|
|
129
|
+
base = "Pointer(#{base})" if pointer?
|
|
130
|
+
base
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
def null_value_for_lib(builder)
|
|
134
|
+
if pointer?
|
|
135
|
+
"#{lib_definition(builder)}.null"
|
|
136
|
+
else
|
|
137
|
+
"nil"
|
|
138
|
+
end
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
def signal_lib_definition(builder)
|
|
142
|
+
base = lib_definition(builder)
|
|
143
|
+
base += "*" if is_pointer_in_signal?
|
|
144
|
+
base
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
def is_pointer_in_signal?
|
|
148
|
+
tag.interface? && !interface.is_a?(EnumInfo)
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
def gvalue_type
|
|
152
|
+
"GObject::Type::" + case tag
|
|
153
|
+
when .int32?
|
|
154
|
+
"INT"
|
|
155
|
+
when .uint32?
|
|
156
|
+
"UINT"
|
|
157
|
+
when .interface?
|
|
158
|
+
interface = self.interface
|
|
159
|
+
case interface
|
|
160
|
+
when ObjectInfo, StructInfo, UnionInfo
|
|
161
|
+
"OBJECT"
|
|
162
|
+
when InterfaceInfo
|
|
163
|
+
"INTERFACE"
|
|
164
|
+
when EnumInfo
|
|
165
|
+
"ENUM"
|
|
166
|
+
else
|
|
167
|
+
"INTERFACE"
|
|
168
|
+
end
|
|
169
|
+
when .ghash?
|
|
170
|
+
"POINTER"
|
|
171
|
+
else
|
|
172
|
+
tag.to_s
|
|
173
|
+
end
|
|
174
|
+
end
|
|
175
|
+
|
|
176
|
+
def wrapper_definition(builder, libname = "")
|
|
177
|
+
case tag
|
|
178
|
+
when .interface?
|
|
179
|
+
interface.full_constant
|
|
180
|
+
when .array?
|
|
181
|
+
"::Enumerable(#{param_type.wrapper_definition(builder, libname)})"
|
|
182
|
+
when .void?
|
|
183
|
+
pointer? ? "Void*" : "Nil"
|
|
184
|
+
when .utf8?, .filename?
|
|
185
|
+
"::String"
|
|
186
|
+
when .boolean?
|
|
187
|
+
"::Bool"
|
|
188
|
+
else
|
|
189
|
+
TAG_MAP[tag]
|
|
190
|
+
end
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
def convert_to_crystal(builder, variable) : String | Crout::Expression
|
|
194
|
+
case tag
|
|
195
|
+
when .interface?
|
|
196
|
+
interface = self.interface
|
|
197
|
+
case interface
|
|
198
|
+
when ObjectInfo, StructInfo, UnionInfo, EnumInfo, FlagsInfo
|
|
199
|
+
builder.call "new", variable, receiver: interface.full_constant
|
|
200
|
+
when InterfaceInfo
|
|
201
|
+
builder.call "new", variable, receiver: "#{interface.full_constant}::Wrapper"
|
|
202
|
+
else
|
|
203
|
+
variable
|
|
204
|
+
end
|
|
205
|
+
when .array?
|
|
206
|
+
case array_type
|
|
207
|
+
when ArrayType::C
|
|
208
|
+
item = builder.declare_var
|
|
209
|
+
builder.call("new", variable, receiver: "GObject::PointerIterator", block_args: {item}) do |b|
|
|
210
|
+
b.line param_type.convert_to_crystal(b, item)
|
|
211
|
+
end
|
|
212
|
+
else
|
|
213
|
+
variable
|
|
214
|
+
end
|
|
215
|
+
when .boolean?
|
|
216
|
+
"(#{variable} == 1)"
|
|
217
|
+
when .utf8?, .filename?
|
|
218
|
+
builder.call "new", variable, receiver: "::String"
|
|
219
|
+
when .glist?
|
|
220
|
+
"GLib::ListIterator(#{param_type.wrapper_definition(builder)}, #{param_type.lib_definition(builder)}*).new(GLib::List.new(#{variable}.as(LibGLib::List*)))"
|
|
221
|
+
when .gslist?
|
|
222
|
+
"GLib::SListIterator(#{param_type.wrapper_definition(builder)}, #{param_type.lib_definition(builder)}*).new(GLib::SList.new(#{variable}.as(LibGLib::SList*)))"
|
|
223
|
+
else
|
|
224
|
+
variable
|
|
225
|
+
end
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
def convert_from_crystal(variable)
|
|
229
|
+
case tag
|
|
230
|
+
when .interface?
|
|
231
|
+
interface = self.interface
|
|
232
|
+
if interface.namespace == "GObject" && interface.name == "Value"
|
|
233
|
+
"#{variable}.to_gvalue.to_unsafe#{".value" unless pointer?}"
|
|
234
|
+
elsif interface.is_a?(ObjectInfo) || interface.is_a?(InterfaceInfo)
|
|
235
|
+
converter = interface.to_unsafe_name if interface.responds_to?(:to_unsafe_name)
|
|
236
|
+
pointer? && converter ? "#{variable}.#{converter}" : variable
|
|
237
|
+
else
|
|
238
|
+
pointer? ? "#{variable}.to_unsafe.as(Lib#{interface.full_constant}*)" : variable
|
|
239
|
+
end
|
|
240
|
+
when .array?
|
|
241
|
+
if param_type.tag.uint8? # Assume UInt8* (gchar*) is a string for now
|
|
242
|
+
"#{variable}.to_unsafe"
|
|
243
|
+
else
|
|
244
|
+
"(__#{variable}_ary = #{variable}.map { |__item| #{param_type.convert_from_crystal("__item")} }.to_a).to_unsafe"
|
|
245
|
+
end
|
|
246
|
+
when .boolean?
|
|
247
|
+
"LibC::Int.new(#{variable} ? 1 : 0)"
|
|
248
|
+
when .glist?,
|
|
249
|
+
.gslist?,
|
|
250
|
+
.ghash?,
|
|
251
|
+
.error?,
|
|
252
|
+
.void?
|
|
253
|
+
variable
|
|
254
|
+
when .utf8?, .filename?
|
|
255
|
+
"#{variable}.to_unsafe"
|
|
256
|
+
else
|
|
257
|
+
if pointer?
|
|
258
|
+
variable
|
|
259
|
+
else
|
|
260
|
+
"#{TAG_MAP[tag]}.new(#{variable})"
|
|
261
|
+
end
|
|
262
|
+
end
|
|
263
|
+
end
|
|
264
|
+
|
|
265
|
+
def unwrap_gvalue(variable)
|
|
266
|
+
case tag
|
|
267
|
+
when .interface?
|
|
268
|
+
interface = self.interface
|
|
269
|
+
case interface
|
|
270
|
+
when ObjectInfo, StructInfo, UnionInfo
|
|
271
|
+
"#{interface.full_constant}.cast(#{variable}.object)"
|
|
272
|
+
when InterfaceInfo
|
|
273
|
+
"#{interface.full_constant}::Wrapper.cast(#{variable}.instance)"
|
|
274
|
+
when FlagsInfo
|
|
275
|
+
"#{interface.full_constant}.new(#{interface.type}.new(#{variable}.flags))"
|
|
276
|
+
when EnumInfo
|
|
277
|
+
"#{interface.full_constant}.new(#{interface.type}.new(#{variable}.enum))"
|
|
278
|
+
else
|
|
279
|
+
"#{variable}"
|
|
280
|
+
end
|
|
281
|
+
when .boolean?
|
|
282
|
+
"#{variable}.boolean"
|
|
283
|
+
when .utf8?
|
|
284
|
+
"#{variable}.string"
|
|
285
|
+
when .int32?
|
|
286
|
+
"#{variable}.int"
|
|
287
|
+
when .uint32?
|
|
288
|
+
"#{variable}.uint"
|
|
289
|
+
when .float?
|
|
290
|
+
"#{variable}.float"
|
|
291
|
+
when .double?
|
|
292
|
+
"#{variable}.double"
|
|
293
|
+
when .ghash?
|
|
294
|
+
"GLib::HashTable.new(#{variable}.pointer.as(LibGLib::HashTable*))"
|
|
295
|
+
else
|
|
296
|
+
variable
|
|
297
|
+
end
|
|
298
|
+
end
|
|
299
|
+
|
|
300
|
+
def inline_type?
|
|
301
|
+
tag.interface? && equal(interface)
|
|
302
|
+
end
|
|
303
|
+
|
|
304
|
+
Dumper.def do
|
|
305
|
+
dumper.puts "* tag = #{tag}"
|
|
306
|
+
dumper.puts "* pointer = #{pointer?}"
|
|
307
|
+
dumper.puts "* is_inline_type = #{inline_type?}"
|
|
308
|
+
dumper.puts "* array_type = #{array_type}" if tag.array?
|
|
309
|
+
dumper.puts "* array_length_param = #{array_length_param}" if tag.array?
|
|
310
|
+
dumper.puts "* array_fixed_size = #{array_fixed_size}" if tag.array?
|
|
311
|
+
dumper.puts "* is_zero_terminated = #{zero_terminated?}" if tag.array?
|
|
312
|
+
|
|
313
|
+
Dumper.dump_child interface if tag.interface?
|
|
314
|
+
Dumper.dump_child param_type if tag.array?
|
|
315
|
+
end
|
|
316
|
+
end
|
|
317
|
+
end
|
|
318
|
+
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
# Feedback and donation to gregorycohen2@gmail.com (money transfer or Paypal)
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
#
|
|
3
|
+
# Democracy software compilation VERSION 0.0., created on 2021-11-14 17:41:34 -0500
|
|
4
|
+
# Get all of this code, and all of these files, with
|
|
5
|
+
# gem install democracy
|
|
6
|
+
# Linux ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu]
|
|
7
|
+
#
|
|
8
|
+
# Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
|
|
9
|
+
#
|
|
10
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
# 52 of 16 source files
|
|
17
|
+
module GIRepository
|
|
18
|
+
require_relative "string__"
|
|
19
|
+
class UnionInfo < BaseInfo
|
|
20
|
+
include RegisteredTypeInfo
|
|
21
|
+
include WrapperGenerator
|
|
22
|
+
|
|
23
|
+
each_converted union_info, field, FieldInfo
|
|
24
|
+
each_converted union_info, method, FunctionInfo
|
|
25
|
+
|
|
26
|
+
def name
|
|
27
|
+
name = super
|
|
28
|
+
name = 'A' <= name[0] <= 'Z' ? name : "#{c_prefix}#{name}" if name
|
|
29
|
+
name = 'A' <= name[0] <= 'Z' ? name : "#{name[0].upcase}#{name[1..]}" if name
|
|
30
|
+
name.not_nil!
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def size
|
|
34
|
+
GIRepository.union_info_get_size(self)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def alignment
|
|
38
|
+
GIRepository.union_info_get_alignment(self)
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def discriminated?
|
|
42
|
+
GIRepository.union_info_is_discriminated(self)
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def discriminators
|
|
46
|
+
discriminators = Hash(String, ConstantInfo).new
|
|
47
|
+
|
|
48
|
+
fields.each_with_index do |field, i|
|
|
49
|
+
info = ConstantInfo.wrap GIRepository.union_info_get_discriminator(self, i)
|
|
50
|
+
name = field.name
|
|
51
|
+
discriminators[name] = info.as(ConstantInfo) if name && info
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
discriminators
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def discriminator_type
|
|
58
|
+
TypeInfo.wrap GIRepository.union_info_get_discriminator_type(self)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def discriminator_offset
|
|
62
|
+
GIRepository.union_info_get_discriminator_offset(self)
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
def lib_definition(builder)
|
|
66
|
+
if fields_size > 0
|
|
67
|
+
builder.def_union(name) do
|
|
68
|
+
each_field &.lib_definition(builder)
|
|
69
|
+
end
|
|
70
|
+
else
|
|
71
|
+
builder.def_alias name, "Void*"
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
each_method &.lib_definition(builder)
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
def wrapper_definition(builder, libname)
|
|
78
|
+
builder.def_class(name) do
|
|
79
|
+
section { add_include "GObject::WrappedType" }
|
|
80
|
+
|
|
81
|
+
union_members = [name].concat fields.map { |field| field.type.wrapper_definition(libname) }
|
|
82
|
+
def_alias "Union", union_members.join("|")
|
|
83
|
+
|
|
84
|
+
each_field do |field|
|
|
85
|
+
if field.readable?
|
|
86
|
+
def_method(field.wrapper_name) do
|
|
87
|
+
ptr = call("to_unsafe")
|
|
88
|
+
value = if field.type.tag.interface? && !field.type.pointer?
|
|
89
|
+
call("as", "Lib#{field.type.namespace}::#{field.type.interface.name}*", receiver: ptr)
|
|
90
|
+
else
|
|
91
|
+
ptr = call("as", ptr_type(libname), receiver: ptr)
|
|
92
|
+
strct = call("value", receiver: ptr)
|
|
93
|
+
call(field.name, receiver: strct)
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
line field.type.convert_to_crystal(builder, value)
|
|
97
|
+
end
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
write_gtype_constant builder, libname
|
|
102
|
+
write_constructor builder, libname
|
|
103
|
+
write_to_unsafe builder, libname
|
|
104
|
+
write_methods builder, libname
|
|
105
|
+
end
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
Dumper.def do
|
|
109
|
+
dumper.puts "* size = #{size}"
|
|
110
|
+
dumper.puts "* alignment = #{alignment}"
|
|
111
|
+
dumper.puts "* discriminated = #{discriminated?}"
|
|
112
|
+
if discriminated?
|
|
113
|
+
dumper.puts "* discriminator_offset = #{discriminator_offset}"
|
|
114
|
+
Dumper.dump_child discriminator_type
|
|
115
|
+
dumper.puts "* discriminators:"
|
|
116
|
+
dumper.nest(2) do
|
|
117
|
+
discriminators.each do |field, constant|
|
|
118
|
+
dumper.puts "- #{field}"
|
|
119
|
+
dumper.nest(2) { yield constant }
|
|
120
|
+
end
|
|
121
|
+
end
|
|
122
|
+
end
|
|
123
|
+
Dumper.dump_childs field
|
|
124
|
+
Dumper.dump_childs method
|
|
125
|
+
end
|
|
126
|
+
end
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
# Feedback and donation to gregorycohen2@gmail.com (money transfer or Paypal)
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
#
|
|
3
|
+
# Democracy software compilation VERSION 0.0., created on 2021-11-14 17:41:34 -0500
|
|
4
|
+
# Get all of this code, and all of these files, with
|
|
5
|
+
# gem install democracy
|
|
6
|
+
# Linux ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu]
|
|
7
|
+
#
|
|
8
|
+
# Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
|
|
9
|
+
#
|
|
10
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
# 60 of 16 source files
|
|
17
|
+
module GIRepository
|
|
18
|
+
require_relative "string__"
|
|
19
|
+
class VFuncInfo < BaseInfo
|
|
20
|
+
def lib_definition(builder)
|
|
21
|
+
builder.comment "Virtual function #{name}"
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
# Feedback and donation to gregorycohen2@gmail.com (money transfer or Paypal)
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
#
|
|
3
|
+
# Democracy software compilation VERSION 0.0., created on 2021-11-14 17:41:34 -0500
|
|
4
|
+
# Get all of this code, and all of these files, with
|
|
5
|
+
# gem install democracy
|
|
6
|
+
# Linux ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu]
|
|
7
|
+
#
|
|
8
|
+
# Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
|
|
9
|
+
#
|
|
10
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
# 48 of 16 source files
|
|
17
|
+
module GIRepository
|
|
18
|
+
require_relative "string__"
|
|
19
|
+
class ValueInfo < BaseInfo
|
|
20
|
+
def value : Int64
|
|
21
|
+
GIRepository.value_info_get_value(self)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
def literal(tag)
|
|
25
|
+
case tag
|
|
26
|
+
when .int8?
|
|
27
|
+
value.to_i8
|
|
28
|
+
when .uint8?, .unichar?
|
|
29
|
+
value.to_u8
|
|
30
|
+
when .int16?
|
|
31
|
+
value.to_i16
|
|
32
|
+
when .uint16?
|
|
33
|
+
value.to_u16
|
|
34
|
+
when .int32?
|
|
35
|
+
value.to_i32
|
|
36
|
+
when .uint32?
|
|
37
|
+
value.to_u32
|
|
38
|
+
when .uint64?
|
|
39
|
+
value.to_u64
|
|
40
|
+
when .float?
|
|
41
|
+
value.to_f
|
|
42
|
+
when .double?
|
|
43
|
+
value.to_f64
|
|
44
|
+
else
|
|
45
|
+
value
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
Dumper.def do
|
|
50
|
+
dumper.puts "* value = #{value}"
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
# Feedback and donation to gregorycohen2@gmail.com (money transfer or Paypal)
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
#
|
|
3
|
+
# Democracy software compilation VERSION 0.0., created on 2021-11-14 17:41:34 -0500
|
|
4
|
+
# Get all of this code, and all of these files, with
|
|
5
|
+
# gem install democracy
|
|
6
|
+
# Linux ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux-gnu]
|
|
7
|
+
#
|
|
8
|
+
# Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
|
|
9
|
+
#
|
|
10
|
+
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
# 43 of 16 source files
|
|
17
|
+
module GIRepository
|
|
18
|
+
require_relative "string__"
|
|
19
|
+
require_relative "./repository"
|
|
20
|
+
class Repository
|
|
21
|
+
@@instance : self?
|
|
22
|
+
|
|
23
|
+
def self.instance
|
|
24
|
+
@@instance ||= default
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def require(namespace : String, version : String? = nil)
|
|
28
|
+
self.require namespace, version, :zero_none
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def dependencies(namespace : String)
|
|
32
|
+
dependencies = previous_def
|
|
33
|
+
dependencies.map { |dep|
|
|
34
|
+
name, version = dep.split('-')
|
|
35
|
+
{name, version}
|
|
36
|
+
}
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def find_by_name(namespace : String, name : String)
|
|
40
|
+
ptr = LibGIRepository.repository_find_by_name(self, namespace, name)
|
|
41
|
+
BaseInfo.wrap BaseInfo.new(ptr) if ptr
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def all_infos(namespace : String)
|
|
45
|
+
Array.new(n_infos(namespace)) { |index|
|
|
46
|
+
info(namespace, index).not_nil!
|
|
47
|
+
}
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
def info(namespace : String, index : Int)
|
|
51
|
+
BaseInfo.wrap previous_def
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def shared_library(namespace : String)
|
|
55
|
+
libs = LibGIRepository.repository_get_shared_library(@pointer.as(LibGIRepository::Repository*), namespace)
|
|
56
|
+
String.new(libs) if libs
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
# Feedback and donation to gregorycohen2@gmail.com (money transfer or Paypal)
|