1017 B
1017 B
UNPACKERS SPECIFICATIONS
Nothing very difficult: an unpacker is a submodule placed in the directory where this file was found. Each unpacker must define three symbols:
PRIORITY
: integer number expressing the priority in applying this unpacker. Lower number means higher priority. Makes sense only if a source file has been packed with more than one packer.detect(source)
: returnsTrue
if source is packed, otherwise,False
.unpack(source)
: takes asource
string and unpacks it. Must always return valid JavaScript. That is to say, your code should look like:
if detect(source):
return do_your_fancy_things_with(source)
else:
return source
You can safely define any other symbol in your module, as it will be ignored.
__init__
code will automatically load new unpackers, without any further step
to be accomplished. Simply drop it in this directory.