Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @echo off&SETLOCAL ENABLEDELAYEDEXPANSION
- GoTo:code
- FOR %%x IN ("%~1","%~2","%~3") DO (
- IF [%%x]==[""] (
- echo Error.&GoTo:EoF
- )
- )
- IF "%default%"=="" (
- SET default=0
- )
- IF /i "%~1"=="newarray" (
- IF NOT "%~7"=="" (
- SET array[1]=%~2
- SET array[2]=%~3
- SET array[3]=%~4
- SET array[4]=%~5
- SET array[5]=%~6
- SET array[6]=%~7
- CALL:new5
- GoTo:EoF
- )
- IF NOT "%~6"=="" (
- SET array[1]=%~2
- SET array[2]=%~3
- SET array[3]=%~4
- SET array[4]=%~5
- SET array[5]=%~6
- CALL:new4
- GoTo:EoF
- )
- IF NOT "%~5"=="" (
- SET array[1]=%~2
- SET array[2]=%~3
- SET array[3]=%~4
- SET array[4]=%~5
- CALL:new3
- GoTo:EoF
- )
- IF NOT "%~4"=="" (
- SET array[1]=%~2
- SET array[2]=%~3
- SET array[3]=%~4
- CALL:new2
- GoTo:EoF
- )
- IF NOT "%~3"=="" (
- SET array[1]=%~2
- SET array[2]=%~3
- CALL:new1
- GoTo:EoF
- )
- )
- IF /i "%~1"=="expandarray" (
- CALL:defined %~2
- IF NOT "%~7"=="" (
- SET array[rows]=!%~2.rows!
- SET array[columns]=!%~2.columns!
- SET array[len]=!%~2.len!
- SET array[len4]=!%~2.len4!
- SET array[len5]=!%~2.len5!
- SET array[1]=%~2
- SET array[2]=%~3
- SET array[3]=%~4
- SET array[4]=%~5
- SET array[5]=%~6
- SET array[6]=%~7
- CALL:edit5
- GoTo:EoF
- )
- IF NOT "%~6"=="" (
- SET array[rows]=!%~2.rows!
- SET array[columns]=!%~2.columns!
- SET array[len]=!%~2.len!
- SET array[len4]=!%~2.len4!
- SET array[1]=%~2
- SET array[2]=%~3
- SET array[3]=%~4
- SET array[4]=%~5
- SET array[5]=%~6
- CALL:edit4
- GoTo:EoF
- )
- IF NOT "%~5"=="" (
- SET array[rows]=!%~2.rows!
- SET array[columns]=!%~2.columns!
- SET array[len]=!%~2.len!
- SET array[1]=%~2
- SET array[2]=%~3
- SET array[3]=%~4
- SET array[4]=%~5
- CALL:edit3
- GoTo:EoF
- )
- IF NOT "%~4"=="" (
- SET array[rows]=!%~2.rows!
- SET array[columns]=!%~2.columns!
- SET array[1]=%~2
- SET array[2]=%~3
- SET array[3]=%~4
- CALL:edit2
- GoTo:EoF
- )
- IF NOT "%~3"=="" (
- SET array[rows]=!%~2.rows!
- SET array[1]=%~2
- SET array[2]=%~3
- CALL:edit1
- GoTo:EoF
- )
- )
- IF /i "%~1"=="pointer" (
- CALL:defined %~4
- IF /i "%~2"=="asign" (
- IF NOT "%~4"=="" (
- SET array[val]=%~3
- SET array[var]=%~4
- CALL:asign
- GoTo:EoF
- )
- )
- IF /i "%~2"=="create" (
- CALL:defined %~4
- SET array[var]=%~3
- SET array[where]=%~4
- CALL:create
- GoTo:EoF
- )
- )
- IF /i "%~1"=="save" (
- CALL:defined %~2
- SET array[save]=%~2
- SET array[dir]=%~3
- CALL:save
- GoTo:EoF
- )
- IF /i "%~1"=="load" (
- SET array[dir]=%~2
- SET array[state]=%~3
- CALL:load
- GoTo:EoF
- )
- echo Error.&GoTo:EoF
- :new1
- SET %array[1]%=array
- SET %array[1]%.rows=%array[2]%
- FOR /L %%e IN (0,1,%array[2]%) DO (
- SET %array[1]%[%%e]=%default%
- )
- SET default=0
- GoTo:EoF
- :new2
- SET %array[1]%=array
- SET %array[1]%.rows=%array[2]%
- SET %array[1]%.columns=%array[3]%
- FOR /L %%f IN (0,1,%array[2]%) DO (
- FOR /L %%c IN (0,1,%array[3]%) DO (
- SET %array[1]%[%%f.%%c]=%default%
- )
- )
- SET default=0
- GoTo:EoF
- :new3
- SET %array[1]%=array
- SET %array[1]%.rows=%array[2]%
- SET %array[1]%.columns=%array[3]%
- SET %array[1]%.len=%array[4]%
- FOR /L %%f IN (0,1,%array[2]%) DO (
- FOR /L %%c IN (0,1,%array[3]%) DO (
- FOR /L %%r IN (0,1,%array[4]%) DO (
- SET %array[1]%[%%f.%%c.%%r]=%default%
- )
- )
- )
- SET default=0
- GoTo:EoF
- :new4
- SET %array[1]%=array
- SET %array[1]%.rows=%array[2]%
- SET %array[1]%.columns=%array[3]%
- SET %array[1]%.len=%array[4]%
- SET %array[1]%.len4=%array[5]%
- FOR /L %%f IN (0,1,%array[2]%) DO (
- FOR /L %%c IN (0,1,%array[3]%) DO (
- FOR /L %%r IN (0,1,%array[4]%) DO (
- FOR /L %%p IN (0,1,%array[5]%) DO (
- SET %array[1]%[%%f.%%c.%%r.%%p]=%default%
- )
- )
- )
- )
- SET default=0
- GoTo:EoF
- :new5
- SET %array[1]%=array
- SET %array[1]%.rows=%array[2]%
- SET %array[1]%.columns=%array[3]%
- SET %array[1]%.len=%array[4]%
- SET %array[1]%.len4=%array[5]%
- SET %array[1]%.len5=%array[6]%
- FOR /L %%f IN (0,1,%array[2]%) DO (
- FOR /L %%c IN (0,1,%array[3]%) DO (
- FOR /L %%r IN (0,1,%array[4]%) DO (
- FOR /L %%p IN (0,1,%array[5]%) DO (
- FOR /L %%k IN (0,1,%array[6]%) DO (
- SET %array[1]%[%%f.%%c.%%r.%%p.%%k]=%default%
- )
- )
- )
- )
- )
- SET default=0
- GoTo:EoF
- :edit1
- SET %array[1]%=array
- SET %array[1]%.rows=%array[2]%
- FOR /L %%e IN (%array[rows]%,1,%array[2]%) DO (
- SET %array[1]%[%%e]=%default%
- )
- SET default=0
- GoTo:EoF
- :edit2
- SET %array[1]%=array
- SET %array[1]%.rows=%array[2]%
- SET %array[1]%.columns=%array[3]%
- FOR /L %%f IN (%array[rows]%,1,%array[2]%) DO (
- FOR /L %%c IN (%array[columns]%,1,%array[3]%) DO (
- SET %array[1]%[%%f.%%c]=%default%
- )
- )
- SET default=0
- GoTo:EoF
- :edit3
- SET %array[1]%=array
- SET %array[1]%.rows=%array[2]%
- SET %array[1]%.columns=%array[3]%
- SET %array[1]%.len=%array[4]%
- FOR /L %%f IN (%array[rows]%,1,%array[2]%) DO (
- FOR /L %%c IN (%array[columns]%,1,%array[3]%) DO (
- FOR /L %%r IN (%array[len]%,1,%array[4]%) DO (
- SET %array[1]%[%%f.%%c.%%r]=%default%
- )
- )
- )
- SET default=0
- GoTo:EoF
- :edit4
- SET %array[1]%=array
- SET %array[1]%.rows=%array[2]%
- SET %array[1]%.columns=%array[3]%
- SET %array[1]%.len=%array[4]%
- SET %array[1]%.len4=%array[5]%
- FOR /L %%f IN (%array[rows]%,1,%array[2]%) DO (
- FOR /L %%c IN (%array[columns]%,1,%array[3]%) DO (
- FOR /L %%r IN (%array[len]%,1,%array[4]%) DO (
- FOR /L %%p IN (%array[len4]%,1,%array[5]%) DO (
- SET %array[1]%[%%f.%%c.%%r.%%p]=%default%
- )
- )
- )
- )
- SET default=0
- GoTo:EoF
- :edit5
- SET %array[1]%=array
- SET %array[1]%.rows=%array[2]%
- SET %array[1]%.columns=%array[3]%
- SET %array[1]%.len=%array[4]%
- SET %array[1]%.len4=%array[5]%
- SET %array[1]%.len5=%array[6]%
- FOR /L %%f IN (%array[rows]%,1,%array[2]%) DO (
- FOR /L %%c IN (%array[columns]%,1,%array[3]%) DO (
- FOR /L %%r IN (%array[len]%,1,%array[4]%) DO (
- FOR /L %%p IN (%array[len4]%,1,%array[5]%) DO (
- FOR /L %%k IN (%array[len5]%,1,%array[6]%) DO (
- SET %array[1]%[%%f.%%c.%%r.%%p.%%k]=%default%
- )
- )
- )
- )
- )
- SET default=0
- GoTo:EoF
- :create
- SET %array[var]%[array]=%array[where]%
- SET %array[var]%=!%array[where]%!
- GoTo:EoF
- :asign
- SET %array[var]%=%array[val]%
- SET !%array[var]%[array]!=!%array[var]%!
- GoTo:EoF
- :defined
- IF NOT DEFINED %~1 (
- echo Array does not exist.&pause>nul&exit
- )
- GoTo:EoF
- :save
- CALL:defined %array[save]%
- SET %array[save]%>%array[dir]%
- GoTo:EoF
- :load
- IF NOT EXIST "%array[dir]%" (
- echo File not found.&GoTo:EoF
- )
- FOR /F "tokens=*" %%x IN (%array[dir]%) DO (
- SET "%%x"
- )
- IF /i "%array[state]%"=="D" (
- DEL /F /Q %array[dir]%
- GoTo:EoF
- )
- IF /i "%array[state]%"=="ND" (
- GoTo:EoF
- )
- GoTo:EoF
- :quitbar
- SET var=%1
- SET %1=!%var%:_= !
- GoTo:EoF
- :putbar
- SET var=%1
- SET %1=!%var%: =_!
- GoTo:EoF
- :code
- REM Your code here
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement