UNPKG

nodegit

Version:

Node.js libgit2 asynchronous native bindings

44 lines (38 loc) 966 B
"use strict"; var NodeGit = require("../"); var Blob = NodeGit.Blob; var LookupWrapper = NodeGit.Utils.lookupWrapper; var TreeEntry = NodeGit.TreeEntry; /** * Retrieves the blob pointed to by the oid * @async * @param {Repository} repo The repo that the blob lives in * @param {String|Oid|Blob} id The blob to lookup * @return {Blob} */ Blob.lookup = LookupWrapper(Blob); /** * Retrieve the content of the Blob. * * @return {Buffer} Contents as a buffer. */ Blob.prototype.content = function () { return this.rawcontent().toBuffer(this.rawsize()); }; /** * Retrieve the Blob's type. * * @return {Number} The filemode of the blob. */ Blob.prototype.filemode = function () { var FileMode = TreeEntry.FILEMODE; return this.isBinary() ? FileMode.EXECUTABLE : FileMode.BLOB; }; /** * Retrieve the Blob's content as String. * * @return {String} Contents as a string. */ Blob.prototype.toString = function () { return this.content().toString(); };