issue13
Version:
Penis.js, Vagina.js, Hole.js, Ass.js, and Mouth.js as an npm package.
103 lines (78 loc) • 2.37 kB
Markdown
# Issue13.js
[Penis.js](https://github.com/edankwan/penis.js) and [Vagina.js](https://github.com/edankwan/vagina.js) as an NPM package, plus three new libraries, Hole.js, Ass.js and Mouth.js.
## Installation
```
npm install issue13
```
or
```
yarn add issue13
```
or
```
pnpm add issue13
```
## importing
```js
var penis = require('issue13/penis')
var vagina = require('issue13/vagina')
var Hole = require('issue13/hole')
var Ass = require('issue13/ass')
var mouth = require('issue13/mouth')
```
## Included libraries.
### Penis.js
[Read about Penis.js here.](https://github.com/edankwan/penis.js)
### Vagina.js
[Read about Vagina.js here.](https://github.com/edankwan/vagina.js)
### Hole.js
Hole.js is a simple structure that is used by Ass.js and Mouth.js. The constructor takes one function, that takes one parameter, and is called whenever the `pushIn` method on the hole is called with the argument passed in to the `pushIn` method.
```js
var Hole = require('issue13/hole')
var hole = new Hole(function (thing) {
console.log(thing)
})
hole.pushIn('test') // outputs "test" to console
```
### Ass.js
Ass.js is an alternative to Vagina.js.
Using Vagina.js:
```js
var vagina = require('issue13/vagina')
vagina.sth = "hi"
console.log(vagina.sth) // hi
vagina = {}
console.log(vagina.sth) // undefined
```
Using Ass.js:
```js
var Ass = require('issue13/ass')
var ass = new Ass()
ass.open()
ass.shove('sth', 'hi')
console.log(ass.contents.sth) // hi
ass.wipe()
console.log(ass.contents.sth) // undefined
ass.close()
```
Pros of Ass.js:
- Has to be opened with `ass.open()` for safety before shoving things in.
- Dedicated methods for setting properties and clearing the ass.
- Is a class so you can use your own ass every time.
Cons of Ass.js:
- `+ass` does not return pi.
Pros of Vagina.js:
- `+vagina` returns pi.
Cons of Vagina.js:
- No dedicated methods except the `valueOf` method which returns pi.
- Not a class.
- When you reset it you have to do `vagina = {}` which gets rid of the `valueOf` method so you can't get pi with `+vagina` anymore.
### Mouth.js
Mouth.js has an eat method which returns an empty version of the given thing.
```js
var mouth = require('issue13/mouth')
console.log(mouth.eat("hi")) // ""
console.log(mouth.eat([4, "bob"])) // []
console.log(mouth.eat(1)) // 0
console.log(mouth.eat({ foo: 'bar' })) // {}
```