// Generated by purs version 0.13.6 "use strict"; var $foreign = require("./foreign.js"); var Data_Semiring = require("../Data.Semiring/index.js"); var Ring = function (Semiring0, sub) { this.Semiring0 = Semiring0; this.sub = sub; }; var sub = function (dict) { return dict.sub; }; var ringNumber = new Ring(function ($dollar__unused) { return Data_Semiring.semiringNumber; }, $foreign.numSub); var ringInt = new Ring(function ($dollar__unused) { return Data_Semiring.semiringInt; }, $foreign.intSub); var negate = function (dictRing) { return function (a) { return sub(dictRing)(Data_Semiring.zero(dictRing.Semiring0()))(a); }; }; module.exports = { Ring: Ring, sub: sub, negate: negate, ringInt: ringInt, ringNumber: ringNumber };