distil 0.7.0
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.
- data/Rakefile +28 -0
- data/VERSION +1 -0
- data/bin/distil +45 -0
- data/distil.gemspec +586 -0
- data/lib/bootstrap-template.js +56 -0
- data/lib/configurable.rb +125 -0
- data/lib/file-set.rb +42 -0
- data/lib/file-types/css-file.rb +75 -0
- data/lib/file-types/html-file.rb +11 -0
- data/lib/file-types/javascript-file.rb +98 -0
- data/lib/file-types/json-file.rb +14 -0
- data/lib/file-types/nib-file.rb +9 -0
- data/lib/jsdoc.conf +18 -0
- data/lib/jsl.conf +121 -0
- data/lib/project.rb +96 -0
- data/lib/source-file.rb +181 -0
- data/lib/target.rb +96 -0
- data/lib/task.rb +239 -0
- data/lib/tasks/copy-task.rb +21 -0
- data/lib/tasks/css-task.rb +18 -0
- data/lib/tasks/javascript-task.rb +125 -0
- data/lib/tasks/multiple-output-task.rb +134 -0
- data/lib/tasks/nib-task.rb +83 -0
- data/lib/tasks/output-task.rb +73 -0
- data/lib/tasks/single-output-task.rb +83 -0
- data/lib/tasks/test-task.rb +280 -0
- data/lib/test/HtmlTestReporter.js +127 -0
- data/lib/test/Test.js +248 -0
- data/lib/test/TestReporter.js +79 -0
- data/lib/test/TestRunner.js +132 -0
- data/lib/test/browser.rb +97 -0
- data/lib/test/scriptwrapper.html +10 -0
- data/lib/test/unittest.html +127 -0
- data/vendor/Makefile +35 -0
- data/vendor/extconf.rb +3 -0
- data/vendor/jsdoc-extras/plugins/distil-plugin.js +142 -0
- data/vendor/jsdoc-extras/plugins/interface-plugin.js +36 -0
- data/vendor/jsdoc-extras/templates/coherent/allclasses.tmpl +17 -0
- data/vendor/jsdoc-extras/templates/coherent/allfiles.tmpl +53 -0
- data/vendor/jsdoc-extras/templates/coherent/class.tmpl +803 -0
- data/vendor/jsdoc-extras/templates/coherent/index.tmpl +37 -0
- data/vendor/jsdoc-extras/templates/coherent/publish.js +242 -0
- data/vendor/jsdoc-extras/templates/coherent/showdown.js +421 -0
- data/vendor/jsdoc-extras/templates/coherent/static/code-footer.html +3 -0
- data/vendor/jsdoc-extras/templates/coherent/static/code-header.html +7 -0
- data/vendor/jsdoc-extras/templates/coherent/static/default.css +297 -0
- data/vendor/jsdoc-extras/templates/coherent/static/header.html +2 -0
- data/vendor/jsdoc-extras/templates/coherent/static/index.html +19 -0
- data/vendor/jsdoc-extras/templates/coherent/symbol.tmpl +35 -0
- data/vendor/jsdoc-toolkit/README.txt +183 -0
- data/vendor/jsdoc-toolkit/app/frame/Chain.js +102 -0
- data/vendor/jsdoc-toolkit/app/frame/Dumper.js +144 -0
- data/vendor/jsdoc-toolkit/app/frame/Hash.js +84 -0
- data/vendor/jsdoc-toolkit/app/frame/Link.js +171 -0
- data/vendor/jsdoc-toolkit/app/frame/Namespace.js +10 -0
- data/vendor/jsdoc-toolkit/app/frame/Opt.js +134 -0
- data/vendor/jsdoc-toolkit/app/frame/Reflection.js +26 -0
- data/vendor/jsdoc-toolkit/app/frame/String.js +93 -0
- data/vendor/jsdoc-toolkit/app/frame/Testrun.js +129 -0
- data/vendor/jsdoc-toolkit/app/frame.js +33 -0
- data/vendor/jsdoc-toolkit/app/handlers/FOODOC.js +26 -0
- data/vendor/jsdoc-toolkit/app/handlers/XMLDOC/DomReader.js +159 -0
- data/vendor/jsdoc-toolkit/app/handlers/XMLDOC/XMLDoc.js +16 -0
- data/vendor/jsdoc-toolkit/app/handlers/XMLDOC/XMLParse.js +292 -0
- data/vendor/jsdoc-toolkit/app/handlers/XMLDOC.js +26 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/DocComment.js +204 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/DocTag.js +300 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/JsDoc.js +126 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/JsPlate.js +109 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/Lang.js +144 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/Parser.js +144 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/PluginManager.js +33 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/Symbol.js +644 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/SymbolSet.js +241 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/TextStream.js +41 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/Token.js +18 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/TokenReader.js +332 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/TokenStream.js +133 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/Util.js +32 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC/Walker.js +499 -0
- data/vendor/jsdoc-toolkit/app/lib/JSDOC.js +106 -0
- data/vendor/jsdoc-toolkit/app/main.js +129 -0
- data/vendor/jsdoc-toolkit/app/plugins/commentSrcJson.js +20 -0
- data/vendor/jsdoc-toolkit/app/plugins/frameworkPrototype.js +16 -0
- data/vendor/jsdoc-toolkit/app/plugins/functionCall.js +10 -0
- data/vendor/jsdoc-toolkit/app/plugins/publishSrcHilite.js +54 -0
- data/vendor/jsdoc-toolkit/app/plugins/symbolLink.js +10 -0
- data/vendor/jsdoc-toolkit/app/plugins/tagParamConfig.js +31 -0
- data/vendor/jsdoc-toolkit/app/plugins/tagSynonyms.js +43 -0
- data/vendor/jsdoc-toolkit/app/run.js +348 -0
- data/vendor/jsdoc-toolkit/app/t/TestDoc.js +144 -0
- data/vendor/jsdoc-toolkit/app/t/runner.js +13 -0
- data/vendor/jsdoc-toolkit/app/test/addon.js +24 -0
- data/vendor/jsdoc-toolkit/app/test/anon_inner.js +14 -0
- data/vendor/jsdoc-toolkit/app/test/augments.js +31 -0
- data/vendor/jsdoc-toolkit/app/test/augments2.js +26 -0
- data/vendor/jsdoc-toolkit/app/test/borrows.js +46 -0
- data/vendor/jsdoc-toolkit/app/test/borrows2.js +23 -0
- data/vendor/jsdoc-toolkit/app/test/config.js +22 -0
- data/vendor/jsdoc-toolkit/app/test/constructs.js +18 -0
- data/vendor/jsdoc-toolkit/app/test/encoding.js +10 -0
- data/vendor/jsdoc-toolkit/app/test/encoding_other.js +12 -0
- data/vendor/jsdoc-toolkit/app/test/event.js +54 -0
- data/vendor/jsdoc-toolkit/app/test/exports.js +14 -0
- data/vendor/jsdoc-toolkit/app/test/functions_anon.js +39 -0
- data/vendor/jsdoc-toolkit/app/test/functions_nested.js +33 -0
- data/vendor/jsdoc-toolkit/app/test/global.js +13 -0
- data/vendor/jsdoc-toolkit/app/test/globals.js +25 -0
- data/vendor/jsdoc-toolkit/app/test/ignore.js +10 -0
- data/vendor/jsdoc-toolkit/app/test/inner.js +16 -0
- data/vendor/jsdoc-toolkit/app/test/jsdoc_test.js +477 -0
- data/vendor/jsdoc-toolkit/app/test/lend.js +33 -0
- data/vendor/jsdoc-toolkit/app/test/memberof.js +19 -0
- data/vendor/jsdoc-toolkit/app/test/memberof2.js +38 -0
- data/vendor/jsdoc-toolkit/app/test/memberof3.js +33 -0
- data/vendor/jsdoc-toolkit/app/test/memberof_constructor.js +17 -0
- data/vendor/jsdoc-toolkit/app/test/module.js +17 -0
- data/vendor/jsdoc-toolkit/app/test/name.js +19 -0
- data/vendor/jsdoc-toolkit/app/test/namespace_nested.js +23 -0
- data/vendor/jsdoc-toolkit/app/test/nocode.js +13 -0
- data/vendor/jsdoc-toolkit/app/test/oblit_anon.js +20 -0
- data/vendor/jsdoc-toolkit/app/test/overview.js +20 -0
- data/vendor/jsdoc-toolkit/app/test/param_inline.js +37 -0
- data/vendor/jsdoc-toolkit/app/test/params_optional.js +8 -0
- data/vendor/jsdoc-toolkit/app/test/prototype.js +17 -0
- data/vendor/jsdoc-toolkit/app/test/prototype_nested.js +9 -0
- data/vendor/jsdoc-toolkit/app/test/prototype_oblit.js +13 -0
- data/vendor/jsdoc-toolkit/app/test/prototype_oblit_constructor.js +24 -0
- data/vendor/jsdoc-toolkit/app/test/public.js +10 -0
- data/vendor/jsdoc-toolkit/app/test/scripts/code.js +5 -0
- data/vendor/jsdoc-toolkit/app/test/scripts/notcode.txt +5 -0
- data/vendor/jsdoc-toolkit/app/test/shared.js +42 -0
- data/vendor/jsdoc-toolkit/app/test/shared2.js +2 -0
- data/vendor/jsdoc-toolkit/app/test/shortcuts.js +22 -0
- data/vendor/jsdoc-toolkit/app/test/static_this.js +13 -0
- data/vendor/jsdoc-toolkit/app/test/synonyms.js +31 -0
- data/vendor/jsdoc-toolkit/app/test/tosource.js +23 -0
- data/vendor/jsdoc-toolkit/app/test/variable_redefine.js +14 -0
- data/vendor/jsdoc-toolkit/app/test.js +342 -0
- data/vendor/jsdoc-toolkit/changes.txt +116 -0
- data/vendor/jsdoc-toolkit/conf/sample.conf +31 -0
- data/vendor/jsdoc-toolkit/java/build.xml +36 -0
- data/vendor/jsdoc-toolkit/java/build_1.4.xml +36 -0
- data/vendor/jsdoc-toolkit/java/classes/js.jar +0 -0
- data/vendor/jsdoc-toolkit/java/src/JsDebugRun.java +21 -0
- data/vendor/jsdoc-toolkit/java/src/JsRun.java +21 -0
- data/vendor/jsdoc-toolkit/jsdebug.jar +0 -0
- data/vendor/jsdoc-toolkit/jsrun.jar +0 -0
- data/vendor/jsdoc-toolkit/jsrun.sh +53 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/allclasses.tmpl +17 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/allfiles.tmpl +56 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/class.tmpl +649 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/index.tmpl +39 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/publish.js +201 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/static/code-footer.html +3 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/static/code-header.html +14 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/static/default.css +162 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/static/header.html +2 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/static/index.html +19 -0
- data/vendor/jsdoc-toolkit/templates/jsdoc/symbol.tmpl +35 -0
- data/vendor/jsl-0.3.0/src/JavaScriptLintAPI.cpp +333 -0
- data/vendor/jsl-0.3.0/src/JavaScriptLintAPI.h +86 -0
- data/vendor/jsl-0.3.0/src/Makefile.in +375 -0
- data/vendor/jsl-0.3.0/src/Makefile.ref +372 -0
- data/vendor/jsl-0.3.0/src/README.html +826 -0
- data/vendor/jsl-0.3.0/src/SpiderMonkey.rsp +12 -0
- data/vendor/jsl-0.3.0/src/_jsl_online.php +223 -0
- data/vendor/jsl-0.3.0/src/config/AIX4.1.mk +65 -0
- data/vendor/jsl-0.3.0/src/config/AIX4.2.mk +64 -0
- data/vendor/jsl-0.3.0/src/config/AIX4.3.mk +65 -0
- data/vendor/jsl-0.3.0/src/config/Darwin.mk +81 -0
- data/vendor/jsl-0.3.0/src/config/Darwin1.3.mk +81 -0
- data/vendor/jsl-0.3.0/src/config/Darwin1.4.mk +41 -0
- data/vendor/jsl-0.3.0/src/config/Darwin5.2.mk +81 -0
- data/vendor/jsl-0.3.0/src/config/Darwin5.3.mk +81 -0
- data/vendor/jsl-0.3.0/src/config/HP-UXB.10.10.mk +77 -0
- data/vendor/jsl-0.3.0/src/config/HP-UXB.10.20.mk +77 -0
- data/vendor/jsl-0.3.0/src/config/HP-UXB.11.00.mk +80 -0
- data/vendor/jsl-0.3.0/src/config/IRIX.mk +87 -0
- data/vendor/jsl-0.3.0/src/config/IRIX5.3.mk +44 -0
- data/vendor/jsl-0.3.0/src/config/IRIX6.1.mk +44 -0
- data/vendor/jsl-0.3.0/src/config/IRIX6.2.mk +44 -0
- data/vendor/jsl-0.3.0/src/config/IRIX6.3.mk +44 -0
- data/vendor/jsl-0.3.0/src/config/IRIX6.5.mk +44 -0
- data/vendor/jsl-0.3.0/src/config/Linux_All.mk +103 -0
- data/vendor/jsl-0.3.0/src/config/Mac_OS10.0.mk +82 -0
- data/vendor/jsl-0.3.0/src/config/OSF1V4.0.mk +72 -0
- data/vendor/jsl-0.3.0/src/config/OSF1V5.0.mk +69 -0
- data/vendor/jsl-0.3.0/src/config/SunOS4.1.4.mk +101 -0
- data/vendor/jsl-0.3.0/src/config/SunOS5.3.mk +91 -0
- data/vendor/jsl-0.3.0/src/config/SunOS5.4.mk +92 -0
- data/vendor/jsl-0.3.0/src/config/SunOS5.5.1.mk +44 -0
- data/vendor/jsl-0.3.0/src/config/SunOS5.5.mk +87 -0
- data/vendor/jsl-0.3.0/src/config/SunOS5.6.mk +89 -0
- data/vendor/jsl-0.3.0/src/config/SunOS5.7.mk +44 -0
- data/vendor/jsl-0.3.0/src/config/SunOS5.8.mk +44 -0
- data/vendor/jsl-0.3.0/src/config/SunOS5.9.mk +44 -0
- data/vendor/jsl-0.3.0/src/config/WINNT4.0.mk +112 -0
- data/vendor/jsl-0.3.0/src/config/WINNT5.0.mk +112 -0
- data/vendor/jsl-0.3.0/src/config/WINNT5.1.mk +112 -0
- data/vendor/jsl-0.3.0/src/config/WINNT5.2.mk +112 -0
- data/vendor/jsl-0.3.0/src/config/dgux.mk +64 -0
- data/vendor/jsl-0.3.0/src/config.mk +166 -0
- data/vendor/jsl-0.3.0/src/editline/Makefile.ref +144 -0
- data/vendor/jsl-0.3.0/src/editline/README +83 -0
- data/vendor/jsl-0.3.0/src/editline/editline.3 +175 -0
- data/vendor/jsl-0.3.0/src/editline/editline.c +1369 -0
- data/vendor/jsl-0.3.0/src/editline/editline.h +135 -0
- data/vendor/jsl-0.3.0/src/editline/sysunix.c +182 -0
- data/vendor/jsl-0.3.0/src/editline/unix.h +82 -0
- data/vendor/jsl-0.3.0/src/fdlibm/Makefile.in +127 -0
- data/vendor/jsl-0.3.0/src/fdlibm/Makefile.ref +192 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_acos.c +147 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_acosh.c +105 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_asin.c +156 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_atan2.c +165 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_atanh.c +110 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_cosh.c +133 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_exp.c +202 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_fmod.c +184 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_gamma.c +71 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_gamma_r.c +70 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_hypot.c +173 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_j0.c +524 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_j1.c +523 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_jn.c +315 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_lgamma.c +71 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_lgamma_r.c +347 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_log.c +184 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_log10.c +134 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_pow.c +386 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_rem_pio2.c +221 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_remainder.c +120 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_scalb.c +89 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_sinh.c +122 -0
- data/vendor/jsl-0.3.0/src/fdlibm/e_sqrt.c +497 -0
- data/vendor/jsl-0.3.0/src/fdlibm/fdlibm.dsp +160 -0
- data/vendor/jsl-0.3.0/src/fdlibm/fdlibm.h +273 -0
- data/vendor/jsl-0.3.0/src/fdlibm/fdlibm.mak +1453 -0
- data/vendor/jsl-0.3.0/src/fdlibm/fdlibm.mdp +0 -0
- data/vendor/jsl-0.3.0/src/fdlibm/k_cos.c +134 -0
- data/vendor/jsl-0.3.0/src/fdlibm/k_rem_pio2.c +354 -0
- data/vendor/jsl-0.3.0/src/fdlibm/k_sin.c +114 -0
- data/vendor/jsl-0.3.0/src/fdlibm/k_standard.c +785 -0
- data/vendor/jsl-0.3.0/src/fdlibm/k_tan.c +170 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_asinh.c +101 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_atan.c +175 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_cbrt.c +133 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_ceil.c +120 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_copysign.c +72 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_cos.c +118 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_erf.c +356 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_expm1.c +267 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_fabs.c +70 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_finite.c +71 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_floor.c +121 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_frexp.c +99 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_ilogb.c +85 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_isnan.c +74 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_ldexp.c +66 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_lib_version.c +73 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_log1p.c +211 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_logb.c +79 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_matherr.c +64 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_modf.c +132 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_nextafter.c +124 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_rint.c +131 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_scalbn.c +107 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_signgam.c +40 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_significand.c +68 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_sin.c +118 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_tan.c +112 -0
- data/vendor/jsl-0.3.0/src/fdlibm/s_tanh.c +122 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_acos.c +78 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_acosh.c +78 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_asin.c +80 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_atan2.c +79 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_atanh.c +81 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_cosh.c +77 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_exp.c +88 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_fmod.c +78 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_gamma.c +85 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_gamma_r.c +81 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_hypot.c +78 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_j0.c +105 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_j1.c +106 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_jn.c +128 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_lgamma.c +85 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_lgamma_r.c +81 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_log.c +78 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_log10.c +81 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_pow.c +99 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_remainder.c +77 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_scalb.c +95 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_sinh.c +77 -0
- data/vendor/jsl-0.3.0/src/fdlibm/w_sqrt.c +77 -0
- data/vendor/jsl-0.3.0/src/js.c +2447 -0
- data/vendor/jsl-0.3.0/src/js.dsp +420 -0
- data/vendor/jsl-0.3.0/src/js.mak +4025 -0
- data/vendor/jsl-0.3.0/src/js.mdp +0 -0
- data/vendor/jsl-0.3.0/src/js.msg +291 -0
- data/vendor/jsl-0.3.0/src/js.pkg +2 -0
- data/vendor/jsl-0.3.0/src/js3240.rc +79 -0
- data/vendor/jsl-0.3.0/src/jsOS240.def +654 -0
- data/vendor/jsl-0.3.0/src/jsapi.c +4405 -0
- data/vendor/jsl-0.3.0/src/jsapi.h +1856 -0
- data/vendor/jsl-0.3.0/src/jsarena.c +567 -0
- data/vendor/jsl-0.3.0/src/jsarena.h +302 -0
- data/vendor/jsl-0.3.0/src/jsarray.c +1428 -0
- data/vendor/jsl-0.3.0/src/jsarray.h +77 -0
- data/vendor/jsl-0.3.0/src/jsatom.c +927 -0
- data/vendor/jsl-0.3.0/src/jsatom.h +426 -0
- data/vendor/jsl-0.3.0/src/jsbit.h +113 -0
- data/vendor/jsl-0.3.0/src/jsbool.c +220 -0
- data/vendor/jsl-0.3.0/src/jsbool.h +62 -0
- data/vendor/jsl-0.3.0/src/jsclist.h +139 -0
- data/vendor/jsl-0.3.0/src/jscntxt.c +1036 -0
- data/vendor/jsl-0.3.0/src/jscntxt.h +608 -0
- data/vendor/jsl-0.3.0/src/jscompat.h +57 -0
- data/vendor/jsl-0.3.0/src/jsconfig.h +489 -0
- data/vendor/jsl-0.3.0/src/jsconfig.mk +181 -0
- data/vendor/jsl-0.3.0/src/jscpucfg.c +377 -0
- data/vendor/jsl-0.3.0/src/jscpucfg.h +204 -0
- data/vendor/jsl-0.3.0/src/jsdate.c +2238 -0
- data/vendor/jsl-0.3.0/src/jsdate.h +118 -0
- data/vendor/jsl-0.3.0/src/jsdbgapi.c +1260 -0
- data/vendor/jsl-0.3.0/src/jsdbgapi.h +345 -0
- data/vendor/jsl-0.3.0/src/jsdhash.c +763 -0
- data/vendor/jsl-0.3.0/src/jsdhash.h +579 -0
- data/vendor/jsl-0.3.0/src/jsdtoa.c +3135 -0
- data/vendor/jsl-0.3.0/src/jsdtoa.h +130 -0
- data/vendor/jsl-0.3.0/src/jsemit.c +4851 -0
- data/vendor/jsl-0.3.0/src/jsemit.h +576 -0
- data/vendor/jsl-0.3.0/src/jsexn.c +1084 -0
- data/vendor/jsl-0.3.0/src/jsexn.h +102 -0
- data/vendor/jsl-0.3.0/src/jsfile.c +2610 -0
- data/vendor/jsl-0.3.0/src/jsfile.h +50 -0
- data/vendor/jsl-0.3.0/src/jsfile.msg +89 -0
- data/vendor/jsl-0.3.0/src/jsfun.c +2015 -0
- data/vendor/jsl-0.3.0/src/jsfun.h +158 -0
- data/vendor/jsl-0.3.0/src/jsgc.c +1441 -0
- data/vendor/jsl-0.3.0/src/jsgc.h +230 -0
- data/vendor/jsl-0.3.0/src/jshash.c +471 -0
- data/vendor/jsl-0.3.0/src/jshash.h +152 -0
- data/vendor/jsl-0.3.0/src/jsify.pl +485 -0
- data/vendor/jsl-0.3.0/src/jsinterp.c +4797 -0
- data/vendor/jsl-0.3.0/src/jsinterp.h +302 -0
- data/vendor/jsl-0.3.0/src/jsl-test.js +28 -0
- data/vendor/jsl-0.3.0/src/jsl.c +2371 -0
- data/vendor/jsl-0.3.0/src/jsl.conf +127 -0
- data/vendor/jsl-0.3.0/src/jsl.conf.old +124 -0
- data/vendor/jsl-0.3.0/src/jsl.dsp +242 -0
- data/vendor/jsl-0.3.0/src/jsl.dsw +59 -0
- data/vendor/jsl-0.3.0/src/jslibmath.h +290 -0
- data/vendor/jsl-0.3.0/src/jslock.c +1261 -0
- data/vendor/jsl-0.3.0/src/jslock.h +289 -0
- data/vendor/jsl-0.3.0/src/jslocko.asm +59 -0
- data/vendor/jsl-0.3.0/src/jslog2.c +83 -0
- data/vendor/jsl-0.3.0/src/jslong.c +281 -0
- data/vendor/jsl-0.3.0/src/jslong.h +437 -0
- data/vendor/jsl-0.3.0/src/jsmath.c +477 -0
- data/vendor/jsl-0.3.0/src/jsmath.h +55 -0
- data/vendor/jsl-0.3.0/src/jsnum.c +1148 -0
- data/vendor/jsl-0.3.0/src/jsnum.h +257 -0
- data/vendor/jsl-0.3.0/src/jsobj.c +4066 -0
- data/vendor/jsl-0.3.0/src/jsobj.h +475 -0
- data/vendor/jsl-0.3.0/src/jsopcode.c +2730 -0
- data/vendor/jsl-0.3.0/src/jsopcode.h +275 -0
- data/vendor/jsl-0.3.0/src/jsopcode.tbl +344 -0
- data/vendor/jsl-0.3.0/src/jsosdep.h +127 -0
- data/vendor/jsl-0.3.0/src/jsotypes.h +211 -0
- data/vendor/jsl-0.3.0/src/jsparse.c +4438 -0
- data/vendor/jsl-0.3.0/src/jsparse.h +345 -0
- data/vendor/jsl-0.3.0/src/jsprf.c +1212 -0
- data/vendor/jsl-0.3.0/src/jsprf.h +148 -0
- data/vendor/jsl-0.3.0/src/jsprvtd.h +174 -0
- data/vendor/jsl-0.3.0/src/jspubtd.h +586 -0
- data/vendor/jsl-0.3.0/src/jsregexp.c +3831 -0
- data/vendor/jsl-0.3.0/src/jsregexp.h +180 -0
- data/vendor/jsl-0.3.0/src/jsscan.c +1814 -0
- data/vendor/jsl-0.3.0/src/jsscan.h +267 -0
- data/vendor/jsl-0.3.0/src/jsscope.c +1639 -0
- data/vendor/jsl-0.3.0/src/jsscope.h +389 -0
- data/vendor/jsl-0.3.0/src/jsscript.c +1284 -0
- data/vendor/jsl-0.3.0/src/jsscript.h +179 -0
- data/vendor/jsl-0.3.0/src/jsshell.msg +50 -0
- data/vendor/jsl-0.3.0/src/jsstddef.h +83 -0
- data/vendor/jsl-0.3.0/src/jsstr.c +4502 -0
- data/vendor/jsl-0.3.0/src/jsstr.h +448 -0
- data/vendor/jsl-0.3.0/src/jstypes.h +391 -0
- data/vendor/jsl-0.3.0/src/jsutil.c +157 -0
- data/vendor/jsl-0.3.0/src/jsutil.h +75 -0
- data/vendor/jsl-0.3.0/src/jsxdrapi.c +686 -0
- data/vendor/jsl-0.3.0/src/jsxdrapi.h +193 -0
- data/vendor/jsl-0.3.0/src/liveconnect/LiveConnect.dsp +157 -0
- data/vendor/jsl-0.3.0/src/liveconnect/LiveConnectShell.dsp +120 -0
- data/vendor/jsl-0.3.0/src/liveconnect/LiveConnectShell.dsw +44 -0
- data/vendor/jsl-0.3.0/src/liveconnect/Makefile.in +106 -0
- data/vendor/jsl-0.3.0/src/liveconnect/Makefile.ref +169 -0
- data/vendor/jsl-0.3.0/src/liveconnect/README.html +719 -0
- data/vendor/jsl-0.3.0/src/liveconnect/_jni/netscape_javascript_JSException.h +14 -0
- data/vendor/jsl-0.3.0/src/liveconnect/_jni/netscape_javascript_JSObject.h +155 -0
- data/vendor/jsl-0.3.0/src/liveconnect/classes/Makefile.in +89 -0
- data/vendor/jsl-0.3.0/src/liveconnect/classes/Makefile.ref +57 -0
- data/vendor/jsl-0.3.0/src/liveconnect/classes/netscape/Makefile.ref +47 -0
- data/vendor/jsl-0.3.0/src/liveconnect/classes/netscape/javascript/JSException.java +140 -0
- data/vendor/jsl-0.3.0/src/liveconnect/classes/netscape/javascript/JSObject.java +183 -0
- data/vendor/jsl-0.3.0/src/liveconnect/classes/netscape/javascript/JSProxy.java +58 -0
- data/vendor/jsl-0.3.0/src/liveconnect/classes/netscape/javascript/JSRunnable.java +70 -0
- data/vendor/jsl-0.3.0/src/liveconnect/classes/netscape/javascript/JSUtil.java +59 -0
- data/vendor/jsl-0.3.0/src/liveconnect/classes/netscape/javascript/Makefile.ref +53 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/AIX4.1.mk +45 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/AIX4.2.mk +45 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/AIX4.3.mk +50 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/HP-UXB.10.10.mk +43 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/HP-UXB.10.20.mk +43 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/HP-UXB.11.00.mk +43 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/IRIX6.2.mk +43 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/IRIX6.3.mk +43 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/IRIX6.5.mk +43 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/Linux_All.mk +73 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/OSF1V4.0.mk +65 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/OSF1V5.0.mk +62 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/SunOS5.5.1.mk +55 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/SunOS5.6.mk +39 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/SunOS5.7.mk +39 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/SunOS5.8.mk +39 -0
- data/vendor/jsl-0.3.0/src/liveconnect/config/WINNT4.0.mk +53 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj.c +884 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj.msg +98 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_JSObject.c +1379 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_JavaArray.c +481 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_JavaClass.c +749 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_JavaMember.c +186 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_JavaObject.c +1099 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_JavaPackage.c +548 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_array.c +207 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_class.c +765 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_convert.c +954 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_field.c +421 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_hash.c +504 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_hash.h +161 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_method.c +1823 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_nodl.c +1 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_private.h +689 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_simpleapi.c +219 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsj_utils.c +513 -0
- data/vendor/jsl-0.3.0/src/liveconnect/jsjava.h +313 -0
- data/vendor/jsl-0.3.0/src/liveconnect/liveconnect.pkg +3 -0
- data/vendor/jsl-0.3.0/src/liveconnect/netscape_javascript_JSObject.h +155 -0
- data/vendor/jsl-0.3.0/src/liveconnect/nsCLiveconnect.cpp +785 -0
- data/vendor/jsl-0.3.0/src/liveconnect/nsCLiveconnect.h +197 -0
- data/vendor/jsl-0.3.0/src/liveconnect/nsCLiveconnectFactory.cpp +163 -0
- data/vendor/jsl-0.3.0/src/liveconnect/nsCLiveconnectFactory.h +76 -0
- data/vendor/jsl-0.3.0/src/liveconnect/nsILiveconnect.h +195 -0
- data/vendor/jsl-0.3.0/src/liveconnect/nsISecureLiveconnect.h +84 -0
- data/vendor/jsl-0.3.0/src/liveconnect/nsISecurityContext.h +135 -0
- data/vendor/jsl-0.3.0/src/liveconnect/win32.order +6 -0
- data/vendor/jsl-0.3.0/src/lock_SunOS.s +114 -0
- data/vendor/jsl-0.3.0/src/perfect.js +39 -0
- data/vendor/jsl-0.3.0/src/perlconnect/JS.def +6 -0
- data/vendor/jsl-0.3.0/src/perlconnect/JS.dsp +107 -0
- data/vendor/jsl-0.3.0/src/perlconnect/JS.pm +318 -0
- data/vendor/jsl-0.3.0/src/perlconnect/JS.xs +1050 -0
- data/vendor/jsl-0.3.0/src/perlconnect/Makefile.PL +67 -0
- data/vendor/jsl-0.3.0/src/perlconnect/Makefile.ref +152 -0
- data/vendor/jsl-0.3.0/src/perlconnect/PerlConnect.dsp +103 -0
- data/vendor/jsl-0.3.0/src/perlconnect/PerlConnect.dsw +59 -0
- data/vendor/jsl-0.3.0/src/perlconnect/PerlConnect.pm +126 -0
- data/vendor/jsl-0.3.0/src/perlconnect/PerlConnectShell.dsp +89 -0
- data/vendor/jsl-0.3.0/src/perlconnect/README.html +345 -0
- data/vendor/jsl-0.3.0/src/perlconnect/bg.jpg +0 -0
- data/vendor/jsl-0.3.0/src/perlconnect/jsperl.c +1100 -0
- data/vendor/jsl-0.3.0/src/perlconnect/jsperl.h +52 -0
- data/vendor/jsl-0.3.0/src/perlconnect/jsperlbuild.pl +81 -0
- data/vendor/jsl-0.3.0/src/perlconnect/jsperlpvt.h +57 -0
- data/vendor/jsl-0.3.0/src/perlconnect/test.js +73 -0
- data/vendor/jsl-0.3.0/src/perlconnect/test.pl +244 -0
- data/vendor/jsl-0.3.0/src/perlconnect/typemap +121 -0
- data/vendor/jsl-0.3.0/src/plify_jsdhash.sed +31 -0
- data/vendor/jsl-0.3.0/src/prmjtime.c +646 -0
- data/vendor/jsl-0.3.0/src/prmjtime.h +95 -0
- data/vendor/jsl-0.3.0/src/resource.h +15 -0
- data/vendor/jsl-0.3.0/src/rules.mk +193 -0
- data/vendor/jsl-0.3.0/src/win32.order +391 -0
- data/vendor/jsl-0.3.0/tests/conf/always_use_option_explicit.js +4 -0
- data/vendor/jsl-0.3.0/tests/conf/define.js +8 -0
- data/vendor/jsl-0.3.0/tests/conf/jscript_function_extensions-1.js +7 -0
- data/vendor/jsl-0.3.0/tests/conf/jscript_function_extensions-2.js +8 -0
- data/vendor/jsl-0.3.0/tests/conf/jscript_function_extensions-3.js +27 -0
- data/vendor/jsl-0.3.0/tests/conf/jscript_function_extensions-4.js +4 -0
- data/vendor/jsl-0.3.0/tests/conf/lambda_assign_requires_semicolon.js +24 -0
- data/vendor/jsl-0.3.0/tests/conf/legacy_control_comments.js +8 -0
- data/vendor/jsl-0.3.0/tests/control_comments/control_comments.js +33 -0
- data/vendor/jsl-0.3.0/tests/control_comments/declare.js +26 -0
- data/vendor/jsl-0.3.0/tests/control_comments/import-overflow.js +9 -0
- data/vendor/jsl-0.3.0/tests/control_comments/import.js +5 -0
- data/vendor/jsl-0.3.0/tests/control_comments/import2.js +2 -0
- data/vendor/jsl-0.3.0/tests/control_comments/invalid_fallthru.js +13 -0
- data/vendor/jsl-0.3.0/tests/control_comments/option_explicit-with.js +12 -0
- data/vendor/jsl-0.3.0/tests/control_comments/option_explicit.js +64 -0
- data/vendor/jsl-0.3.0/tests/errors/unterminated_comment.js +8 -0
- data/vendor/jsl-0.3.0/tests/html/script_tag_in_js_literal.html +14 -0
- data/vendor/jsl-0.3.0/tests/run_tests.pl +71 -0
- data/vendor/jsl-0.3.0/tests/warnings/ambiguous_else_stmt.js +21 -0
- data/vendor/jsl-0.3.0/tests/warnings/ambiguous_nested_stmt.js +66 -0
- data/vendor/jsl-0.3.0/tests/warnings/ambiguous_newline.js +261 -0
- data/vendor/jsl-0.3.0/tests/warnings/anon_no_return_value.js +26 -0
- data/vendor/jsl-0.3.0/tests/warnings/assign_to_function_call.js +16 -0
- data/vendor/jsl-0.3.0/tests/warnings/block_without_braces.js +13 -0
- data/vendor/jsl-0.3.0/tests/warnings/comma_separated_stmts.js +17 -0
- data/vendor/jsl-0.3.0/tests/warnings/comparison_type_conv.js +44 -0
- data/vendor/jsl-0.3.0/tests/warnings/default_not_at_end.js +15 -0
- data/vendor/jsl-0.3.0/tests/warnings/dup_option_explicit.js +5 -0
- data/vendor/jsl-0.3.0/tests/warnings/duplicate_case_in_switch.js +62 -0
- data/vendor/jsl-0.3.0/tests/warnings/duplicate_formal.js +5 -0
- data/vendor/jsl-0.3.0/tests/warnings/empty_statement.js +29 -0
- data/vendor/jsl-0.3.0/tests/warnings/equal_as_assign.js +7 -0
- data/vendor/jsl-0.3.0/tests/warnings/inc_dec_within_stmt-ignore.js +21 -0
- data/vendor/jsl-0.3.0/tests/warnings/inc_dec_within_stmt.js +63 -0
- data/vendor/jsl-0.3.0/tests/warnings/jsl_cc_not_understood.js +5 -0
- data/vendor/jsl-0.3.0/tests/warnings/leading_decimal_point.js +7 -0
- data/vendor/jsl-0.3.0/tests/warnings/legacy_cc_not_understood.js +9 -0
- data/vendor/jsl-0.3.0/tests/warnings/meaningless_block.js +12 -0
- data/vendor/jsl-0.3.0/tests/warnings/misplaced_regex.js +20 -0
- data/vendor/jsl-0.3.0/tests/warnings/missing_break.js +87 -0
- data/vendor/jsl-0.3.0/tests/warnings/missing_break_for_last_case.js +19 -0
- data/vendor/jsl-0.3.0/tests/warnings/missing_default_case.js +51 -0
- data/vendor/jsl-0.3.0/tests/warnings/missing_option_explicit.js +5 -0
- data/vendor/jsl-0.3.0/tests/warnings/missing_semicolon.js +19 -0
- data/vendor/jsl-0.3.0/tests/warnings/multiple_plus_minus.js +10 -0
- data/vendor/jsl-0.3.0/tests/warnings/nested_comment.js +6 -0
- data/vendor/jsl-0.3.0/tests/warnings/no_return_value.js +25 -0
- data/vendor/jsl-0.3.0/tests/warnings/octal_number.js +5 -0
- data/vendor/jsl-0.3.0/tests/warnings/parseint_missing_radix.js +15 -0
- data/vendor/jsl-0.3.0/tests/warnings/partial_option_explicit.js +5 -0
- data/vendor/jsl-0.3.0/tests/warnings/redeclared_var.js +10 -0
- data/vendor/jsl-0.3.0/tests/warnings/spidermonkey/bad_backref.js +5 -0
- data/vendor/jsl-0.3.0/tests/warnings/spidermonkey/deprecated_usage.js +11 -0
- data/vendor/jsl-0.3.0/tests/warnings/spidermonkey/invalid_backref.js +5 -0
- data/vendor/jsl-0.3.0/tests/warnings/spidermonkey/trailing_comma.js +5 -0
- data/vendor/jsl-0.3.0/tests/warnings/trailing_comma_in_array.js +8 -0
- data/vendor/jsl-0.3.0/tests/warnings/trailing_decimal_point.js +7 -0
- data/vendor/jsl-0.3.0/tests/warnings/unreachable_code.js +29 -0
- data/vendor/jsl-0.3.0/tests/warnings/use_of_label.js +19 -0
- data/vendor/jsl-0.3.0/tests/warnings/useless_assign.js +20 -0
- data/vendor/jsl-0.3.0/tests/warnings/useless_comparison.js +55 -0
- data/vendor/jsl-0.3.0/tests/warnings/useless_void.js +6 -0
- data/vendor/jsl-0.3.0/tests/warnings/var_hides_arg.js +4 -0
- data/vendor/jsl-0.3.0/tests/warnings/with_statement.js +7 -0
- data/vendor/yuicompressor-2.4.2.jar +0 -0
- metadata +605 -0
data/lib/configurable.rb
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
module Kernel
|
|
2
|
+
|
|
3
|
+
def Boolean(string)
|
|
4
|
+
return true if string == true || string =~ /^true$/i
|
|
5
|
+
return false if string == false || string.nil? || string =~ /^false$/i
|
|
6
|
+
raise ArgumentError.new("invalid value for Boolean: \"#{string}\"")
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class Configurable
|
|
14
|
+
attr_reader :options
|
|
15
|
+
|
|
16
|
+
@@options= {}
|
|
17
|
+
|
|
18
|
+
def get_options(settings=nil, parent=nil)
|
|
19
|
+
keys= @@options.keys
|
|
20
|
+
values= @@options.map { |k,v| v[:value] }
|
|
21
|
+
|
|
22
|
+
s= Struct.new(*keys).new(*values)
|
|
23
|
+
return s if !settings
|
|
24
|
+
|
|
25
|
+
setting_keys= settings.keys.map { |key| key.to_s }
|
|
26
|
+
|
|
27
|
+
@@options.each { |key, value|
|
|
28
|
+
|
|
29
|
+
intersect= value[:aliases] & setting_keys
|
|
30
|
+
next if !parent && intersect.empty?
|
|
31
|
+
|
|
32
|
+
if (intersect.empty?)
|
|
33
|
+
s[key]= parent[key]
|
|
34
|
+
next
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
if (intersect.length>1)
|
|
38
|
+
raise ArgumentError, "Multiple variants for #{key.to_s} defined: #{intersect.join(", ")}"
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
setting_key= intersect[0]
|
|
42
|
+
setting_value= settings[setting_key]
|
|
43
|
+
settings.delete(setting_key)
|
|
44
|
+
|
|
45
|
+
# decide if any type conversions are needed...
|
|
46
|
+
type= value[:type]
|
|
47
|
+
setting_value= case
|
|
48
|
+
when FalseClass==type || TrueClass==type
|
|
49
|
+
Boolean(setting_value)
|
|
50
|
+
when Array==type
|
|
51
|
+
setting_value.is_a?(String) ? setting_value.split(/\s*,\s*/) : setting_value
|
|
52
|
+
when Fixnum==type
|
|
53
|
+
setting_value.to_i
|
|
54
|
+
when NilClass==type
|
|
55
|
+
setting_value
|
|
56
|
+
when String==type
|
|
57
|
+
setting_value.to_s
|
|
58
|
+
else
|
|
59
|
+
type.new(setting_value)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
s[key]= setting_value
|
|
63
|
+
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
s
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
# option name, [type], [default], [options]
|
|
70
|
+
def self.option(name, *rest)
|
|
71
|
+
|
|
72
|
+
name_string= name.to_s
|
|
73
|
+
|
|
74
|
+
info= {
|
|
75
|
+
:aliases=>[name_string, name_string.gsub('_', '-'), name_string.gsub('_', ' ')].uniq
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
arg= rest.shift
|
|
79
|
+
|
|
80
|
+
if (arg.is_a?(Class))
|
|
81
|
+
info[:type]= arg
|
|
82
|
+
info[:value]= nil #arg.new
|
|
83
|
+
arg= rest.shift
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
if (!arg.is_a?(Hash))
|
|
87
|
+
info[:value]= arg
|
|
88
|
+
info[:type]= arg.class if !info.key?(:type)
|
|
89
|
+
arg= rest.shift
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
# handle named arguments
|
|
93
|
+
if (arg.is_a?(Hash))
|
|
94
|
+
info.merge!(arg)
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
@@options[name]= info
|
|
98
|
+
|
|
99
|
+
Configurable.send :define_method, name do
|
|
100
|
+
@options[name]
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
def self.option_alias(name, name_alias)
|
|
106
|
+
if (!@@options.key?(name))
|
|
107
|
+
raise ArgumentError, "No such option: #{name}"
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
name_alias= name_alias.to_s
|
|
111
|
+
|
|
112
|
+
@@options[name][:aliases].concat([name_alias,
|
|
113
|
+
name_alias.to_s.gsub('_', '-'),
|
|
114
|
+
name_alias.to_s.gsub('_', ' ')].uniq)
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
def initialize(options={}, parent=nil)
|
|
118
|
+
if (parent.is_a?(Configurable))
|
|
119
|
+
parent_options= parent.options
|
|
120
|
+
end
|
|
121
|
+
@options= get_options(options, parent_options)
|
|
122
|
+
@extras= options
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
end
|
data/lib/file-set.rb
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
require "#{$script_dir}/source-file"
|
|
2
|
+
|
|
3
|
+
class FileSet
|
|
4
|
+
include Enumerable
|
|
5
|
+
attr_reader :files
|
|
6
|
+
|
|
7
|
+
def initialize(set)
|
|
8
|
+
@files= []
|
|
9
|
+
case
|
|
10
|
+
when (set.is_a?(String))
|
|
11
|
+
include_file(set)
|
|
12
|
+
when (set.is_a?(Array))
|
|
13
|
+
set.each { |f| include_file(f) }
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def include_file(file)
|
|
18
|
+
full_path= File.expand_path(file)
|
|
19
|
+
|
|
20
|
+
if File.directory?(full_path)
|
|
21
|
+
Dir.foreach(full_path) { |f|
|
|
22
|
+
next if ('.'==f[/^\./])
|
|
23
|
+
include_file(File.join(full_path, f))
|
|
24
|
+
}
|
|
25
|
+
else
|
|
26
|
+
if (File.exists?(full_path))
|
|
27
|
+
source_file= SourceFile.from_path(full_path)
|
|
28
|
+
else
|
|
29
|
+
source_file= Target.current.find_file(file)
|
|
30
|
+
return if (!source_file)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
return if (@files.include?(source_file))
|
|
34
|
+
@files << source_file
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def each
|
|
39
|
+
@files.each { |f| yield f }
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
end
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
class CssFile < SourceFile
|
|
2
|
+
|
|
3
|
+
def self.extension
|
|
4
|
+
".css"
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
def can_embed_as_content
|
|
8
|
+
true
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def minify_content_type
|
|
12
|
+
"css"
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def content
|
|
16
|
+
return @content if (@content && @root_folder==@@root_folder)
|
|
17
|
+
|
|
18
|
+
# Remember the value of the class root_folder variable, because it changes
|
|
19
|
+
# where files are generated relative to.
|
|
20
|
+
@root_folder= @@root_folder
|
|
21
|
+
|
|
22
|
+
buffer= File.read(@full_path)
|
|
23
|
+
# Replace all ' (single quotes) with " (double quotes) in
|
|
24
|
+
# order to fix a problem with the background url regexp
|
|
25
|
+
buffer.gsub!(/\'/,'"')
|
|
26
|
+
# Force a newline after a rule terminating ; (semi-colon)
|
|
27
|
+
# in order to fix a problem with the background url regexp
|
|
28
|
+
buffer.gsub!(/;(\n|\r)*/, ";\n")
|
|
29
|
+
|
|
30
|
+
# Rewrites the 'url("...")' rules to a relative path
|
|
31
|
+
# based on the location of the new concatenated CSS file.
|
|
32
|
+
line_num=0
|
|
33
|
+
|
|
34
|
+
lines= buffer.split("\n")
|
|
35
|
+
|
|
36
|
+
lines.each { |line|
|
|
37
|
+
|
|
38
|
+
line_num+=1
|
|
39
|
+
|
|
40
|
+
line.gsub!(/@import\s+url\("?(.*\.css)"?\)/) { |match|
|
|
41
|
+
css_file= File.join(@parent_folder, $1)
|
|
42
|
+
|
|
43
|
+
if (!File.exists?(css_file))
|
|
44
|
+
error "imported CSS file not found: #{$1}", line_num
|
|
45
|
+
# leave the @import rule in place
|
|
46
|
+
match
|
|
47
|
+
else
|
|
48
|
+
dependency= SourceFile.from_path(css_file)
|
|
49
|
+
@dependencies << dependency
|
|
50
|
+
end
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
line.gsub!(/url\("?(.*\.(jpg|png|gif))"?\)/) { |match|
|
|
54
|
+
image_file= File.join(@parent_folder, $1)
|
|
55
|
+
|
|
56
|
+
if (!File.exists?(image_file))
|
|
57
|
+
warning "resource not found: #{$1} (#{image_file})", line_num
|
|
58
|
+
"url(\"#{$1}\")"
|
|
59
|
+
else
|
|
60
|
+
asset= SourceFile.from_path(image_file)
|
|
61
|
+
@assets << asset
|
|
62
|
+
# dependency.dependencies
|
|
63
|
+
"url(\"{{FILEREF(#{asset})}}\")"
|
|
64
|
+
end
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
@content= lines.join("\n")
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
def debug_content_relative_to_destination(destination)
|
|
72
|
+
"@import url(\"#{self.relative_to_folder(destination)}\");\n"
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
end
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
$jsl_import_regex= /\/\*jsl:import\s+([^\*]*)\*\//
|
|
2
|
+
$include_regex= /NIB\.asset\(['"]([^)]+)['"]\)/
|
|
3
|
+
|
|
4
|
+
class JavascriptFile < SourceFile
|
|
5
|
+
|
|
6
|
+
def self.extension
|
|
7
|
+
".js"
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def can_embed_as_content
|
|
11
|
+
true
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def minify_content_type
|
|
15
|
+
"js"
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def content
|
|
19
|
+
return @content if (@content && @root_folder==@@root_folder)
|
|
20
|
+
|
|
21
|
+
# Remember the value of the class root_folder variable, because it changes
|
|
22
|
+
# where files are generated relative to.
|
|
23
|
+
@root_folder= @@root_folder
|
|
24
|
+
|
|
25
|
+
@dependencies= []
|
|
26
|
+
content= File.read(@full_path).split("\n")
|
|
27
|
+
|
|
28
|
+
line_num=0
|
|
29
|
+
|
|
30
|
+
content.each { |line|
|
|
31
|
+
|
|
32
|
+
line_num+=1
|
|
33
|
+
|
|
34
|
+
# handle dependencies
|
|
35
|
+
line.gsub!($jsl_import_regex) { |match|
|
|
36
|
+
|
|
37
|
+
import_file= File.expand_path(File.join(@parent_folder, $1))
|
|
38
|
+
|
|
39
|
+
if (File.exists?(import_file))
|
|
40
|
+
dependency= SourceFile.from_path(import_file)
|
|
41
|
+
@dependencies << dependency
|
|
42
|
+
else
|
|
43
|
+
dependency= Target.current.find_file($1)
|
|
44
|
+
if (dependency)
|
|
45
|
+
@dependencies << dependency
|
|
46
|
+
else
|
|
47
|
+
error "Missing import file: #{$1}", line_num
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
# replace jsl import with empty string
|
|
52
|
+
""
|
|
53
|
+
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
line.gsub!($include_regex) { |match|
|
|
57
|
+
|
|
58
|
+
import_file= File.expand_path(File.join(@parent_folder, $1))
|
|
59
|
+
|
|
60
|
+
if (!File.exists?(import_file))
|
|
61
|
+
error "Missing import file: #{$1}", line_num
|
|
62
|
+
"NIB.asset('#{$1}')"
|
|
63
|
+
else
|
|
64
|
+
asset= SourceFile.from_path(import_file)
|
|
65
|
+
@assets << asset
|
|
66
|
+
if (asset.can_embed_as_content)
|
|
67
|
+
"NIB.asset('{{FILEREF(#{asset})}}','{{CONTENTREF(#{asset})}}')"
|
|
68
|
+
else
|
|
69
|
+
"NIB.asset('{{FILEREF(#{asset})}}')"
|
|
70
|
+
# include_content= asset.content.gsub("\\", "\\\\").gsub(/>\s+</, "><").gsub("\n", "\\n").gsub("\"", "\\\"").gsub("'", "\\\\'")
|
|
71
|
+
# "INC('{{FILEREF(#{asset})}}','{{CONTENTREF(#{asset})}}')"
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
# return the array of dependencies
|
|
80
|
+
@content= content.join("\n") + "\n"
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
def content_relative_to_destination(destination)
|
|
84
|
+
relative= super(destination)
|
|
85
|
+
relative.gsub(/\{\{CONTENTREF\(([^)]*)\)\}\}/) { |match|
|
|
86
|
+
file= SourceFile.from_path($1)
|
|
87
|
+
included_content= file.content_relative_to_destination(destination)
|
|
88
|
+
included_content= file.minify_content(included_content)
|
|
89
|
+
included_content.gsub("\\", "\\\\").gsub(/>\s+</, "><").gsub("\n", "\\n").gsub("\"", "\\\"").gsub("'", "\\\\'")
|
|
90
|
+
}
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
def debug_content_relative_to_destination(destination)
|
|
94
|
+
path= @file_path ? @file_path : self.relative_to_folder(destination)
|
|
95
|
+
"loadScript(\"#{path}\");\n"
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
end
|
data/lib/jsdoc.conf
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
// source files to use
|
|
3
|
+
_: [@DOC_FILES@],
|
|
4
|
+
|
|
5
|
+
// document all functions, even uncommented ones
|
|
6
|
+
a: true,
|
|
7
|
+
|
|
8
|
+
// including those marked @private
|
|
9
|
+
p: true,
|
|
10
|
+
|
|
11
|
+
// use this directory as the output directory
|
|
12
|
+
d: "@DOC_OUTPUT_DIR@",
|
|
13
|
+
|
|
14
|
+
// use this template
|
|
15
|
+
t: "@DOC_TEMPLATE_DIR@",
|
|
16
|
+
|
|
17
|
+
plugins: "@DOC_PLUGINS_DIR@"
|
|
18
|
+
}
|
data/lib/jsl.conf
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
#
|
|
2
|
+
# JavaScript Lint 0.2.4 Configuration File
|
|
3
|
+
#
|
|
4
|
+
# This file can be used to lint a collection of scripts, or to enable
|
|
5
|
+
# or disable warnings for scripts that are linted via the command line.
|
|
6
|
+
#
|
|
7
|
+
|
|
8
|
+
### Warnings
|
|
9
|
+
# Enable or disable warnings based on requirements.
|
|
10
|
+
# Use "+WarningName" to display or "-WarningName" to suppress.
|
|
11
|
+
#
|
|
12
|
+
+no_return_value # function {0} does not always return a value
|
|
13
|
+
+duplicate_formal # duplicate formal argument {0}
|
|
14
|
+
+equal_as_assign # test for equality (==) mistyped as assignment (=)?{0}
|
|
15
|
+
+var_hides_arg # variable {0} hides argument
|
|
16
|
+
+redeclared_var # redeclaration of {0} {1}
|
|
17
|
+
+anon_no_return_value # anonymous function does not always return a value
|
|
18
|
+
+missing_semicolon # missing semicolon
|
|
19
|
+
+meaningless_block # meaningless block; curly braces have no impact
|
|
20
|
+
+comma_separated_stmts # multiple statements separated by commas (use semicolons?)
|
|
21
|
+
+unreachable_code # unreachable code
|
|
22
|
+
+missing_break # missing break statement
|
|
23
|
+
+missing_break_for_last_case # missing break statement for last case in switch
|
|
24
|
+
+comparison_type_conv # comparisons against null, 0, or an empty string allowing implicit type conversion (use === or !==)
|
|
25
|
+
-inc_dec_within_stmt # increment (++) and decrement (--) operators used as part of greater statement
|
|
26
|
+
+useless_void # use of the void type may be unnecessary (void is always undefined)
|
|
27
|
+
+multiple_plus_minus # unknown order of operations for successive plus (e.g. x+++y) or minus (e.g. x---y) signs
|
|
28
|
+
+use_of_label # use of label
|
|
29
|
+
-block_without_braces # block statement without curly braces
|
|
30
|
+
+leading_decimal_point # leading decimal point may indicate a number or an object member
|
|
31
|
+
+trailing_decimal_point # trailing decimal point may indicate a number or an object member
|
|
32
|
+
+octal_number # leading zeros make an octal number
|
|
33
|
+
+nested_comment # nested comment
|
|
34
|
+
-misplaced_regex # regular expressions should be preceded by a left parenthesis, assignment, colon, or comma
|
|
35
|
+
+ambiguous_newline # unexpected end of line; it is ambiguous whether these lines are part of the same statement
|
|
36
|
+
+empty_statement # empty statement or extra semicolon
|
|
37
|
+
-missing_option_explicit # the "option explicit" control comment is missing
|
|
38
|
+
+partial_option_explicit # the "option explicit" control comment, if used, must be in the first script tag
|
|
39
|
+
+dup_option_explicit # duplicate "option explicit" control comment
|
|
40
|
+
+useless_assign # useless assignment
|
|
41
|
+
-ambiguous_nested_stmt # block statements containing block statements should use curly braces to resolve ambiguity
|
|
42
|
+
+ambiguous_else_stmt # the else statement could be matched with one of multiple if statements (use curly braces to indicate intent)
|
|
43
|
+
+missing_default_case # missing default case in switch statement
|
|
44
|
+
+duplicate_case_in_switch # duplicate case in switch statements
|
|
45
|
+
+default_not_at_end # the default case is not at the end of the switch statement
|
|
46
|
+
+legacy_cc_not_understood # couldn't understand control comment using /*@keyword@*/ syntax
|
|
47
|
+
+jsl_cc_not_understood # couldn't understand control comment using /*jsl:keyword*/ syntax
|
|
48
|
+
+useless_comparison # useless comparison; comparing identical expressions
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
### Output format
|
|
52
|
+
# Customize the format of the error message.
|
|
53
|
+
# __FILE__ indicates current file path
|
|
54
|
+
# __FILENAME__ indicates current file name
|
|
55
|
+
# __LINE__ indicates current line
|
|
56
|
+
# __ERROR__ indicates error message
|
|
57
|
+
#
|
|
58
|
+
# Visual Studio syntax (default):
|
|
59
|
+
#+output-format __FILE__(__LINE__): __ERROR__
|
|
60
|
+
# Alternative syntax:
|
|
61
|
+
+output-format __FILE__:__LINE__: __ERROR__
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
### Context
|
|
65
|
+
# Show the in-line position of the error.
|
|
66
|
+
# Use "+context" to display or "-context" to suppress.
|
|
67
|
+
#
|
|
68
|
+
+context
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
### Semicolons
|
|
72
|
+
# By default, assignments of an anonymous function to a variable or
|
|
73
|
+
# property (such as a function prototype) must be followed by a semicolon.
|
|
74
|
+
#
|
|
75
|
+
-lambda_assign_requires_semicolon
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
### Control Comments
|
|
79
|
+
# Both JavaScript Lint and the JScript interpreter confuse each other with the syntax for
|
|
80
|
+
# the /*@keyword@*/ control comments and JScript conditional comments. (The latter is
|
|
81
|
+
# enabled in JScript with @cc_on@). The /*jsl:keyword*/ syntax is preferred for this reason,
|
|
82
|
+
# although legacy control comments are enabled by default for backward compatibility.
|
|
83
|
+
#
|
|
84
|
+
-legacy_control_comments
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
### Defining identifiers
|
|
88
|
+
# By default, "option explicit" is enabled on a per-file basis.
|
|
89
|
+
# To enable this for all files, use "+always_use_option_explicit"
|
|
90
|
+
+always_use_option_explicit
|
|
91
|
+
|
|
92
|
+
# Define certain identifiers of which the lint is not aware.
|
|
93
|
+
# (Use this in conjunction with the "undeclared identifier" warning.)
|
|
94
|
+
#
|
|
95
|
+
# Common uses for webpages might be:
|
|
96
|
+
+define window
|
|
97
|
+
+define document
|
|
98
|
+
+define console
|
|
99
|
+
+define XMLHttpRequest
|
|
100
|
+
+define ActiveXObject
|
|
101
|
+
+define arguments
|
|
102
|
+
+define navigator
|
|
103
|
+
+define Image
|
|
104
|
+
|
|
105
|
+
# # Coherent library
|
|
106
|
+
# +define coherent
|
|
107
|
+
#
|
|
108
|
+
# # Can't import Prototype because it contains _tons_ of errors (v1.5)
|
|
109
|
+
# # +define Prototype
|
|
110
|
+
# # +define Ajax
|
|
111
|
+
# +define Event
|
|
112
|
+
# +define Element
|
|
113
|
+
# +define XHR
|
|
114
|
+
|
|
115
|
+
### Files
|
|
116
|
+
# Specify which files to lint
|
|
117
|
+
# Use "+recurse" to enable recursion (disabled by default).
|
|
118
|
+
# To add a set of files, use "+process FileName", "+process Folder\Path\*.js",
|
|
119
|
+
# or "+process Folder\Path\*.htm".
|
|
120
|
+
#
|
|
121
|
+
#+process jsl-test.js
|
data/lib/project.rb
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
require "#{$script_dir}/target"
|
|
2
|
+
|
|
3
|
+
require 'yaml'
|
|
4
|
+
|
|
5
|
+
class Project < Configurable
|
|
6
|
+
|
|
7
|
+
option :tasks, Array
|
|
8
|
+
option_alias :tasks, :task
|
|
9
|
+
|
|
10
|
+
option :version, String
|
|
11
|
+
option :project_name, String
|
|
12
|
+
option_alias :project_name, :name
|
|
13
|
+
|
|
14
|
+
option :targets, Array
|
|
15
|
+
option_alias :targets, :target
|
|
16
|
+
|
|
17
|
+
option :mode
|
|
18
|
+
option :ignore_warnings, false
|
|
19
|
+
|
|
20
|
+
option :external_projects, Array.new
|
|
21
|
+
|
|
22
|
+
def initialize(project_file, settings)
|
|
23
|
+
@project_file= File.expand_path(project_file)
|
|
24
|
+
Dir.chdir(File.dirname(@project_file))
|
|
25
|
+
|
|
26
|
+
project_info= YAML.load_file(@project_file)
|
|
27
|
+
settings.merge!(project_info)
|
|
28
|
+
super(settings)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
def build_external_projects
|
|
32
|
+
|
|
33
|
+
# Handle external projects
|
|
34
|
+
external_projects.map! { |project|
|
|
35
|
+
|
|
36
|
+
if !project.is_a?(String)
|
|
37
|
+
project
|
|
38
|
+
else
|
|
39
|
+
project={
|
|
40
|
+
"folder"=>project,
|
|
41
|
+
"build"=>"distil",
|
|
42
|
+
"include"=>File.join(project, "build")
|
|
43
|
+
}
|
|
44
|
+
end
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
external_projects.each { |project|
|
|
48
|
+
|
|
49
|
+
if (project.key?("folder") && !File.directory?(project["folder"]))
|
|
50
|
+
puts "#{@project_file}: external project folder missing: #{project["folder"]}"
|
|
51
|
+
exit
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
if (!project.key?("include"))
|
|
55
|
+
project["include"]= File.join(project["folder"], "build")
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
build= project["build"] || "distil"
|
|
59
|
+
wd= Dir.pwd
|
|
60
|
+
Dir.chdir(project["folder"]||project["include"])
|
|
61
|
+
# pass along mode flag to sub-projects
|
|
62
|
+
if (mode)
|
|
63
|
+
build= "#{build} -mode=#{mode}"
|
|
64
|
+
end
|
|
65
|
+
system(build)
|
|
66
|
+
Dir.chdir(wd)
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
def build_targets
|
|
72
|
+
|
|
73
|
+
@extras.each { |section, value|
|
|
74
|
+
|
|
75
|
+
next if (options.targets && !options.targets.include?(section))
|
|
76
|
+
next if ((!options.targets || !options.targets.include?(section)) &&
|
|
77
|
+
value.is_a?(Hash) && value.has_key?("enabled") && !value["enabled"])
|
|
78
|
+
|
|
79
|
+
puts
|
|
80
|
+
puts "#{project_name}-#{section}:"
|
|
81
|
+
puts
|
|
82
|
+
|
|
83
|
+
task= Task.by_name(section)
|
|
84
|
+
if (task)
|
|
85
|
+
new_value= Hash.new
|
|
86
|
+
new_value[section]= value
|
|
87
|
+
value= new_value
|
|
88
|
+
section= "all"
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
target= Target.new(section, value, self)
|
|
92
|
+
target.process_files
|
|
93
|
+
target.finish
|
|
94
|
+
}
|
|
95
|
+
end
|
|
96
|
+
end
|