|
ActiveTcl User Guide |
|
[ Main table Of Contents | Tcllib Table Of Contents | Tcllib Index ]
base32::core(n) 0.1 "Base32 encoding"
base32::core - Expanding basic base32 maps
TABLE OF
CONTENTS
SYNOPSIS
DESCRIPTION
API
KEYWORDS
COPYRIGHT
package require Tcl 8.4
package require base32::core ?0.1?
This package provides generic commands for the construction of
full base32 mappings from a basic mapping listing just the codes
and associated characters. The full mappings, regular and inverse,
created here map to and from bit sequences, and also handle the
partial mappings at the end of a string.
This is in essence an internal package to be used by
implementors of a base32 en- and decoder. A regular user has no
need of this package at all.
- ::base32::core::define map forwvar backwvar ivar
- This command computes full forward and backward (inverse)
mappings from the basic map and stores them in
the variables named by forwvar and backwvar resp. It also constructs a regexp pattern for
the detection of invalid characters in supposedly base32 encoded
input and stores it in the variable named by ivar.
- ::base32::core::valid string pattern mvar
- This command checks if the input string is a
valid base32 encoded string, based on the pattern of invalid characters as generated by ::base32::core::define, and some other general rules.
The result of the command is a boolean flag. Its value is
True for a valid string, and
False otherwise. In the latter case an error
message describing the problem with the input is stored into the
variable named by mvar. The variable is not
touched if the input was found to be valid.
The rules checked by the command, beyond rejection of bad
characters, are:
- The length of the input is not a multiple of eight,
- The padding appears not at the end of input, but in the
middle,
- The padding has not of length six, four, three, or one
characters,
base32
Copyright © Public domain