summaryrefslogtreecommitdiff
path: root/tex/context/base/l-number.lua
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2009-09-11 18:14:00 +0200
committerHans Hagen <pragma@wxs.nl>2009-09-11 18:14:00 +0200
commit31c85bed04f79cca40e26af118964bd86e8edd16 (patch)
tree64815e1310af371e9ad9f87913b7fa33357f0da2 /tex/context/base/l-number.lua
parent8683bfc5e51de9f4436c7deebd9517c9f2779f0a (diff)
downloadcontext-31c85bed04f79cca40e26af118964bd86e8edd16.tar.gz
beta 2009.09.11 18:14
Diffstat (limited to 'tex/context/base/l-number.lua')
-rw-r--r--tex/context/base/l-number.lua15
1 files changed, 13 insertions, 2 deletions
diff --git a/tex/context/base/l-number.lua b/tex/context/base/l-number.lua
index c0434fd5d..39ca2c6b6 100644
--- a/tex/context/base/l-number.lua
+++ b/tex/context/base/l-number.lua
@@ -6,7 +6,7 @@ if not modules then modules = { } end modules ['l-number'] = {
license = "see context related readme files"
}
-local format = string.format
+local format, foor, insert = string.format, math.floor, table.insert
number = number or { }
@@ -42,4 +42,15 @@ function number.toset(n)
return one:match(tostring(n))
end
-
+function number.bits(n,zero)
+ local t, i = { }, (zero and 0) or 1
+ while n > 0 do
+ local m = n % 2
+ if m > 0 then
+ insert(t,1,i)
+ end
+ n = floor(n/2)
+ i = i + 1
+ end
+ return t
+end