Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,147 @@
|
|||
Font "Courier New"
|
||||
cls
|
||||
Module Checkit {
|
||||
t=(((1,2), (3,4,1),5),) ' use (1,) for one item tuple
|
||||
Tuple$ = lambda$ (a, feed$=" ") -> {
|
||||
\\ we can pass a tuple of two arguments or two arguments
|
||||
k=each(a)
|
||||
lim=len(a)-1
|
||||
res$="("
|
||||
link a to a() ' to use type$()
|
||||
while k {
|
||||
if type$(a(k^))="mArray" then
|
||||
res$+=Lambda$(array(a, k^),feed$+" ")
|
||||
if k^<lim then
|
||||
res$+={,
|
||||
}+feed$
|
||||
end if
|
||||
else
|
||||
res$+= trim$(str$(array(k)))
|
||||
if k^<lim then res$+=", "
|
||||
end if
|
||||
}
|
||||
=res$+")"
|
||||
}
|
||||
TotalPayload = lambda (a)->{
|
||||
k=each(a)
|
||||
link a to a()
|
||||
res=0
|
||||
while k {
|
||||
if type$(a(k^))="mArray" then
|
||||
res+=Lambda(a(k^))
|
||||
else
|
||||
res++
|
||||
end if
|
||||
}
|
||||
=res
|
||||
}
|
||||
Payload = lambda (a,payloads as list)->{
|
||||
misspayloads=List
|
||||
used=list
|
||||
inner=lambda misspayloads, p=1, payloads, used (a)-> {
|
||||
k=each(a)
|
||||
res=(,)
|
||||
link a to a()
|
||||
while k {
|
||||
if type$(a(k^))="mArray" then
|
||||
Append res, (Lambda(a(k^)),)
|
||||
else
|
||||
curpayload$="Payload#"+trim$(str$(array(k)))
|
||||
|
||||
if not exist(payloads, curpayload$) Then
|
||||
if not exist(used, curpayload$) Then
|
||||
Append res, ("missing#pos"+trim$(str$(p)),)
|
||||
append misspayloads, p:=curpayload$
|
||||
else
|
||||
Append res, (curpayload$,)
|
||||
End if
|
||||
p++
|
||||
else
|
||||
Append res, (curpayload$,)
|
||||
if exist(payloads, curpayload$) then
|
||||
delete payloads, curpayload$
|
||||
if not exist(used, curpayload$) then append used, curpayload$
|
||||
end if
|
||||
p++
|
||||
end if
|
||||
end if
|
||||
}
|
||||
=res
|
||||
}
|
||||
=inner(a), payloads, misspayloads
|
||||
}
|
||||
Expand$ =lambda$ (a as array, unused as list, misspayloads as list)-> {
|
||||
Read ? space$
|
||||
inner$= lambda$ (a, feed$=" ")->{
|
||||
k=each(a)
|
||||
lim=len(a)-1
|
||||
res$="["
|
||||
link a to a() ' to use type$()
|
||||
while k {
|
||||
if type$(a(k^))="mArray" then
|
||||
res$+=Lambda$(array(a, k^),feed$+" ")
|
||||
if k^<lim then
|
||||
res$+={,
|
||||
}+feed$
|
||||
end if
|
||||
else
|
||||
res$+= "'"+array$(k)+"'"
|
||||
if k^<lim then res$+=", "
|
||||
end if
|
||||
}
|
||||
=res$+"]"
|
||||
}
|
||||
document unused$="Unused Payloads"+{
|
||||
}
|
||||
if len(unused)>0 then
|
||||
un=each(unused)
|
||||
while un {
|
||||
unused$=" "+eval$(un)+{
|
||||
}
|
||||
}
|
||||
else
|
||||
unused$=" -"
|
||||
end if
|
||||
if len(misspayloads)>0 then
|
||||
un=each(misspayloads)
|
||||
lim=len(misspayloads)-1
|
||||
document missing$="Missing in position: "+{
|
||||
}
|
||||
while un {
|
||||
missing$=" "+eval$(un)+"-pos"+eval$(un,un^)+{
|
||||
}
|
||||
}
|
||||
=inner$(a, space$)+{
|
||||
}+unused$+missing$
|
||||
Else
|
||||
=inner$(a, space$)+{
|
||||
} + unused$
|
||||
End if
|
||||
}
|
||||
flush
|
||||
Data t, (((1,10), (3,4,16),5),)
|
||||
While not empty {
|
||||
Read t
|
||||
Document result$="Payloads:"+{
|
||||
}
|
||||
p=list
|
||||
for i=0 to 6 {
|
||||
Append p, "Payload#"+trim$(str$(i))
|
||||
result$=" "+eval$(p, i)+{
|
||||
}
|
||||
}
|
||||
result$="Template:"+{
|
||||
}
|
||||
result$=" "+Tuple$(t, " ")+{
|
||||
}
|
||||
result$="Template with Payloads:"+{
|
||||
}
|
||||
m=Payload(t, p)
|
||||
result$=" "+Expand$(!m, " ")
|
||||
|
||||
clipboard result$
|
||||
}
|
||||
|
||||
}
|
||||
Checkit
|
||||
Report clipboard$
|
||||
Loading…
Add table
Add a link
Reference in a new issue