democracy 0.0.56
Sign up to get free protection for your applications and to get access to all the features.
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,46 @@
|
|
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
|
+
# 45 of 16 source files
|
17
|
+
module GIRepository
|
18
|
+
require_relative "string__"
|
19
|
+
require_relative ".//"
|
20
|
+
def self.filename(filename)
|
21
|
+
filename.not_nil!
|
22
|
+
.gsub(/[A-Z][a-z]*(?=[A-Z])/) { |m| "#{m.downcase}_" }
|
23
|
+
.gsub(/::/, "_")
|
24
|
+
.downcase
|
25
|
+
end
|
26
|
+
|
27
|
+
def self.object_info_get_parent(info : GIRepository::BaseInfo)
|
28
|
+
parent = LibGIRepository.object_info_get_parent(info.to_unsafe.as(LibGIRepository::BaseInfo*))
|
29
|
+
BaseInfo.new(parent) if parent
|
30
|
+
end
|
31
|
+
|
32
|
+
def self.object_info_get_class_struct(info : GIRepository::BaseInfo)
|
33
|
+
class_struct = LibGIRepository.object_info_get_class_struct(info.to_unsafe.as(LibGIRepository::BaseInfo*))
|
34
|
+
BaseInfo.new(class_struct) if class_struct
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
|
46
|
+
# Feedback and donation to gregorycohen2@gmail.com (money transfer or Paypal)
|
@@ -0,0 +1,157 @@
|
|
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
|
+
# 57 of 16 source files
|
17
|
+
module GIRepository
|
18
|
+
require_relative "string__"
|
19
|
+
class ArgInfo < BaseInfo
|
20
|
+
KEYWORDS = {"abstract", "alias", "begin", "def", "end", "in", "module", "next", "out", "self"}
|
21
|
+
|
22
|
+
def name
|
23
|
+
name = super
|
24
|
+
name = "_#{name}" if name[0].uppercase? if name
|
25
|
+
name = "_#{name}" if KEYWORDS.includes? name
|
26
|
+
name.not_nil!
|
27
|
+
end
|
28
|
+
|
29
|
+
def direction
|
30
|
+
GIRepository.arg_info_get_direction(self)
|
31
|
+
end
|
32
|
+
|
33
|
+
def in?
|
34
|
+
direction.in?
|
35
|
+
end
|
36
|
+
|
37
|
+
def out?
|
38
|
+
direction.out?
|
39
|
+
end
|
40
|
+
|
41
|
+
def inout?
|
42
|
+
direction.inout?
|
43
|
+
end
|
44
|
+
|
45
|
+
def optional?
|
46
|
+
GIRepository.arg_info_is_optional self
|
47
|
+
end
|
48
|
+
|
49
|
+
def nullable?
|
50
|
+
GIRepository.arg_info_may_be_null self
|
51
|
+
end
|
52
|
+
|
53
|
+
def nilable?
|
54
|
+
nullable? || optional?
|
55
|
+
end
|
56
|
+
|
57
|
+
def gvalue_out?
|
58
|
+
out? && type.tag.interface? && type.interface.namespace == "GObject" && type.interface.name == "Value"
|
59
|
+
end
|
60
|
+
|
61
|
+
def closure?
|
62
|
+
in? && type.tag.interface? && type.interface.namespace == "GObject" && type.interface.name == "Closure"
|
63
|
+
end
|
64
|
+
|
65
|
+
def return_value?
|
66
|
+
GIRepository.arg_info_is_return_value(self)
|
67
|
+
end
|
68
|
+
|
69
|
+
def skip?
|
70
|
+
GIRepository.arg_info_is_skip(self)
|
71
|
+
end
|
72
|
+
|
73
|
+
def type
|
74
|
+
BaseInfo.wrap(GIRepository.arg_info_get_type(self)).as(TypeInfo)
|
75
|
+
end
|
76
|
+
|
77
|
+
def ownership_transfer
|
78
|
+
GIRepository.arg_info_get_ownership_transfer(self)
|
79
|
+
end
|
80
|
+
|
81
|
+
def caller_allocates?
|
82
|
+
GIRepository.arg_info_is_caller_allocates(self)
|
83
|
+
end
|
84
|
+
|
85
|
+
def lib_definition(builder)
|
86
|
+
builder.arg name, type: "#{type.lib_definition(builder)}#{'*' if out? || inout?}"
|
87
|
+
end
|
88
|
+
|
89
|
+
def for_wrapper_definition(builder, libname)
|
90
|
+
case type.tag
|
91
|
+
when .int8?, .uint8?, .int16?, .uint16?, .int32?, .uint32?, .int64?, .uint64?
|
92
|
+
builder.arg name, type: "::Int"
|
93
|
+
when .float?, .double?
|
94
|
+
builder.arg name, type: "::Float"
|
95
|
+
when .array?
|
96
|
+
if type.param_type.tag.int8? # Assume Int8* (gchar*) is a string for now
|
97
|
+
builder.arg name, type: "::String#{"?" if nilable?}"
|
98
|
+
elsif type.param_type.tag.uint8?
|
99
|
+
builder.arg name, type: "::Bytes#{"?" if nilable?}"
|
100
|
+
else
|
101
|
+
builder.arg name, type: "::Enumerable#{"?" if nilable?}"
|
102
|
+
end
|
103
|
+
when .interface?
|
104
|
+
interface = type.interface
|
105
|
+
if interface.namespace == "GObject" && interface.name == "Value"
|
106
|
+
builder.arg name
|
107
|
+
elsif interface.is_a?(UnionInfo)
|
108
|
+
builder.arg name, type: "#{type.wrapper_definition(libname)}::Union#{"?" if nilable?}"
|
109
|
+
else
|
110
|
+
builder.arg name, type: "#{type.wrapper_definition(libname)}#{"?" if nilable?}"
|
111
|
+
end
|
112
|
+
else
|
113
|
+
builder.arg name, type: "#{type.wrapper_definition(libname)}#{"?" if nilable?}"
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
def for_wrapper_pass(builder, libname)
|
118
|
+
if out? || inout?
|
119
|
+
name
|
120
|
+
else
|
121
|
+
if nullable?
|
122
|
+
"#{name} ? #{type.convert_from_crystal(name)} : #{type.null_value_for_lib(builder)}"
|
123
|
+
else
|
124
|
+
type.convert_from_crystal(name)
|
125
|
+
end
|
126
|
+
end
|
127
|
+
end
|
128
|
+
|
129
|
+
def from_wrapper_pass
|
130
|
+
if out? || inout?
|
131
|
+
name
|
132
|
+
else
|
133
|
+
"#{"#{name} && " if nullable?}#{type.convert_to_crystal(name)}"
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
Dumper.def do
|
138
|
+
dumper.puts "* direction = #{direction}"
|
139
|
+
dumper.puts "* optional = #{optional?}"
|
140
|
+
dumper.puts "* nullable = #{nullable?}"
|
141
|
+
dumper.puts "* return_value = #{return_value?}"
|
142
|
+
dumper.puts "* ownership = #{ownership_transfer}"
|
143
|
+
dumper.puts "* caller_allocates = #{caller_allocates?}"
|
144
|
+
dumper.puts "* skip = #{skip?}"
|
145
|
+
Dumper.dump_child type
|
146
|
+
end
|
147
|
+
end
|
148
|
+
end
|
149
|
+
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
# Feedback and donation to gregorycohen2@gmail.com (money transfer or Paypal)
|
@@ -0,0 +1,169 @@
|
|
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
|
+
# 59 of 16 source files
|
17
|
+
module GIRepository
|
18
|
+
require_relative "string__"
|
19
|
+
class BaseInfo
|
20
|
+
INFO_TYPES = Hash(InfoType, BaseInfo.class).new
|
21
|
+
|
22
|
+
macro inherited
|
23
|
+
INFO_TYPES[InfoType::{{@type.name[14..-5].upcase.id}}] = {{@type}}
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.wrap(info)
|
27
|
+
return unless info
|
28
|
+
|
29
|
+
upper = INFO_TYPES[info.info_type]?
|
30
|
+
if upper
|
31
|
+
LibGIRepository.base_info_ref(info)
|
32
|
+
info = upper.new info.to_unsafe
|
33
|
+
end
|
34
|
+
|
35
|
+
info
|
36
|
+
end
|
37
|
+
|
38
|
+
def self.new(pointer : LibGIRepository::BaseInfo*)
|
39
|
+
new(ptr: pointer) if pointer
|
40
|
+
end
|
41
|
+
|
42
|
+
def initialize(*, ptr : LibGIRepository::BaseInfo*)
|
43
|
+
@pointer = ptr.as(Void*)
|
44
|
+
LibGIRepository.base_info_ref(ptr)
|
45
|
+
end
|
46
|
+
|
47
|
+
def ==(other)
|
48
|
+
return false unless other.is_a?(BaseInfo)
|
49
|
+
self.class == other.class && equal(other)
|
50
|
+
end
|
51
|
+
|
52
|
+
def info_type
|
53
|
+
InfoType.new LibGIRepository.base_info_get_type self
|
54
|
+
end
|
55
|
+
|
56
|
+
def name
|
57
|
+
ptr = LibGIRepository.base_info_get_name(self)
|
58
|
+
String.new(ptr) if ptr
|
59
|
+
end
|
60
|
+
|
61
|
+
def constant
|
62
|
+
name.try &->Namespace.constant(String)
|
63
|
+
end
|
64
|
+
|
65
|
+
def full_constant
|
66
|
+
"#{namespace_constant}::#{constant}"
|
67
|
+
end
|
68
|
+
|
69
|
+
def namespace
|
70
|
+
namespace = previous_def
|
71
|
+
"#{namespace[0].upcase}#{namespace[1..-1]}"
|
72
|
+
end
|
73
|
+
|
74
|
+
def symbol_prefix
|
75
|
+
typelib.namespace.downcase
|
76
|
+
end
|
77
|
+
|
78
|
+
def namespace_constant
|
79
|
+
Namespace.constant(namespace)
|
80
|
+
end
|
81
|
+
|
82
|
+
def container?
|
83
|
+
ptr = LibGIRepository.base_info_get_container(self)
|
84
|
+
BaseInfo.wrap(BaseInfo.new(ptr)) if ptr
|
85
|
+
end
|
86
|
+
|
87
|
+
def container
|
88
|
+
container = container?
|
89
|
+
return container if container
|
90
|
+
raise "No container for #{self}"
|
91
|
+
end
|
92
|
+
|
93
|
+
def c_prefix
|
94
|
+
Repository.instance.c_prefix(namespace)
|
95
|
+
end
|
96
|
+
|
97
|
+
def prefix
|
98
|
+
container = container?
|
99
|
+
return "" unless container
|
100
|
+
name = container.name
|
101
|
+
return "" unless name
|
102
|
+
prefix = name
|
103
|
+
.gsub(/[A-Z][a-z]*(?=[A-Z])/) { |m| "#{m.downcase}_" }
|
104
|
+
.downcase
|
105
|
+
"#{prefix}_"
|
106
|
+
end
|
107
|
+
|
108
|
+
def attributes
|
109
|
+
attributes = Hash(String, String).new
|
110
|
+
return attributes if info_type.unresolved?
|
111
|
+
iter = GIRepository::AttributeIter.new
|
112
|
+
while LibGIRepository.base_info_iterate_attributes(self, iter, out name, out value) == 1
|
113
|
+
attributes[String.new(name)] = String.new(value)
|
114
|
+
end
|
115
|
+
|
116
|
+
attributes
|
117
|
+
end
|
118
|
+
|
119
|
+
def finalize
|
120
|
+
LibGIRepository.base_info_unref(to_unsafe)
|
121
|
+
end
|
122
|
+
|
123
|
+
def lib_definition(builder)
|
124
|
+
builder.comment "Bug: #{name} : #{info_type}"
|
125
|
+
end
|
126
|
+
|
127
|
+
def wrapper_definition(builder, libname)
|
128
|
+
builder.comment "Bug: #{name} : #{info_type}"
|
129
|
+
end
|
130
|
+
|
131
|
+
def dump(io : IO)
|
132
|
+
Dumper.new(io).dump(self)
|
133
|
+
end
|
134
|
+
|
135
|
+
def dump(dumper : Dumper)
|
136
|
+
dumper.dump(self)
|
137
|
+
end
|
138
|
+
|
139
|
+
def dump(dumper, & : BaseInfo ->)
|
140
|
+
dump_base(dumper)
|
141
|
+
attributes.each do |name, value|
|
142
|
+
dumper.puts "- #{name} = #{value}"
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
def dump_base(dumper)
|
147
|
+
dumper.io.print "#{dumper.base_indent}+ "
|
148
|
+
to_s(dumper.io)
|
149
|
+
dumper.io.puts
|
150
|
+
end
|
151
|
+
|
152
|
+
def to_s(io)
|
153
|
+
io << (name || "<no name>") << " (" << GIRepository.info_type_to_string(info_type) << ", " << namespace << ')'
|
154
|
+
end
|
155
|
+
|
156
|
+
def to_unsafe
|
157
|
+
previous_def.as(LibGIRepository::BaseInfo*)
|
158
|
+
end
|
159
|
+
end
|
160
|
+
end
|
161
|
+
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
# Feedback and donation to gregorycohen2@gmail.com (money transfer or Paypal)
|
@@ -0,0 +1,266 @@
|
|
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
|
+
# 53 of 16 source files
|
17
|
+
module GIRepository
|
18
|
+
require_relative "string__"
|
19
|
+
module CallableInfo
|
20
|
+
class FakeContainer
|
21
|
+
getter name
|
22
|
+
|
23
|
+
def initialize(@name : String)
|
24
|
+
end
|
25
|
+
|
26
|
+
def type_lib_definition
|
27
|
+
name
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
class FakeType
|
32
|
+
def initialize(@container : BaseInfo | FakeContainer)
|
33
|
+
end
|
34
|
+
|
35
|
+
def lib_definition(builder)
|
36
|
+
case container = @container
|
37
|
+
when RegisteredTypeInfo
|
38
|
+
container.type_lib_definition
|
39
|
+
else
|
40
|
+
container.name.not_nil!
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
def signal_lib_definition(builder)
|
45
|
+
base = lib_definition(builder)
|
46
|
+
base += "*" if base && is_pointer_in_signal?
|
47
|
+
base
|
48
|
+
end
|
49
|
+
|
50
|
+
def is_pointer_in_signal?
|
51
|
+
@container.is_a?(StructInfo)
|
52
|
+
end
|
53
|
+
|
54
|
+
def wrapper_definition(builder, libname)
|
55
|
+
@container.name.not_nil!
|
56
|
+
end
|
57
|
+
|
58
|
+
def tag
|
59
|
+
TypeTag.new 0u32
|
60
|
+
end
|
61
|
+
|
62
|
+
def array_length_param
|
63
|
+
-1
|
64
|
+
end
|
65
|
+
|
66
|
+
def primitive?
|
67
|
+
false
|
68
|
+
end
|
69
|
+
|
70
|
+
def convert_to_crystal(builder, variable)
|
71
|
+
if @container.is_a? InterfaceInfo
|
72
|
+
builder.call "new", variable, receiver: "#{@container.name}::Wrapper"
|
73
|
+
else
|
74
|
+
builder.call "new", variable, receiver: @container.name
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
def convert_from_crystal(variable)
|
79
|
+
variable
|
80
|
+
end
|
81
|
+
|
82
|
+
def gvalue_type
|
83
|
+
case @container
|
84
|
+
when RegisteredTypeInfo
|
85
|
+
"GObject::Type::OBJECT"
|
86
|
+
else
|
87
|
+
"GObject::Type::NONE"
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
class SelfArgInfo
|
93
|
+
def initialize(@container : BaseInfo)
|
94
|
+
end
|
95
|
+
|
96
|
+
def lib_definition(builder)
|
97
|
+
builder.arg "this", type: "#{@container.name}*"
|
98
|
+
end
|
99
|
+
|
100
|
+
def name
|
101
|
+
"this"
|
102
|
+
end
|
103
|
+
|
104
|
+
def type
|
105
|
+
FakeType.new(@container)
|
106
|
+
end
|
107
|
+
|
108
|
+
def for_wrapper_definition(builder, libname)
|
109
|
+
end
|
110
|
+
|
111
|
+
def for_wrapper_pass(builder, libname)
|
112
|
+
builder.call("as", "#{libname}::#{@container.name}*", receiver: "@pointer")
|
113
|
+
end
|
114
|
+
|
115
|
+
def from_wrapper_pass
|
116
|
+
"#{@container.name}.new(this)"
|
117
|
+
end
|
118
|
+
|
119
|
+
def gvalue_out?
|
120
|
+
false
|
121
|
+
end
|
122
|
+
|
123
|
+
def nilable?
|
124
|
+
false
|
125
|
+
end
|
126
|
+
|
127
|
+
def in?
|
128
|
+
true
|
129
|
+
end
|
130
|
+
|
131
|
+
def out?
|
132
|
+
false
|
133
|
+
end
|
134
|
+
|
135
|
+
def inout?
|
136
|
+
false
|
137
|
+
end
|
138
|
+
|
139
|
+
def closure?
|
140
|
+
false
|
141
|
+
end
|
142
|
+
end
|
143
|
+
|
144
|
+
class ErrorArgInfo
|
145
|
+
def lib_definition(builder)
|
146
|
+
builder.arg "error", type: "LibGLib::Error**"
|
147
|
+
end
|
148
|
+
|
149
|
+
def name
|
150
|
+
"error"
|
151
|
+
end
|
152
|
+
|
153
|
+
def type
|
154
|
+
FakeType.new FakeContainer.new("LibGLib::Error*")
|
155
|
+
end
|
156
|
+
|
157
|
+
def for_wrapper_definition(builder, libname)
|
158
|
+
end
|
159
|
+
|
160
|
+
def for_wrapper_pass(builder, var)
|
161
|
+
builder.call("pointerof", var)
|
162
|
+
end
|
163
|
+
|
164
|
+
def from_wrapper_pass
|
165
|
+
"error"
|
166
|
+
end
|
167
|
+
|
168
|
+
def gvalue_out?
|
169
|
+
false
|
170
|
+
end
|
171
|
+
|
172
|
+
def nilable?
|
173
|
+
false
|
174
|
+
end
|
175
|
+
|
176
|
+
def in?
|
177
|
+
true
|
178
|
+
end
|
179
|
+
|
180
|
+
def out?
|
181
|
+
true
|
182
|
+
end
|
183
|
+
|
184
|
+
def inout?
|
185
|
+
true
|
186
|
+
end
|
187
|
+
|
188
|
+
def closure?
|
189
|
+
false
|
190
|
+
end
|
191
|
+
end
|
192
|
+
|
193
|
+
def method?
|
194
|
+
GIRepository.callable_info_is_method(self)
|
195
|
+
end
|
196
|
+
|
197
|
+
def throws?
|
198
|
+
GIRepository.callable_info_can_throw_gerror(self)
|
199
|
+
end
|
200
|
+
|
201
|
+
def skip_return?
|
202
|
+
GIRepository.callable_info_skip_return(self) || return_type.void?
|
203
|
+
end
|
204
|
+
|
205
|
+
def may_return_null?
|
206
|
+
GIRepository.callable_info_may_return_null(self)
|
207
|
+
end
|
208
|
+
|
209
|
+
each_converted callable_info, arg, ArgInfo
|
210
|
+
|
211
|
+
def args
|
212
|
+
args = [] of ArgInfo | SelfArgInfo | ErrorArgInfo
|
213
|
+
args << SelfArgInfo.new(container) if method?
|
214
|
+
each_arg do |arg|
|
215
|
+
args << arg
|
216
|
+
end
|
217
|
+
args << ErrorArgInfo.new if throws?
|
218
|
+
args
|
219
|
+
end
|
220
|
+
|
221
|
+
def return_type
|
222
|
+
BaseInfo.wrap(GIRepository.callable_info_get_return_type(self)).as(TypeInfo)
|
223
|
+
end
|
224
|
+
|
225
|
+
def each_return_attribute
|
226
|
+
iter = AttributeIter.new
|
227
|
+
while LibGIRepository.callable_info_iterate_return_attributes(self, iter, out name, out value) == 1
|
228
|
+
yield String.new(name), String.new(value)
|
229
|
+
end
|
230
|
+
end
|
231
|
+
|
232
|
+
def caller_owns_return_value?
|
233
|
+
GIRepository.callable_info_get_caller_owns(self)
|
234
|
+
end
|
235
|
+
|
236
|
+
def self_arg_ownership
|
237
|
+
GIRepository.callable_info_get_instance_ownership_transfer(self)
|
238
|
+
end
|
239
|
+
|
240
|
+
Dumper.def do
|
241
|
+
dumper.puts "* method = #{method?}"
|
242
|
+
dumper.puts "* throws = #{throws?}"
|
243
|
+
dumper.puts "* skip_return = #{skip_return?}"
|
244
|
+
dumper.puts "* may_return_null = #{may_return_null?}"
|
245
|
+
dumper.puts "* caller_owns = #{caller_owns_return_value?}"
|
246
|
+
dumper.puts "* self_arg_ownership = #{self_arg_ownership}"
|
247
|
+
print_header = true
|
248
|
+
each_return_attribute do |name, value|
|
249
|
+
dumper.puts "* return_attributes" if print_header
|
250
|
+
print_header = false
|
251
|
+
dumper.puts " - #{name} = #{value}"
|
252
|
+
end
|
253
|
+
Dumper.dump_child return_type
|
254
|
+
Dumper.dump_childs arg
|
255
|
+
end
|
256
|
+
end
|
257
|
+
end
|
258
|
+
|
259
|
+
|
260
|
+
|
261
|
+
|
262
|
+
|
263
|
+
|
264
|
+
|
265
|
+
|
266
|
+
# Feedback and donation to gregorycohen2@gmail.com (money transfer or Paypal)
|
@@ -0,0 +1,54 @@
|
|
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
|
+
# 50 of 16 source files
|
17
|
+
module GIRepository
|
18
|
+
require_relative "string__"
|
19
|
+
class CallbackInfo < BaseInfo
|
20
|
+
include CallableInfo
|
21
|
+
|
22
|
+
def name
|
23
|
+
name = super.not_nil!
|
24
|
+
'A' <= name[0] <= 'Z' ? name : "#{name[0].upcase}#{name[1..]}"
|
25
|
+
end
|
26
|
+
|
27
|
+
def signature(builder)
|
28
|
+
builder.proc_type(args.map(&.type.lib_definition(builder)), return_type: return_type.lib_definition(builder))
|
29
|
+
end
|
30
|
+
|
31
|
+
def lib_definition(builder)
|
32
|
+
builder.def_alias name, signature(builder)
|
33
|
+
end
|
34
|
+
|
35
|
+
def wrapper_definition(builder, libname)
|
36
|
+
builder.def_alias name, "#{libname}::#{name}"
|
37
|
+
end
|
38
|
+
|
39
|
+
def for_wrapper_definition(builder, libname)
|
40
|
+
return_type = self.return_type.wrapper_definition(builder, libname)
|
41
|
+
return_type = "" if return_type == "Void" || return_type == "Void*"
|
42
|
+
builder.proc_type args.map(&.type.wrapper_definition(builder, libname)), return_type: return_type
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
|
54
|
+
# Feedback and donation to gregorycohen2@gmail.com (money transfer or Paypal)
|