Difference between revisions 137477 and 137630 on testwiki

/// PerfektesChaos/js/WikisyntaxTextMod/?O.js
// WikisyntaxTextMod:  Objects for wiki syntax specific code
/// 2012-05-306-16 [email protected]
/// Fingerprint: #0#0#
/// <nowiki>
/* jshint curly:true, latedef:true, laxbreak:true,
           trailing:true, undef:true, white:false  */
/* global mw: true, mediaWiki: false                                   */
/*jslint   plusplus: true, regexp: true, sloppy: true, unparam: true,
           vars: true, white: true, maxerr: 50 */
/*globals  mw: true, mediaWiki: false                                  */


if (typeof(mediaWiki) !== "object") {   // disconnected
   mw  =  { libs:   { WikiSyntaxTextMod:  { }
                    },
            log:    function () {}
          };
}
if (typeof(mw.libs.WikiSyntaxTextMod) !== "object") {   // isolated
   mw.libs.WikiSyntaxTextMod  =  { };
}
if (typeof(mw.libs.WikiSyntaxTextMod.o) !== "object") {
   mw.libs.WikiSyntaxTextMod.o  =  { };
}
mw.libs.WikiSyntaxTextMod.o.vsn  =  -4.601;
if (typeof(mw.libs.WikiSyntaxTextMod.bb) !== "object") {
   mw.libs.WikiSyntaxTextMod.bb  =  { };
}
if (typeof(mw.libs.WikiSyntaxTextMod.debugging) !== "object") {
   mw.libs.WikiSyntaxTextMod.debugging  =  { debugging: false };
}

(contracted; show full)   //    RegExp was used.
   // Uses:
   //    >  this.lookup
   //    >  this.source
   //    >  this.children
   //    >  this.limited
   //    this.children.find()   -- recursive
   // 2012-06-
0716 [email protected]
   var join;
   var node;
   var e;
   var i;
   var j;
   var n;
   var s;
   var r     =  false;
   if (this.lookup) {
      join  =  (typeof(already) === "number"  ?  already  :  0);
      node  =  (typeof(assigned) === "number"  ?  assigned  :  0);
      if (typeof(this.children) === "object") {
         if (allow) {// // // (node || allow) {
            n  =  this.children.length;
            j  =  join;
/*
if(WSTM.o.WikiTom.Level>0){
mw.log(WSTM.debugging,".o.WikiTom().find() "+WSTM.o.WikiTom.Level+"   n="+n+"  j="+j+"   "+achieve,0);
if(WSTM.o.WikiTom.Level>22){
return false;
}
}
*/
            for (i = node;  i < n;  i++) {
               e  =  this.children[i];
//WSTM.o.WikiTom.Level++;
///////////////////////////////////////////////
//              r  =  e.find(achieve, j, 0, true, false, true);
                r  =  e.find(achieve, j, 0, attached, false, attached);
//WSTM.o.WikiTom.Level--;
               if (r) {
                  if (attached) {
                     r.child  =  { i: r.i,
                                   k: r.k,
                                   o: this };
                  }
                  r.k  =  i;
/*
if(WSTM.o.WikiTom.Level>0){
//mw.log(WSTM.debugging,".o.WikiTom().find()       r",0,r);
}
*/
                  break;   // for i
               }
               if (alone) {
                  if (e.limited) {
                     break;   // for i
                  }
               }
               j  =  0;///////////////////////////
/*
if(WSTM.o.WikiTom.Level>0){
//mw.log(WSTM.debugging,".o.WikiTom().find()       i="+i+"   length="+this.children.length,0);
}
*/
            }   // for i
         }
      } else if (! node) {   // plain string
         s  =  this.source;
         n  =  s.length;
         if (n) {
            if (join) {
               if (n > join) {
(contracted; show full)   //     < this.scope
   //     < this.source
   //    mw.log()
   // 2012-04-14 [email protected]
   var i;
   var r  =  false;
   if (this.children) {

mw.log(WSTM.debugging,".o.WikiTom().fork()  #####################   at="+at+"   advance="+advance,0);
      r           =  new WSTM.o.WikiTom(false, this);
      r.children  =  this.children.slice(at,  advance + 1);
      r.mode      =  assign;
      r.scope     =  ancestor;
      for (i = 0;  i < r.children.length;  i++) {
         r.children[i].parent  =  r;
         if (attach) {
            r.children[i].include  =  true;
(contracted; show full)
// Emacs
// Local Variables:
// encoding: iso-8859-1-dos
// fill-column: 80
// End:

/// EOF </nowiki>   WikiSyntaxTextMod/?O.js