From 1e9ee73bfeeaec6268702ff01be6e7970c2daa92 Mon Sep 17 00:00:00 2001 From: Thulinma Date: Thu, 1 Oct 2015 13:48:51 +0200 Subject: [PATCH 1/2] Added Util::stringToBool utility function. --- lib/bitfields.cpp | 16 ++++++++++++++++ lib/bitfields.h | 5 ++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/lib/bitfields.cpp b/lib/bitfields.cpp index 6813299c..10bc7e3b 100644 --- a/lib/bitfields.cpp +++ b/lib/bitfields.cpp @@ -1,4 +1,5 @@ #include "bitfields.h" +#include /// Takes a pointer, offset bitcount and data bitcount, returning the unsigned int read from the givens. /// offsetBits may be > 7, in which case offsetBits / 8 is added to the pointer automatically. @@ -62,3 +63,18 @@ void Bit::setMSB(char * pointer, unsigned int offsetBits, unsigned int dataBits, }//Loop until we run out of dataBits, then return the result } +/// Parses a string reference to a boolean. +/// Returns true if the string, with whitespace removed and converted to lowercase, prefix-matches any of: "1", "yes", "true", "cont". +/// Returns false otherwise. +bool Util::stringToBool(std::string & str){ + std::string tmp; + tmp.reserve(4); + for (unsigned int i = 0; i < str.size() && tmp.size() < 4; ++i){ + if (!::isspace(str[i])){ + tmp.push_back((char)tolower(str[i])); + } + } + return (strncmp(tmp.c_str(), "1", 1) == 0 || strncmp(tmp.c_str(), "yes", 3) == 0 || strncmp(tmp.c_str(), "true", 4) == 0 || strncmp(tmp.c_str(), "cont", 4) == 0); +} + + diff --git a/lib/bitfields.h b/lib/bitfields.h index 7af1d8a6..bf57770b 100644 --- a/lib/bitfields.h +++ b/lib/bitfields.h @@ -1,5 +1,8 @@ +#include - +namespace Util{ + bool stringToBool(std::string & str); +} namespace Bit{ //bitfield getters From 51e6a5d1e91f259fc4c408cfba00dd3c85fbffec Mon Sep 17 00:00:00 2001 From: Thulinma Date: Thu, 1 Oct 2015 13:53:33 +0200 Subject: [PATCH 2/2] Trigger documentation in browser interface. --- lsp/minified.js | 175 ++++++++++++++++++++++++------------------------ lsp/mist.js | 72 ++++++++++---------- 2 files changed, 125 insertions(+), 122 deletions(-) diff --git a/lsp/minified.js b/lsp/minified.js index 635efefe..1a653a15 100644 --- a/lsp/minified.js +++ b/lsp/minified.js @@ -1,11 +1,11 @@ -var MD5=function(a){function c(a,c){var b,d,i,h,e;i=a&2147483648;h=c&2147483648;b=a&1073741824;d=c&1073741824;e=(a&1073741823)+(c&1073741823);return b&d?e^2147483648^i^h:b|d?e&1073741824?e^3221225472^i^h:e^1073741824^i^h:e^i^h}function b(a,b,d,i,h,e,f){a=c(a,c(c(b&d|~b&i,h),f));return c(a<>>32-e,b)}function d(a,b,d,i,h,e,f){a=c(a,c(c(b&i|d&~i,h),f));return c(a<>>32-e,b)}function g(a,b,d,i,h,e,f){a=c(a,c(c(b^d^i,h),f));return c(a<>>32-e,b)}function k(a,b,d,i,h,e,f){a=c(a,c(c(d^(b|~i), -h),f));return c(a<>>32-e,b)}function m(a){var b="",c="",d;for(d=0;3>=d;d++)c=a>>>8*d&255,c="0"+c.toString(16),b+=c.substr(c.length-2,2);return b}var e=[],r,o,i,v,h,l,j,f,e=a.replace(/\r\n/g,"\n"),a="";for(r=0;ro?a+=String.fromCharCode(o):(127o?a+=String.fromCharCode(o>>6|192):(a+=String.fromCharCode(o>>12|224),a+=String.fromCharCode(o>>6&63|128)),a+=String.fromCharCode(o&63|128));e=a;a=e.length;r=a+8;o=16*((r-r%64)/64+1);i=Array(o-1);for(h=v=0;h>>29;e=i;h=1732584193;l=4023233417;j=2562383102;f=271733878;for(a=0;ab?1*d:a .menu"),secondary_menu:$("nav.secondary_menu"),main:$("main"),connection:{status:$("#connection"),user_and_host:$("#user_and_host"),msg:$("#message")}};UI.buildMenu();UI.stored.getOpts();if(location.hash){var a=location.hash.substring(1).split("@")[0].split("&");mist.user.name=a[0];a[1]&&(mist.user.host=a[1])}mist.send(function(){$(window).trigger("hashchange")},{},{timeout:5,hide:!0})}); +var MD5=function(a){function c(a,c){var b,d,i,h,e;i=a&2147483648;h=c&2147483648;b=a&1073741824;d=c&1073741824;e=(a&1073741823)+(c&1073741823);return b&d?e^2147483648^i^h:b|d?e&1073741824?e^3221225472^i^h:e^1073741824^i^h:e^i^h}function b(a,b,d,i,h,e,f){a=c(a,c(c(b&d|~b&i,h),f));return c(a<>>32-e,b)}function d(a,b,d,i,h,e,f){a=c(a,c(c(b&i|d&~i,h),f));return c(a<>>32-e,b)}function g(a,b,d,i,h,e,f){a=c(a,c(c(b^d^i,h),f));return c(a<>>32-e,b)}function j(a,b,d,i,h,e,f){a=c(a,c(c(d^(b|~i), +h),f));return c(a<>>32-e,b)}function n(a){var b="",c="",d;for(d=0;3>=d;d++)c=a>>>8*d&255,c="0"+c.toString(16),b+=c.substr(c.length-2,2);return b}var e=[],r,o,i,v,h,l,k,f,e=a.replace(/\r\n/g,"\n"),a="";for(r=0;ro?a+=String.fromCharCode(o):(127o?a+=String.fromCharCode(o>>6|192):(a+=String.fromCharCode(o>>12|224),a+=String.fromCharCode(o>>6&63|128)),a+=String.fromCharCode(o&63|128));e=a;a=e.length;r=a+8;o=16*((r-r%64)/64+1);i=Array(o-1);for(h=v=0;h>>29;e=i;h=1732584193;l=4023233417;k=2562383102;f=271733878;for(a=0;ab?1*d:a .menu"),secondary_menu:$("nav.secondary_menu"),main:$("main"),connection:{status:$("#connection"),user_and_host:$("#user_and_host"),msg:$("#message")}};UI.buildMenu();UI.stored.getOpts();if(location.hash){var a=location.hash.substring(1).split("@")[0].split("&");mist.user.name=a[0];a[1]&&(mist.user.host=a[1])}mist.send(function(){$(window).trigger("hashchange")},{},{timeout:5,hide:!0})}); $(window).on("hashchange",function(){var a=location.hash.substring(1).split("@");a[1]||(a[1]="");a=a[1].split("&");""==a[0]&&(a[0]="Overview");UI.showTab(a[0],a[1])}); var UI={debug:!1,elements:{},stored:{getOpts:function(){var a=localStorage.stored;a&&(a=JSON.parse(a));$.extend(!0,this.vars,a);return this.vars},saveOpt:function(a,c){this.vars[a]=c;localStorage.stored=JSON.stringify(this.vars);return this.vars},vars:{helpme:!0}},interval:{clear:function(){"undefined"!=typeof this.opts&&(clearInterval(this.opts.id),delete this.opts)},set:function(a,c){this.opts&&log("[interval]","Set called on interval, but an interval is already active.");this.opts={delay:c,callback:a}; this.opts.id=setInterval(a,c)}},returnTab:["Overview"],countrylist:{AF:"Afghanistan",AX:"Åland Islands",AL:"Albania",DZ:"Algeria",AS:"American Samoa",AD:"Andorra",AO:"Angola",AI:"Anguilla",AQ:"Antarctica",AG:"Antigua and Barbuda",AR:"Argentina",AM:"Armenia",AW:"Aruba",AU:"Australia",AT:"Austria",AZ:"Azerbaijan",BS:"Bahamas",BH:"Bahrain",BD:"Bangladesh",BB:"Barbados",BY:"Belarus",BE:"Belgium",BZ:"Belize",BJ:"Benin",BM:"Bermuda",BT:"Bhutan",BO:"Bolivia, Plurinational State of",BQ:"Bonaire, Sint Eustatius and Saba", @@ -20,33 +20,33 @@ UA:"Ukraine",AE:"United Arab Emirates",GB:"United Kingdom",US:"United States",UM delete this.hiding;var b=$(document).height()-$tooltip.outerHeight(),d=$(document).width()-$tooltip.outerWidth();$tooltip.css("left",Math.min(a.pageX+10,d-10));$tooltip.css("top",Math.min(a.pageY+25,b-10));$tooltip.show().addClass("show")},hide:function(){$tooltip=this.element;$tooltip.removeClass("show");this.hiding=setTimeout(function(){$tooltip.hide()},500)},element:$("
").attr("id","tooltip")},popup:{element:null,show:function(a){this.element=$("
").attr("id","popup").append($("