");
+ $input.on("blur.tt", function($e) {
+ var active, isActive, hasActive;
+ active = document.activeElement;
+ isActive = $menu.is(active);
+ hasActive = $menu.has(active).length > 0;
+ if (_.isMsie() && (isActive || hasActive)) {
+ $e.preventDefault();
+ $e.stopImmediatePropagation();
+ _.defer(function() {
+ $input.focus();
+ });
+ }
+ });
+ $menu.on("mousedown.tt", function($e) {
+ $e.preventDefault();
+ });
+ },
+ _onSelectableClicked: function onSelectableClicked(type, $el) {
+ this.select($el);
+ },
+ _onDatasetCleared: function onDatasetCleared() {
+ this._updateHint();
+ },
+ _onDatasetRendered: function onDatasetRendered(type, suggestions, async, dataset) {
+ this._updateHint();
+ if (this.autoselect) {
+ var cursorClass = this.selectors.cursor.substr(1);
+ this.menu.$node.find(this.selectors.suggestion).first().addClass(cursorClass);
+ }
+ this.eventBus.trigger("render", suggestions, async, dataset);
+ },
+ _onAsyncRequested: function onAsyncRequested(type, dataset, query) {
+ this.eventBus.trigger("asyncrequest", query, dataset);
+ },
+ _onAsyncCanceled: function onAsyncCanceled(type, dataset, query) {
+ this.eventBus.trigger("asynccancel", query, dataset);
+ },
+ _onAsyncReceived: function onAsyncReceived(type, dataset, query) {
+ this.eventBus.trigger("asyncreceive", query, dataset);
+ },
+ _onFocused: function onFocused() {
+ this._minLengthMet() && this.menu.update(this.input.getQuery());
+ },
+ _onBlurred: function onBlurred() {
+ if (this.input.hasQueryChangedSinceLastFocus()) {
+ this.eventBus.trigger("change", this.input.getQuery());
+ }
+ },
+ _onEnterKeyed: function onEnterKeyed(type, $e) {
+ var $selectable;
+ if ($selectable = this.menu.getActiveSelectable()) {
+ if (this.select($selectable)) {
+ $e.preventDefault();
+ $e.stopPropagation();
+ }
+ } else if (this.autoselect) {
+ if (this.select(this.menu.getTopSelectable())) {
+ $e.preventDefault();
+ $e.stopPropagation();
+ }
+ }
+ },
+ _onTabKeyed: function onTabKeyed(type, $e) {
+ var $selectable;
+ if ($selectable = this.menu.getActiveSelectable()) {
+ this.select($selectable) && $e.preventDefault();
+ } else if (this.autoselect) {
+ if ($selectable = this.menu.getTopSelectable()) {
+ this.autocomplete($selectable) && $e.preventDefault();
+ }
+ }
+ },
+ _onEscKeyed: function onEscKeyed() {
+ this.close();
+ },
+ _onUpKeyed: function onUpKeyed() {
+ this.moveCursor(-1);
+ },
+ _onDownKeyed: function onDownKeyed() {
+ this.moveCursor(+1);
+ },
+ _onLeftKeyed: function onLeftKeyed() {
+ if (this.dir === "rtl" && this.input.isCursorAtEnd()) {
+ this.autocomplete(this.menu.getActiveSelectable() || this.menu.getTopSelectable());
+ }
+ },
+ _onRightKeyed: function onRightKeyed() {
+ if (this.dir === "ltr" && this.input.isCursorAtEnd()) {
+ this.autocomplete(this.menu.getActiveSelectable() || this.menu.getTopSelectable());
+ }
+ },
+ _onQueryChanged: function onQueryChanged(e, query) {
+ this._minLengthMet(query) ? this.menu.update(query) : this.menu.empty();
+ },
+ _onWhitespaceChanged: function onWhitespaceChanged() {
+ this._updateHint();
+ },
+ _onLangDirChanged: function onLangDirChanged(e, dir) {
+ if (this.dir !== dir) {
+ this.dir = dir;
+ this.menu.setLanguageDirection(dir);
+ }
+ },
+ _openIfActive: function openIfActive() {
+ this.isActive() && this.open();
+ },
+ _minLengthMet: function minLengthMet(query) {
+ query = _.isString(query) ? query : this.input.getQuery() || "";
+ return query.length >= this.minLength;
+ },
+ _updateHint: function updateHint() {
+ var $selectable, data, val, query, escapedQuery, frontMatchRegEx, match;
+ $selectable = this.menu.getTopSelectable();
+ data = this.menu.getSelectableData($selectable);
+ val = this.input.getInputValue();
+ if (data && !_.isBlankString(val) && !this.input.hasOverflow()) {
+ query = Input.normalizeQuery(val);
+ escapedQuery = _.escapeRegExChars(query);
+ frontMatchRegEx = new RegExp("^(?:" + escapedQuery + ")(.+$)", "i");
+ match = frontMatchRegEx.exec(data.val);
+ match && this.input.setHint(val + match[1]);
+ } else {
+ this.input.clearHint();
+ }
+ },
+ isEnabled: function isEnabled() {
+ return this.enabled;
+ },
+ enable: function enable() {
+ this.enabled = true;
+ },
+ disable: function disable() {
+ this.enabled = false;
+ },
+ isActive: function isActive() {
+ return this.active;
+ },
+ activate: function activate() {
+ if (this.isActive()) {
+ return true;
+ } else if (!this.isEnabled() || this.eventBus.before("active")) {
+ return false;
+ } else {
+ this.active = true;
+ this.eventBus.trigger("active");
+ return true;
+ }
+ },
+ deactivate: function deactivate() {
+ if (!this.isActive()) {
+ return true;
+ } else if (this.eventBus.before("idle")) {
+ return false;
+ } else {
+ this.active = false;
+ this.close();
+ this.eventBus.trigger("idle");
+ return true;
+ }
+ },
+ isOpen: function isOpen() {
+ return this.menu.isOpen();
+ },
+ open: function open() {
+ if (!this.isOpen() && !this.eventBus.before("open")) {
+ this.input.setAriaExpanded(true);
+ this.menu.open();
+ this._updateHint();
+ this.eventBus.trigger("open");
+ }
+ return this.isOpen();
+ },
+ close: function close() {
+ if (this.isOpen() && !this.eventBus.before("close")) {
+ this.input.setAriaExpanded(false);
+ this.menu.close();
+ this.input.clearHint();
+ this.input.resetInputValue();
+ this.eventBus.trigger("close");
+ }
+ return !this.isOpen();
+ },
+ setVal: function setVal(val) {
+ this.input.setQuery(_.toStr(val));
+ },
+ getVal: function getVal() {
+ return this.input.getQuery();
+ },
+ select: function select($selectable) {
+ var data = this.menu.getSelectableData($selectable);
+ if (data && !this.eventBus.before("select", data.obj, data.dataset)) {
+ this.input.setQuery(data.val, true);
+ this.eventBus.trigger("select", data.obj, data.dataset);
+ this.close();
+ return true;
+ }
+ return false;
+ },
+ autocomplete: function autocomplete($selectable) {
+ var query, data, isValid;
+ query = this.input.getQuery();
+ data = this.menu.getSelectableData($selectable);
+ isValid = data && query !== data.val;
+ if (isValid && !this.eventBus.before("autocomplete", data.obj, data.dataset)) {
+ this.input.setQuery(data.val);
+ this.eventBus.trigger("autocomplete", data.obj, data.dataset);
+ return true;
+ }
+ return false;
+ },
+ moveCursor: function moveCursor(delta) {
+ var query, $candidate, data, suggestion, datasetName, cancelMove, id;
+ query = this.input.getQuery();
+ $candidate = this.menu.selectableRelativeToCursor(delta);
+ data = this.menu.getSelectableData($candidate);
+ suggestion = data ? data.obj : null;
+ datasetName = data ? data.dataset : null;
+ id = $candidate ? $candidate.attr("id") : null;
+ this.input.trigger("cursorchange", id);
+ cancelMove = this._minLengthMet() && this.menu.update(query);
+ if (!cancelMove && !this.eventBus.before("cursorchange", suggestion, datasetName)) {
+ this.menu.setCursor($candidate);
+ if (data) {
+ if (typeof data.val === "string") {
+ this.input.setInputValue(data.val);
+ }
+ } else {
+ this.input.resetInputValue();
+ this._updateHint();
+ }
+ this.eventBus.trigger("cursorchange", suggestion, datasetName);
+ return true;
+ }
+ return false;
+ },
+ destroy: function destroy() {
+ this.input.destroy();
+ this.menu.destroy();
+ }
+ });
+ return Typeahead;
+ function c(ctx) {
+ var methods = [].slice.call(arguments, 1);
+ return function() {
+ var args = [].slice.call(arguments);
+ _.each(methods, function(method) {
+ return ctx[method].apply(ctx, args);
+ });
+ };
+ }
+ }();
+ (function() {
+ "use strict";
+ var old, keys, methods;
+ old = $.fn.typeahead;
+ keys = {
+ www: "tt-www",
+ attrs: "tt-attrs",
+ typeahead: "tt-typeahead"
+ };
+ methods = {
+ initialize: function initialize(o, datasets) {
+ var www;
+ datasets = _.isArray(datasets) ? datasets : [].slice.call(arguments, 1);
+ o = o || {};
+ www = WWW(o.classNames);
+ return this.each(attach);
+ function attach() {
+ var $input, $wrapper, $hint, $menu, defaultHint, defaultMenu, eventBus, input, menu, status, typeahead, MenuConstructor;
+ _.each(datasets, function(d) {
+ d.highlight = !!o.highlight;
+ });
+ $input = $(this);
+ $wrapper = $(www.html.wrapper);
+ $hint = $elOrNull(o.hint);
+ $menu = $elOrNull(o.menu);
+ defaultHint = o.hint !== false && !$hint;
+ defaultMenu = o.menu !== false && !$menu;
+ defaultHint && ($hint = buildHintFromInput($input, www));
+ defaultMenu && ($menu = $(www.html.menu).css(www.css.menu));
+ $hint && $hint.val("");
+ $input = prepInput($input, www);
+ if (defaultHint || defaultMenu) {
+ $wrapper.css(www.css.wrapper);
+ $input.css(defaultHint ? www.css.input : www.css.inputWithNoHint);
+ $input.wrap($wrapper).parent().prepend(defaultHint ? $hint : null).append(defaultMenu ? $menu : null);
+ }
+ MenuConstructor = defaultMenu ? DefaultMenu : Menu;
+ eventBus = new EventBus({
+ el: $input
+ });
+ input = new Input({
+ hint: $hint,
+ input: $input,
+ menu: $menu
+ }, www);
+ menu = new MenuConstructor({
+ node: $menu,
+ datasets: datasets
+ }, www);
+ status = new Status({
+ $input: $input,
+ menu: menu
+ });
+ typeahead = new Typeahead({
+ input: input,
+ menu: menu,
+ eventBus: eventBus,
+ minLength: o.minLength,
+ autoselect: o.autoselect
+ }, www);
+ $input.data(keys.www, www);
+ $input.data(keys.typeahead, typeahead);
+ }
+ },
+ isEnabled: function isEnabled() {
+ var enabled;
+ ttEach(this.first(), function(t) {
+ enabled = t.isEnabled();
+ });
+ return enabled;
+ },
+ enable: function enable() {
+ ttEach(this, function(t) {
+ t.enable();
+ });
+ return this;
+ },
+ disable: function disable() {
+ ttEach(this, function(t) {
+ t.disable();
+ });
+ return this;
+ },
+ isActive: function isActive() {
+ var active;
+ ttEach(this.first(), function(t) {
+ active = t.isActive();
+ });
+ return active;
+ },
+ activate: function activate() {
+ ttEach(this, function(t) {
+ t.activate();
+ });
+ return this;
+ },
+ deactivate: function deactivate() {
+ ttEach(this, function(t) {
+ t.deactivate();
+ });
+ return this;
+ },
+ isOpen: function isOpen() {
+ var open;
+ ttEach(this.first(), function(t) {
+ open = t.isOpen();
+ });
+ return open;
+ },
+ open: function open() {
+ ttEach(this, function(t) {
+ t.open();
+ });
+ return this;
+ },
+ close: function close() {
+ ttEach(this, function(t) {
+ t.close();
+ });
+ return this;
+ },
+ select: function select(el) {
+ var success = false, $el = $(el);
+ ttEach(this.first(), function(t) {
+ success = t.select($el);
+ });
+ return success;
+ },
+ autocomplete: function autocomplete(el) {
+ var success = false, $el = $(el);
+ ttEach(this.first(), function(t) {
+ success = t.autocomplete($el);
+ });
+ return success;
+ },
+ moveCursor: function moveCursoe(delta) {
+ var success = false;
+ ttEach(this.first(), function(t) {
+ success = t.moveCursor(delta);
+ });
+ return success;
+ },
+ val: function val(newVal) {
+ var query;
+ if (!arguments.length) {
+ ttEach(this.first(), function(t) {
+ query = t.getVal();
+ });
+ return query;
+ } else {
+ ttEach(this, function(t) {
+ t.setVal(_.toStr(newVal));
+ });
+ return this;
+ }
+ },
+ destroy: function destroy() {
+ ttEach(this, function(typeahead, $input) {
+ revert($input);
+ typeahead.destroy();
+ });
+ return this;
+ }
+ };
+ $.fn.typeahead = function(method) {
+ if (methods[method]) {
+ return methods[method].apply(this, [].slice.call(arguments, 1));
+ } else {
+ return methods.initialize.apply(this, arguments);
+ }
+ };
+ $.fn.typeahead.noConflict = function noConflict() {
+ $.fn.typeahead = old;
+ return this;
+ };
+ function ttEach($els, fn) {
+ $els.each(function() {
+ var $input = $(this), typeahead;
+ (typeahead = $input.data(keys.typeahead)) && fn(typeahead, $input);
+ });
+ }
+ function buildHintFromInput($input, www) {
+ return $input.clone().addClass(www.classes.hint).removeData().css(www.css.hint).css(getBackgroundStyles($input)).prop({
+ readonly: true,
+ required: false
+ }).removeAttr("id name placeholder").removeClass("required").attr({
+ spellcheck: "false",
+ tabindex: -1
+ });
+ }
+ function prepInput($input, www) {
+ $input.data(keys.attrs, {
+ dir: $input.attr("dir"),
+ autocomplete: $input.attr("autocomplete"),
+ spellcheck: $input.attr("spellcheck"),
+ style: $input.attr("style")
+ });
+ $input.addClass(www.classes.input).attr({
+ spellcheck: false
+ });
+ try {
+ !$input.attr("dir") && $input.attr("dir", "auto");
+ } catch (e) {}
+ return $input;
+ }
+ function getBackgroundStyles($el) {
+ return {
+ backgroundAttachment: $el.css("background-attachment"),
+ backgroundClip: $el.css("background-clip"),
+ backgroundColor: $el.css("background-color"),
+ backgroundImage: $el.css("background-image"),
+ backgroundOrigin: $el.css("background-origin"),
+ backgroundPosition: $el.css("background-position"),
+ backgroundRepeat: $el.css("background-repeat"),
+ backgroundSize: $el.css("background-size")
+ };
+ }
+ function revert($input) {
+ var www, $wrapper;
+ www = $input.data(keys.www);
+ $wrapper = $input.parent().filter(www.selectors.wrapper);
+ _.each($input.data(keys.attrs), function(val, key) {
+ _.isUndefined(val) ? $input.removeAttr(key) : $input.attr(key, val);
+ });
+ $input.removeData(keys.typeahead).removeData(keys.www).removeData(keys.attr).removeClass(www.classes.input);
+ if ($wrapper.length) {
+ $input.detach().insertAfter($wrapper);
+ $wrapper.remove();
+ }
+ }
+ function $elOrNull(obj) {
+ var isValid, $el;
+ isValid = _.isJQuery(obj) || _.isElement(obj);
+ $el = isValid ? $(obj).first() : [];
+ return $el.length ? $el : null;
+ }
+ })();
+});
\ No newline at end of file
diff --git a/docs/docsets/BigInt.docset/Contents/Resources/Documents/search.json b/docs/docsets/BigInt.docset/Contents/Resources/Documents/search.json
new file mode 100644
index 0000000..1e2c17f
--- /dev/null
+++ b/docs/docsets/BigInt.docset/Contents/Resources/Documents/search.json
@@ -0,0 +1 @@
+{"Structs/BigInt/Words.html#/s:Sl7IndicesQa":{"name":"Indices","parent_name":"Words"},"Structs/BigInt/Words.html#/s:Sl5countSivp":{"name":"count","parent_name":"Words"},"Structs/BigInt/Words.html#/s:Sk7indices7IndicesQzvp":{"name":"indices","parent_name":"Words"},"Structs/BigInt/Words.html#/s:Sl10startIndex0B0Qzvp":{"name":"startIndex","parent_name":"Words"},"Structs/BigInt/Words.html#/s:Sl8endIndex0B0Qzvp":{"name":"endIndex","parent_name":"Words"},"Structs/BigInt/Words.html#/s:Sly7ElementQz5IndexQzcip":{"name":"subscript(_:)","parent_name":"Words"},"Structs/BigInt/Sign.html#/s:6BigIntAAV4SignO4plusyA2DmF":{"name":"plus","abstract":"
Undocumented
","parent_name":"Sign"},"Structs/BigInt/Sign.html#/s:6BigIntAAV4SignO5minusyA2DmF":{"name":"minus","abstract":"
Undocumented
","parent_name":"Sign"},"Structs/BigInt/Sign.html":{"name":"Sign","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:Sj9MagnitudeQa":{"name":"Magnitude","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV4Worda":{"name":"Word","abstract":"
The type representing a digit in BigInt
‘s underlying number system.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:Sz8isSignedSbvpZ":{"name":"isSigned","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV9magnitudeAA0A4UIntVvp":{"name":"magnitude","abstract":"
The absolute value of this integer.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV4signAB4SignOvp":{"name":"sign","abstract":"
True iff the value of this integer is negative.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV4sign9magnitudeA2B4SignO_AA0A4UIntVtcfc":{"name":"init(sign:magnitude:)","abstract":"
Initializes a new big integer with the provided absolute number and sign flag.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV6isZeroSbvp":{"name":"isZero","abstract":"
Return true iff this integer is zero.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV6signumAByF":{"name":"signum()","abstract":"
Returns -1
if this value is negative and 1
if it’s positive; otherwise, 0
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV1poiyA2B_ABtFZ":{"name":"+(_:_:)","abstract":"
Add a
to b
and return the result.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2peoiyyABz_ABtFZ":{"name":"+=(_:_:)","abstract":"
Add b
to a
in place.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV1topyA2BFZ":{"name":"~(_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV1aoiyA2Bz_ABtFZ":{"name":"&(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV1ooiyA2Bz_ABtFZ":{"name":"|(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV1xoiyA2Bz_ABtFZ":{"name":"^(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2aeoiyyABz_ABtFZ":{"name":"&=(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2oeoiyyABz_ABtFZ":{"name":"|=(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2xeoiyyABz_ABtFZ":{"name":"^=(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:Se4fromxs7Decoder_p_tKcfc":{"name":"init(from:)","parent_name":"BigInt"},"Structs/BigInt.html#/s:SE6encode2toys7Encoder_p_tKF":{"name":"encode(to:)","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2eeoiySbAB_ABtFZ":{"name":"==(_:_:)","abstract":"
Return true iff a
is equal to b
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV1loiySbAB_ABtFZ":{"name":"<(_:_:)","abstract":"
Return true iff a
is less than b
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAVyABSWcfc":{"name":"init(_:)","abstract":"
Initialize a BigInt from bytes accessed from an UnsafeRawBufferPointer,","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAVyAB10Foundation4DataVcfc":{"name":"init(_:)","abstract":"
Initializes an integer from the bits stored inside a piece of Data
.","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV9serialize10Foundation4DataVyF":{"name":"serialize()","abstract":"
Return a Data
value that contains the base-256 representation of this integer, in network (big-endian) byte order and a prepended byte to indicate the sign (0 for positive, 1 for negative)
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV20quotientAndRemainder10dividingByAB0C0_AB9remaindertAB_tF":{"name":"quotientAndRemainder(dividingBy:)","abstract":"
Divide this integer by y
and return the resulting quotient and remainder.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV1doiyA2B_ABtFZ":{"name":"/(_:_:)","abstract":"
Divide a
by b
and return the quotient. Traps if b
is zero.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV1roiyA2B_ABtFZ":{"name":"%(_:_:)","abstract":"
Divide a
by b
and return the remainder. The result has the same sign as a
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV7modulusyA2BF":{"name":"modulus(_:)","abstract":"
Return the result of a
mod b
. The result is always a nonnegative integer that is less than the absolute value of b
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2deoiyyABz_ABtFZ":{"name":"/=(_:_:)","abstract":"
Divide a
by b
storing the quotient in a
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2reoiyyABz_ABtFZ":{"name":"%=(_:_:)","abstract":"
Divide a
by b
storing the remainder in a
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV5poweryABSiF":{"name":"power(_:)","abstract":"
Returns this integer raised to the power exponent
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV5power_7modulusA2B_ABtF":{"name":"power(_:modulus:)","abstract":"
Returns the remainder of this integer raised to the power exponent
in modulo arithmetic under modulus
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:Sz7exactlyxSgqd___tcSBRd__lufc":{"name":"init(exactly:)","parent_name":"BigInt"},"Structs/BigInt.html#/s:Szyxqd__cSBRd__lufc":{"name":"init(_:)","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV21greatestCommonDivisor4withA2B_tF":{"name":"greatestCommonDivisor(with:)","abstract":"
Returns the greatest common divisor of a
and b
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV7inverseyABSgABF":{"name":"inverse(_:)","abstract":"
Returns the multiplicative inverse of this integer in modulo modulus
arithmetic,","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV4hash4intoys6HasherVz_tF":{"name":"hash(into:)","abstract":"
Append this BigInt
to the specified hasher.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAVABycfc":{"name":"init()","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAVyAbA0A4UIntVcfc":{"name":"init(_:)","abstract":"
Initializes a new signed big integer with the same value as the specified unsigned big integer.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:Szyxqd__cSzRd__lufc":{"name":"init(_:)","parent_name":"BigInt"},"Structs/BigInt.html#/s:Sj7exactlyxSgqd___tcSzRd__lufc":{"name":"init(exactly:)","parent_name":"BigInt"},"Structs/BigInt.html#/s:Sz8clampingxqd___tcSzRd__lufc":{"name":"init(clamping:)","parent_name":"BigInt"},"Structs/BigInt.html#/s:Sz18truncatingIfNeededxqd___tcSzRd__lufc":{"name":"init(truncatingIfNeeded:)","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV14integerLiteralABs5Int64V_tcfc":{"name":"init(integerLiteral:)","abstract":"
Initialize a new big integer from an integer literal.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV1moiyA2B_ABtFZ":{"name":"*(_:_:)","abstract":"
Multiply a
with b
and return the result.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2meoiyyABz_ABtFZ":{"name":"*=(_:_:)","abstract":"
Multiply a
with b
in place.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV21isStrongProbablePrimeySbABF":{"name":"isStrongProbablePrime(_:)","abstract":"
Returns true iff this integer passes the strong probable prime test for the specified base.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV7isPrime6roundsSbSi_tF":{"name":"isPrime(rounds:)","abstract":"
Returns true if this integer is probably prime. Returns false if this integer is definitely not prime.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV3alloiyA2B_ABtFZ":{"name":"&<<(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV4alleoiyyABz_ABtFZ":{"name":"&<<=(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV3aggoiyA2B_ABtFZ":{"name":"&>>(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV4aggeoiyyABz_ABtFZ":{"name":"&>>=(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2lloiyA2B_xtSzRzlFZ":{"name":"<<(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV3lleoiyyABz_xtSzRzlFZ":{"name":"<<=(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2ggoiyA2B_xtSzRzlFZ":{"name":">>(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV3ggeoiyyABz_xtSzRzlFZ":{"name":">>=(_:_:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV10squareRootAByF":{"name":"squareRoot()","abstract":"
Returns the integer square root of a big integer; i.e., the largest integer whose square isn’t greater than value
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:Sx6StrideQa":{"name":"Stride","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV8advanced2byA2B_tF":{"name":"advanced(by:)","abstract":"
Returns self + n
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV8distance2toA2B_tF":{"name":"distance(to:)","abstract":"
Returns other - self
.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV_5radixABSgx_SitcSyRzlufc":{"name":"init(_:radix:)","abstract":"
Initialize a big integer from an ASCII representation in a given radix. Numerals above 9
are represented by","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV20unicodeScalarLiteralABs7UnicodeO0D0V_tcfc":{"name":"init(unicodeScalarLiteral:)","abstract":"
Initialize a new big integer from a Unicode scalar.","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV30extendedGraphemeClusterLiteralABSS_tcfc":{"name":"init(extendedGraphemeClusterLiteral:)","abstract":"
Initialize a new big integer from an extended grapheme cluster.","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV13stringLiteralABSS_tcfc":{"name":"init(stringLiteral:)","abstract":"
Initialize a new big integer from a decimal number represented by a string literal of arbitrary length.","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV11descriptionSSvp":{"name":"description","abstract":"
Return the decimal representation of this integer.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV21playgroundDescriptionypvp":{"name":"playgroundDescription","abstract":"
Return the playground quick look representation of this integer.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV6negateyyF":{"name":"negate()","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV1soiyA2B_ABtFZ":{"name":"-(_:_:)","abstract":"
Subtract b
from a
and return the result.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV2seoiyyABz_ABtFZ":{"name":"-=(_:_:)","abstract":"
Subtract b
from a
in place.
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV8bitWidthSivp":{"name":"bitWidth","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV20trailingZeroBitCountSivp":{"name":"trailingZeroBitCount","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt/Words.html":{"name":"Words","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV5wordsAB5WordsVvp":{"name":"words","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigInt.html#/s:6BigIntAAV5wordsABx_tcSTRzSu7ElementRtzlufc":{"name":"init(words:)","abstract":"
Undocumented
","parent_name":"BigInt"},"Structs/BigUInt/Words.html#/s:Sl10startIndex0B0Qzvp":{"name":"startIndex","parent_name":"Words"},"Structs/BigUInt/Words.html#/s:Sl8endIndex0B0Qzvp":{"name":"endIndex","parent_name":"Words"},"Structs/BigUInt/Words.html#/s:Sly7ElementQz5IndexQzcip":{"name":"subscript(_:)","parent_name":"Words"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV4Worda":{"name":"Word","abstract":"
The type representing a digit in BigUInt
‘s underlying number system.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntVACycfc":{"name":"init()","abstract":"
Initializes a new BigUInt with value 0.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV5wordsACSaySuG_tcfc":{"name":"init(words:)","abstract":"
Initializes a new BigUInt with the specified digits. The digits are ordered from least to most significant.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV1poiyA2C_ACtFZ":{"name":"+(_:_:)","abstract":"
Add a
and b
together and return the result.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2peoiyyACz_ACtFZ":{"name":"+=(_:_:)","abstract":"
Add a
and b
together, and store the sum in a
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:Sz8isSignedSbvpZ":{"name":"isSigned","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV6isZeroSbvp":{"name":"isZero","abstract":"
Return true iff this integer is zero.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV6signumACyF":{"name":"signum()","abstract":"
Returns 1
if this value is, positive; otherwise, 0
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV1topyA2CFZ":{"name":"~(_:)","abstract":"
Return the ones’ complement of a
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2oeoiyyACz_ACtFZ":{"name":"|=(_:_:)","abstract":"
Calculate the bitwise OR of a
and b
, and store the result in a
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2aeoiyyACz_ACtFZ":{"name":"&=(_:_:)","abstract":"
Calculate the bitwise AND of a
and b
and return the result.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2xeoiyyACz_ACtFZ":{"name":"^=(_:_:)","abstract":"
Calculate the bitwise XOR of a
and b
and return the result.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:Se4fromxs7Decoder_p_tKcfc":{"name":"init(from:)","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:SE6encode2toys7Encoder_p_tKF":{"name":"encode(to:)","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV7compareySo18NSComparisonResultVAC_ACtFZ":{"name":"compare(_:_:)","abstract":"
Compare a
to b
and return an NSComparisonResult
indicating their order.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"
Return true iff a
is equal to b
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV1loiySbAC_ACtFZ":{"name":"<(_:_:)","abstract":"
Return true iff a
is less than b
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntVyACSWcfc":{"name":"init(_:)","abstract":"
Initialize a BigInt from bytes accessed from an UnsafeRawBufferPointer
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntVyAC10Foundation4DataVcfc":{"name":"init(_:)","abstract":"
Initializes an integer from the bits stored inside a piece of Data
.","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV9serialize10Foundation4DataVyF":{"name":"serialize()","abstract":"
Return a Data
value that contains the base-256 representation of this integer, in network (big-endian) byte order.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV20quotientAndRemainder10dividingByAC0D0_AC9remaindertAC_tF":{"name":"quotientAndRemainder(dividingBy:)","abstract":"
Divide this integer by y
and return the resulting quotient and remainder.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV1doiyA2C_ACtFZ":{"name":"/(_:_:)","abstract":"
Divide x
by y
and return the quotient.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV1roiyA2C_ACtFZ":{"name":"%(_:_:)","abstract":"
Divide x
by y
and return the remainder.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2deoiyyACz_ACtFZ":{"name":"/=(_:_:)","abstract":"
Divide x
by y
and store the quotient in x
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2reoiyyACz_ACtFZ":{"name":"%=(_:_:)","abstract":"
Divide x
by y
and store the remainder in x
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV5poweryACSiF":{"name":"power(_:)","abstract":"
Returns this integer raised to the power exponent
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV5power_7modulusA2C_ACtF":{"name":"power(_:modulus:)","abstract":"
Returns the remainder of this integer raised to the power exponent
in modulo arithmetic under modulus
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:Sz7exactlyxSgqd___tcSBRd__lufc":{"name":"init(exactly:)","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:Szyxqd__cSBRd__lufc":{"name":"init(_:)","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV21greatestCommonDivisor4withA2C_tF":{"name":"greatestCommonDivisor(with:)","abstract":"
Returns the greatest common divisor of self
and b
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV7inverseyACSgACF":{"name":"inverse(_:)","abstract":"
Returns the multiplicative inverse of this integer in modulo modulus
arithmetic,","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV4hash4intoys6HasherVz_tF":{"name":"hash(into:)","abstract":"
Append this BigUInt
to the specified hasher.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:Sj7exactlyxSgqd___tcSzRd__lufc":{"name":"init(exactly:)","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:Szyxqd__cSzRd__lufc":{"name":"init(_:)","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:Sz18truncatingIfNeededxqd___tcSzRd__lufc":{"name":"init(truncatingIfNeeded:)","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:Sz8clampingxqd___tcSzRd__lufc":{"name":"init(clamping:)","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV14integerLiteralACs6UInt64V_tcfc":{"name":"init(integerLiteral:)","abstract":"
Initialize a new big integer from an integer literal.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV8multiply6byWordySu_tF":{"name":"multiply(byWord:)","abstract":"
Multiply this big integer by a single word, and store the result in place of the original big integer.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV10multiplied6byWordACSu_tF":{"name":"multiplied(byWord:)","abstract":"
Multiply this big integer by a single Word, and return the result.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV14multiplyAndAdd__9shiftedByyAC_SuSitF":{"name":"multiplyAndAdd(_:_:shiftedBy:)","abstract":"
Multiply x
by y
, and add the result to this integer, optionally shifted shift
words to the left.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV10multiplied2byA2C_tF":{"name":"multiplied(by:)","abstract":"
Multiply this integer by y
and return the result.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV25directMultiplicationLimitSivpZ":{"name":"directMultiplicationLimit","abstract":"
Multiplication switches to an asymptotically better recursive algorithm when arguments have more words than this limit.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV1moiyA2C_ACtFZ":{"name":"*(_:_:)","abstract":"
Multiply a
by b
and return the result.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2meoiyyACz_ACtFZ":{"name":"*=(_:_:)","abstract":"
Multiply a
by b
and store the result in a
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV21isStrongProbablePrimeySbACF":{"name":"isStrongProbablePrime(_:)","abstract":"
Returns true iff this integer passes the strong probable prime test for the specified base.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV7isPrime6roundsSbSi_tF":{"name":"isPrime(rounds:)","abstract":"
Returns true if this integer is probably prime. Returns false if this integer is definitely not prime.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV13randomInteger16withMaximumWidth5usingACSi_xztSGRzlFZ":{"name":"randomInteger(withMaximumWidth:using:)","abstract":"
Create a big unsigned integer consisting of width
uniformly distributed random bits.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV13randomInteger16withMaximumWidthACSi_tFZ":{"name":"randomInteger(withMaximumWidth:)","abstract":"
Create a big unsigned integer consisting of width
uniformly distributed random bits.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV13randomInteger14withExactWidth5usingACSi_xztSGRzlFZ":{"name":"randomInteger(withExactWidth:using:)","abstract":"
Create a big unsigned integer consisting of width-1
uniformly distributed random bits followed by a one bit.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV13randomInteger14withExactWidthACSi_tFZ":{"name":"randomInteger(withExactWidth:)","abstract":"
Create a big unsigned integer consisting of width-1
uniformly distributed random bits followed by a one bit.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV13randomInteger8lessThan5usingA2C_xztSGRzlFZ":{"name":"randomInteger(lessThan:using:)","abstract":"
Create a uniformly distributed random unsigned integer that’s less than the specified limit.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV13randomInteger8lessThanA2C_tFZ":{"name":"randomInteger(lessThan:)","abstract":"
Create a uniformly distributed random unsigned integer that’s less than the specified limit.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV3ggeoiyyACz_xtSzRzlFZ":{"name":">>=(_:_:)","abstract":"
Undocumented
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV3lleoiyyACz_xtSzRzlFZ":{"name":"<<=(_:_:)","abstract":"
Undocumented
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2ggoiyA2C_xtSzRzlFZ":{"name":">>(_:_:)","abstract":"
Undocumented
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2lloiyA2C_xtSzRzlFZ":{"name":"<<(_:_:)","abstract":"
Undocumented
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV10squareRootACyF":{"name":"squareRoot()","abstract":"
Returns the integer square root of a big integer; i.e., the largest integer whose square isn’t greater than value
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV6Stridea":{"name":"Stride","abstract":"
A type that can represent the distance between two values ofa BigUInt
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV8advanced2byAc2AV_tF":{"name":"advanced(by:)","abstract":"
Adds n
to self
and returns the result. Traps if the result would be less than zero.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV8distance2toA2AVAC_tF":{"name":"distance(to:)","abstract":"
Returns the (potentially negative) difference between self
and other
as a BigInt
. Never traps.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV_5radixACSgx_SitcSyRzlufc":{"name":"init(_:radix:)","abstract":"
Initialize a big integer from an ASCII representation in a given radix. Numerals above 9
are represented by","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV20unicodeScalarLiteralACs7UnicodeO0E0V_tcfc":{"name":"init(unicodeScalarLiteral:)","abstract":"
Initialize a new big integer from a Unicode scalar.","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV30extendedGraphemeClusterLiteralACSS_tcfc":{"name":"init(extendedGraphemeClusterLiteral:)","abstract":"
Initialize a new big integer from an extended grapheme cluster.","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV13stringLiteralACSS_tcfc":{"name":"init(stringLiteral:)","abstract":"
Initialize a new big integer from a decimal number represented by a string literal of arbitrary length.","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV11descriptionSSvp":{"name":"description","abstract":"
Return the decimal representation of this integer.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV21playgroundDescriptionypvp":{"name":"playgroundDescription","abstract":"
Return the playground quick look representation of this integer.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV25subtractReportingOverflow_9shiftedBySbAC_SitF":{"name":"subtractReportingOverflow(_:shiftedBy:)","abstract":"
Subtract other
from this integer in place, and return a flag indicating if the operation caused an","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV28subtractingReportingOverflow_9shiftedByAC12partialValue_Sb8overflowtAC_SitF":{"name":"subtractingReportingOverflow(_:shiftedBy:)","abstract":"
Subtract other
from this integer, returning the difference and a flag indicating arithmetic overflow.","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV28subtractingReportingOverflowyAC12partialValue_Sb8overflowtACF":{"name":"subtractingReportingOverflow(_:)","abstract":"
Subtracts other
from self
, returning the result and a flag indicating arithmetic overflow.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV8subtract_9shiftedByyAC_SitF":{"name":"subtract(_:shiftedBy:)","abstract":"
Subtract other
from this integer in place.","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV11subtracting_9shiftedByA2C_SitF":{"name":"subtracting(_:shiftedBy:)","abstract":"
Subtract b
from this integer, and return the difference.","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV9decrement9shiftedByySi_tF":{"name":"decrement(shiftedBy:)","abstract":"
Decrement this integer by one.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV1soiyA2C_ACtFZ":{"name":"-(_:_:)","abstract":"
Subtract b
from a
and return the result.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV2seoiyyACz_ACtFZ":{"name":"-=(_:_:)","abstract":"
Subtract b
from a
and store the result in a
.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV5bitAtSbSi_tcip":{"name":"subscript(bitAt:)","abstract":"
Undocumented
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV8bitWidthSivp":{"name":"bitWidth","abstract":"
The minimum number of bits required to represent this integer in binary.
","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV19leadingZeroBitCountSivp":{"name":"leadingZeroBitCount","abstract":"
The number of leading zero bits in the binary representation of this integer in base 2^(Word.bitWidth)
.","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV20trailingZeroBitCountSivp":{"name":"trailingZeroBitCount","abstract":"
The number of trailing zero bits in the binary representation of this integer.
","parent_name":"BigUInt"},"Structs/BigUInt/Words.html":{"name":"Words","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:Sz5words5WordsQzvp":{"name":"words","parent_name":"BigUInt"},"Structs/BigUInt.html#/s:6BigInt0A4UIntV5wordsACx_tcSTRzSu7ElementRtzlufc":{"name":"init(words:)","abstract":"
Undocumented
","parent_name":"BigUInt"},"Structs/BigUInt.html":{"name":"BigUInt","abstract":"
An arbitary precision unsigned integer type, also known as a “big integer”.
"},"Structs/BigInt.html":{"name":"BigInt","abstract":"
An arbitary precision signed integer type, also known as a “big integer”.
"},"Extensions/String.html#/s:SS6BigIntEySSAA0A4UIntVcfc":{"name":"init(_:)","abstract":"
Initialize a new string with the base-10 representation of an unsigned big integer.
","parent_name":"String"},"Extensions/String.html#/s:SS6BigIntE_5radix9uppercaseSSAA0A4UIntV_SiSbtcfc":{"name":"init(_:radix:uppercase:)","abstract":"
Initialize a new string representing an unsigned big integer in the given radix (base).
","parent_name":"String"},"Extensions/String.html#/s:SS6BigIntE_5radix9uppercaseSSA2AV_SiSbtcfc":{"name":"init(_:radix:uppercase:)","abstract":"
Initialize a new string representing a signed big integer in the given radix (base).
","parent_name":"String"},"Extensions/BinaryFloatingPoint.html#/s:SB6BigInts17FixedWidthInteger11RawExponentRpzsAB0F11SignificandRpzrlEyxA2AVcfc":{"name":"init(_:)","abstract":"
Undocumented
","parent_name":"BinaryFloatingPoint"},"Extensions/BinaryFloatingPoint.html#/s:SB6BigInts17FixedWidthInteger11RawExponentRpzsAB0F11SignificandRpzrlEyxAA0A4UIntVcfc":{"name":"init(_:)","abstract":"
Undocumented
","parent_name":"BinaryFloatingPoint"},"Extensions/BinaryFloatingPoint.html":{"name":"BinaryFloatingPoint"},"Extensions/String.html":{"name":"String"},"Extensions.html":{"name":"Extensions","abstract":"
The following extensions are available globally.
"},"Structs.html":{"name":"Structures","abstract":"
The following structures are available globally.
"}}
\ No newline at end of file
diff --git a/docs/docsets/BigInt.docset/Contents/Resources/docSet.dsidx b/docs/docsets/BigInt.docset/Contents/Resources/docSet.dsidx
new file mode 100644
index 0000000000000000000000000000000000000000..4e6e807b56f6c5b327986169baee535ff5e47bca
GIT binary patch
literal 45056
zcmeHQd2k!odEW)FiyJU)%QQ^GqAW|IZUVe%T>uGCq(o9AsEaya5LkgL;vx=`pd>5n
z#BrK9XLC4d<(zix#E#RBn@pW{rky6O<8-ENI%zWPWYW5s$;7S`x3QD7Y2$wH?Lh$C
zU7VEj2Q*`ulJ@=H_r7<2-}`;v3rrnnvrPM?WI7(ows#S?5F|+)X>TV8;(7Sb4F8G0
zH1LB?`~&=-EcjXJ$LEQCfd{PcuNwP4!v0?Pt@*2|fu;tU8fa>usez^jni^
eV!R#`^kyXsgu6;
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
Ro$Aumr;8FfBu%{M{{d@?r3e53
literal 0
HcmV?d00001
diff --git a/docs/docsets/BigInt.tgz b/docs/docsets/BigInt.tgz
new file mode 100644
index 0000000000000000000000000000000000000000..dea03bf9839532f90543d560a5440962300f11f8
GIT binary patch
literal 112129
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