Permalink
Show file tree
Hide file tree
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Showing
4 changed files
with
242 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
load("build/js/json.js"); | ||
load("build/js/xml.js"); | ||
load("build/js/writeFile.js"); | ||
|
||
var types = { | ||
jQuery: "A jQuery object.", | ||
Object: "A simple Javascript object. For example, it could be a String or a Number.", | ||
String: "A string of characters.", | ||
Number: "A numeric valid.", | ||
Element: "The Javascript object representation of a DOM Element.", | ||
Hash: "A Javascript object that contains key/value pairs in the form of properties and values.", | ||
"Array<Element>": "An Array of DOM Elements.", | ||
"Array<String>": "An Array of strings.", | ||
Function: "A reference to a Javascript function." | ||
}; | ||
|
||
var f = readFile("../jquery-svn.js"); | ||
|
||
var c = [], bm, m; | ||
var blockMatch = /\/\*\*\s*((.|\n)*?)\s*\*\//g; | ||
var paramMatch = /\@(\S+) *((.|\n)*?)(?=\n\@|!!!)/m; | ||
|
||
while ( bm = blockMatch.exec(f) ) { | ||
block = bm[1].replace(/^\s*\* ?/mg,"") + "!!!"; | ||
var ret = { params: [], examples: [] }; | ||
|
||
while ( m = paramMatch.exec( block ) ) { | ||
block = block.replace( paramMatch, "" ); | ||
|
||
var n = m[1]; | ||
var v = m[2] | ||
.replace(/\s*$/g,"") | ||
.replace(/^\s*/g,"") | ||
.replace(/&/g, "&") | ||
.replace(/</g, "<") | ||
.replace(/>/g, ">") | ||
.replace(/\n/g, "<br/>") | ||
/*.replace(/(\s\s+)/g, function(a){ | ||
var ret = ""; | ||
for ( var i = 0; i < a.length; i++ ) | ||
ret += " "; | ||
return ret; | ||
})*/ || 1; | ||
|
||
if ( n == 'param' || n == 'any' ) { | ||
var args = v.split(/\s+/); | ||
v = args.slice( 2, args.length ); | ||
v = { type: args[0], name: args[1], desc: v.join(' ') }; | ||
if ( n == 'any' ) v.any = 1; | ||
n = "params"; | ||
} else if ( n == 'example' ) { | ||
v = { code: v }; | ||
n = "examples"; | ||
} | ||
|
||
if ( n == 'desc' || n == 'before' || n == 'after' || n == 'result' ) { | ||
ret.examples[ ret.examples.length - 1 ][ n ] = v; | ||
} else { | ||
if ( ret[ n ] ) { | ||
if ( ret[ n ].constructor == Array ) { | ||
ret[ n ].push( v ); | ||
} else { | ||
ret[ n ] = [ ret[ n ], v ]; | ||
} | ||
} else { | ||
ret[ n ] = v; | ||
} | ||
} | ||
} | ||
|
||
ret.desc = block.replace(/\s*!!!$/,"") | ||
.replace(/</g, "<") | ||
.replace(/>/g, ">"); | ||
//.replace(/\n\n/g, "<br/><br/>") | ||
//.replace(/\n/g, " "); | ||
|
||
var m = /^((.|\n)*?(\.|$))/.exec( ret.desc ); | ||
if ( m ) ret['short'] = m[1]; | ||
|
||
if ( ret.name ) c.push( ret ); | ||
} | ||
|
||
var json = Object.toJSON( c ); | ||
|
||
writeFile( "data/jquery-docs-json.js", json ); | ||
writeFile( "data/jquery-docs-jsonp.js", "docsLoaded(" + json + ")" ); | ||
|
||
Object.toXML.force = { desc: 1, code: 1, before: 1, result: 1 }; | ||
|
||
var xml = Object.toXML( { method: c }, "docs" ); | ||
|
||
writeFile( "data/jquery-docs-xml.xml", | ||
"<?xml version='1.0' encoding='ISO-8859-1'?>\n" + xml ); | ||
|
||
writeFile( "index.xml", | ||
"<?xml version='1.0' encoding='ISO-8859-1'?>\n" + | ||
"<?xml-stylesheet type='text/xsl' href='style/docs.xsl'?>\n" + xml | ||
); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,117 @@ | ||
/* | ||
json.js | ||
2006-04-28 | ||
This file adds these methods to JavaScript: | ||
object.toJSONString() | ||
This method produces a JSON text from an object. The | ||
object must not contain any cyclical references. | ||
array.toJSONString() | ||
This method produces a JSON text from an array. The | ||
array must not contain any cyclical references. | ||
string.parseJSON() | ||
This method parses a JSON text to produce an object or | ||
array. It will return false if there is an error. | ||
*/ | ||
(function () { | ||
var m = { | ||
'\b': '\\b', | ||
'\t': '\\t', | ||
'\n': '\\n', | ||
'\f': '\\f', | ||
'\r': '\\r', | ||
'"' : '\\"', | ||
'\\': '\\\\' | ||
}, | ||
s = { | ||
array: function (x) { | ||
var a = ['['], b, f, i, l = x.length, v; | ||
for (i = 0; i < l; i += 1) { | ||
v = x[i]; | ||
f = s[typeof v]; | ||
if (f) { | ||
v = f(v); | ||
if (typeof v == 'string') { | ||
if (b) { | ||
a[a.length] = ','; | ||
} | ||
a[a.length] = v; | ||
b = true; | ||
} | ||
} | ||
} | ||
a[a.length] = ']'; | ||
return a.join(''); | ||
}, | ||
'boolean': function (x) { | ||
return String(x); | ||
}, | ||
'null': function (x) { | ||
return "null"; | ||
}, | ||
number: function (x) { | ||
return isFinite(x) ? String(x) : 'null'; | ||
}, | ||
object: function (x) { | ||
if (x) { | ||
if (x instanceof Array) { | ||
return s.array(x); | ||
} | ||
var a = ['{'], b, f, i, v; | ||
for (i in x) { | ||
v = x[i]; | ||
f = s[typeof v]; | ||
if (f) { | ||
v = f(v); | ||
if (typeof v == 'string') { | ||
if (b) { | ||
a[a.length] = ','; | ||
} | ||
a.push(s.string(i), ':', v); | ||
b = true; | ||
} | ||
} | ||
} | ||
a[a.length] = '}'; | ||
return a.join(''); | ||
} | ||
return 'null'; | ||
}, | ||
string: function (x) { | ||
if (/["\\\x00-\x1f]/.test(x)) { | ||
x = x.replace(/([\x00-\x1f\\"])/g, function(a, b) { | ||
var c = m[b]; | ||
if (c) { | ||
return c; | ||
} | ||
c = b.charCodeAt(); | ||
return '\\u00' + | ||
Math.floor(c / 16).toString(16) + | ||
(c % 16).toString(16); | ||
}); | ||
} | ||
return '"' + x + '"'; | ||
} | ||
}; | ||
|
||
Object.toJSON = function(obj) { | ||
return s.object(obj); | ||
}; | ||
})(); | ||
|
||
String.prototype.parseJSON = function () { | ||
try { | ||
return !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test( | ||
this.replace(/"(\\.|[^"\\])*"/g, ''))) && | ||
eval('(' + this + ')'); | ||
} catch (e) { | ||
return false; | ||
} | ||
}; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
Object.toXML = function( obj, tag ) { | ||
if ( obj.constructor == Array ) { | ||
var ret = ""; | ||
for ( var i = 0; i < obj.length; i++ ) | ||
ret += Object.toXML( obj[i], tag ); | ||
return ret; | ||
} else if ( obj.constructor == Object ) { | ||
var tag = tag || "tmp"; | ||
var p = "", child = ""; | ||
|
||
for ( var i in obj ) | ||
if ( obj[i].constructor == Array || /</.test(obj[i] + "") || Object.toXML.force[i] ) | ||
child += Object.toXML( obj[i], i ); | ||
else | ||
p += " " + i + "='" + (obj[i] + "").replace(/'/g, "'") + "'"; | ||
|
||
return "<" + tag + p + ( child ? ">\n" + child + "</" + tag + ">\n" : "/>\n" ); | ||
} else if ( obj.constructor == String ) { | ||
//obj = obj.replace(/</g,"<").replace(/>/g,">"); | ||
//return "<" + tag + "><![CDATA[" + obj + "]]></" + tag + ">"; | ||
return "<" + tag + ">" + obj + "</" + tag + ">\n"; | ||
} | ||
|
||
return ""; | ||
}; | ||
|
||
Object.toXML.force = {}; |
BIN
-692 KB
docs/build/js.jar
Binary file not shown.