/** * Represents a location in a Source. *//** * Takes a Source and a UTF-8 character offset, and returns the corresponding * line and column as a SourceLocation. */exportfunctiongetLocation(source,position){varlineRegexp=/\r\n|[\n\r]/g;varline=1;varcolumn=position+1;varmatch;while((match=lineRegexp.exec(source.body))&&match.index<position){line+=1;column=position+1-(match.index+match[0].length);}return{line:line,column:column};}