Remove 'scratch.js' file
This commit is contained in:
parent
6e1a3faff2
commit
be8b1ef272
71
scratch.js
71
scratch.js
|
|
@ -1,71 +0,0 @@
|
|||
/*
|
||||
function getFirstCodeLine(lines) {
|
||||
function isCode(line) {
|
||||
line = stripComments(stripWhitespaceFromEnds(line));
|
||||
if (line.length === 0) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
||||
let isLineCode
|
||||
|
||||
lines = lines.filter(isCode);
|
||||
if (lines.length > 0) {
|
||||
return lines[0];
|
||||
}
|
||||
return false;
|
||||
}
|
||||
*/
|
||||
|
||||
/**
|
||||
* @param {string} source;
|
||||
**/
|
||||
// * @returns {{number: number, source: string, type: 'code'|'comment'|'blank'}}
|
||||
// TODO: https://stackoverflow.com/questions/32295263/how-to-document-an-array-of-objects-in-jsdoc
|
||||
function splitCodeFromComments(source) {
|
||||
let lines = source.split(/\n/); // returns an array of lines
|
||||
|
||||
const isLineBlank = (l) => { return l.length === 0 ? true : false };
|
||||
const isLineComment = (l) => { return stripWhitespaceFromEnds(l).startsWith(';') };
|
||||
const getLineType = (l) => {
|
||||
console.log('get type for ', l);
|
||||
if (isLineBlank(l)) return 'blank';
|
||||
if (isLineComment(l)) return 'comment';
|
||||
return 'code';
|
||||
}
|
||||
|
||||
return lines.map((line, index) => {
|
||||
return {
|
||||
number: index,
|
||||
source: line,
|
||||
type: getLineType(line)
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
console.log(splitCodeFromComments('foo \n\n; bar'));
|
||||
|
||||
|
||||
const logArrayElements = (element, index /*, array */) => {
|
||||
console.log(`a[${index}] = ${element}`);
|
||||
return index;
|
||||
};
|
||||
|
||||
// Notice that index 2 is skipped, since there is no item at
|
||||
// that position in the array.
|
||||
console.log([2, 5, , 9].map(logArrayElements));
|
||||
|
||||
const l = ['', '', '; foo', 'bar'];
|
||||
|
||||
// console.log(getFirstCodeLine(l));
|
||||
|
||||
function stripComments(line) {
|
||||
return line.replace(/;.+/,"");
|
||||
}
|
||||
|
||||
function stripWhitespaceFromEnds(line) {
|
||||
line = line.replace(/^\s+/,"");
|
||||
line = line.replace(/\s+$/,"");
|
||||
return line;
|
||||
}
|
||||
Loading…
Reference in New Issue