Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
baas-ide
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
guxukai
baas-ide
Commits
ee6fe2e5
Unverified
Commit
ee6fe2e5
authored
Aug 20, 2021
by
David Zagi
Committed by
GitHub
Aug 20, 2021
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' into remixd_terminal
parents
4c615736
79a3b32d
Show whitespace changes
Inline
Side-by-side
Showing
43 changed files
with
1740 additions
and
67 deletions
+1740
-67
tsconfig.json
apps/debugger/tsconfig.json
+1
-1
tsconfig.json
apps/remix-ide-e2e/tsconfig.json
+1
-1
compile-tab.js
apps/remix-ide/src/app/tabs/compile-tab.js
+10
-2
test-tab.js
apps/remix-ide/src/app/tabs/test-tab.js
+21
-0
confirmDialog.js
apps/remix-ide/src/app/ui/confirmDialog.js
+2
-2
blockchain.js
apps/remix-ide/src/blockchain/blockchain.js
+4
-4
tsconfig.json
apps/remix-ide/tsconfig.json
+1
-1
tsconfig.json
libs/remix-analyzer/tsconfig.json
+1
-1
tsconfig.json
libs/remix-astwalker/tsconfig.json
+1
-1
tsconfig.json
libs/remix-core-plugin/tsconfig.json
+1
-1
tsconfig.json
libs/remix-debug/tsconfig.json
+1
-1
tsconfig.json
libs/remix-lib/tsconfig.json
+1
-1
tsconfig.json
libs/remix-simulator/tsconfig.json
+1
-1
tsconfig.json
libs/remix-solidity/tsconfig.json
+1
-1
runTestSources.ts
libs/remix-tests/src/runTestSources.ts
+3
-2
testRunner.ts
libs/remix-tests/src/testRunner.ts
+6
-2
types.ts
libs/remix-tests/src/types.ts
+1
-0
assert_ok_test.sol
libs/remix-tests/tests/examples_0/assert_ok_test.sol
+6
-0
console.sol
libs/remix-tests/tests/examples_0/hardhat/console.sol
+1532
-0
testRunner.cli.spec_disabled.ts
libs/remix-tests/tests/testRunner.cli.spec_disabled.ts
+0
-0
testRunner.spec.ts
libs/remix-tests/tests/testRunner.spec.ts
+21
-18
tsconfig.json
libs/remix-tests/tsconfig.json
+1
-1
README.md
libs/remix-ui/README.md
+36
-0
tsconfig.json
libs/remix-ui/checkbox/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/clipboard/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/debugger-ui/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/file-explorer/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/modal-dialog/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/publish-to-storage/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/renderer/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/settings/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/solidity-compiler/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/static-analyser/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/toaster/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/tree-view/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/utils/tsconfig.json
+1
-1
tsconfig.json
libs/remix-ui/workspace/tsconfig.json
+1
-1
tsconfig.json
libs/remix-url-resolver/tsconfig.json
+1
-1
slitherClient.ts
libs/remixd/src/services/slitherClient.ts
+19
-7
tsconfig.json
libs/remixd/tsconfig.json
+1
-1
nx.json
nx.json
+2
-1
tsconfig.base.json
tsconfig.base.json
+48
-0
tsconfig.json
tsconfig.json
+2
-2
No files found.
apps/debugger/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
apps/remix-ide-e2e/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"types"
:
[
"node"
,
"nightwatch"
],
"esModuleInterop"
:
true
...
...
apps/remix-ide/src/app/tabs/compile-tab.js
View file @
ee6fe2e5
...
...
@@ -108,13 +108,21 @@ class CompileTab extends ViewPlugin {
this
.
call
(
'editor'
,
'clearAnnotations'
)
}
this
.
on
(
'filePanel'
,
'setWorkspace'
,
(
workspace
)
=>
{
const
resetView
=
(
isLocalhost
)
=>
{
this
.
compileTabLogic
.
isHardhatProject
().
then
((
result
)
=>
{
if
(
result
&&
workspace
.
isLocalhost
)
this
.
isHardHatProject
=
true
if
(
result
&&
isLocalhost
)
this
.
isHardHatProject
=
true
else
this
.
isHardHatProject
=
false
this
.
renderComponent
()
})
this
.
resetResults
()
}
this
.
on
(
'filePanel'
,
'setWorkspace'
,
(
workspace
)
=>
{
resetView
(
workspace
.
isLocalhost
)
})
this
.
on
(
'remixd'
,
'rootFolderChanged'
,
()
=>
{
resetView
(
true
)
})
this
.
compileTabLogic
.
event
.
on
(
'startingCompilation'
,
this
.
data
.
eventHandlers
.
onStartingCompilation
)
...
...
apps/remix-ide/src/app/tabs/test-tab.js
View file @
ee6fe2e5
import
{
ViewPlugin
}
from
'@remixproject/engine-web'
import
{
removeMultipleSlashes
,
removeTrailingSlashes
}
from
'../../lib/helper'
import
{
canUseWorker
,
urlFromVersion
}
from
'@remix-project/remix-solidity'
import
{
format
}
from
'util'
var
yo
=
require
(
'yo-yo'
)
var
async
=
require
(
'async'
)
var
tooltip
=
require
(
'../ui/tooltip'
)
...
...
@@ -179,6 +180,24 @@ module.exports = class TestTab extends ViewPlugin {
}
}
printHHLogs
(
logsArr
,
testName
)
{
let
finalLogs
=
`<b>
${
testName
}
:</b>\n`
for
(
const
log
of
logsArr
)
{
let
formattedLog
// Hardhat implements the same formatting options that can be found in Node.js' console.log,
// which in turn uses util.format: https://nodejs.org/dist/latest-v12.x/docs/api/util.html#util_util_format_format_args
// For example: console.log("Name: %s, Age: %d", remix, 6) will log 'Name: remix, Age: 6'
// We check first arg to determine if 'util.format' is needed
if
(
typeof
log
[
0
]
===
'string'
&&
(
log
[
0
].
includes
(
'%s'
)
||
log
[
0
].
includes
(
'%d'
)))
{
formattedLog
=
format
(
log
[
0
],
...
log
.
slice
(
1
))
}
else
{
formattedLog
=
log
.
join
(
' '
)
}
finalLogs
=
finalLogs
+
' '
+
formattedLog
+
'
\
n'
}
this
.
call
(
'terminal'
,
'log'
,
{
type
:
'info'
,
value
:
finalLogs
})
}
testCallback
(
result
,
runningTests
)
{
this
.
testsOutput
.
hidden
=
false
if
(
result
.
type
===
'contract'
)
{
...
...
@@ -197,6 +216,7 @@ module.exports = class TestTab extends ViewPlugin {
`
this
.
testsOutput
.
appendChild
(
this
.
outputHeader
)
}
else
if
(
result
.
type
===
'testPass'
)
{
if
(
result
.
hhLogs
&&
result
.
hhLogs
.
length
)
this
.
printHHLogs
(
result
.
hhLogs
,
result
.
value
)
this
.
testsOutput
.
appendChild
(
yo
`
<div
id="
${
this
.
runningTestFileName
}
"
...
...
@@ -208,6 +228,7 @@ module.exports = class TestTab extends ViewPlugin {
</div>
`
)
}
else
if
(
result
.
type
===
'testFailure'
)
{
if
(
result
.
hhLogs
&&
result
.
hhLogs
.
length
)
this
.
printHHLogs
(
result
.
hhLogs
,
result
.
value
)
if
(
!
result
.
assertMethod
)
{
this
.
testsOutput
.
appendChild
(
yo
`
<div
...
...
apps/remix-ide/src/app/ui/confirmDialog.js
View file @
ee6fe2e5
...
...
@@ -113,8 +113,8 @@ function confirmDialog (tx, network, amount, gasEstimation, newGasPriceCb, initi
</div>
</div>
<div class="d-flex py-1 align-items-center custom-control custom-checkbox
${
css
.
checkbox
}
">
<input class="form-check-input custom-control-input" id=
'confirmsetting'
type="checkbox">
<label class="m-0 form-check-label custom-control-label">Do not show this warning again.</label>
<input class="form-check-input custom-control-input" id=
"confirmsetting"
type="checkbox">
<label class="m-0 form-check-label custom-control-label"
for="confirmsetting"
>Do not show this warning again.</label>
</div>
</div>
`
...
...
apps/remix-ide/src/blockchain/blockchain.js
View file @
ee6fe2e5
...
...
@@ -323,8 +323,8 @@ class Blockchain extends Plugin {
// TODO : event should be triggered by Udapp instead of TxListener
/** Listen on New Transaction. (Cannot be done inside constructor because txlistener doesn't exist yet) */
startListening
(
txlistener
)
{
txlistener
.
event
.
register
(
'newTransaction'
,
(
tx
)
=>
{
this
.
events
.
emit
(
'newTransaction'
,
tx
)
txlistener
.
event
.
register
(
'newTransaction'
,
(
tx
,
receipt
)
=>
{
this
.
events
.
emit
(
'newTransaction'
,
tx
,
receipt
)
})
}
...
...
@@ -501,7 +501,7 @@ class Blockchain extends Plugin {
if
(
isVM
)
{
const
hhlogs
=
await
this
.
web3
().
eth
.
getHHLogsForTx
(
txResult
.
transactionHash
)
if
(
hhlogs
&&
hhlogs
.
length
)
{
let
finalLogs
=
'
console.log:
\
n'
let
finalLogs
=
'
<b>console.log:</b>
\
n'
for
(
const
log
of
hhlogs
)
{
let
formattedLog
// Hardhat implements the same formatting options that can be found in Node.js' console.log,
...
...
@@ -513,7 +513,7 @@ class Blockchain extends Plugin {
}
else
{
formattedLog
=
log
.
join
(
' '
)
}
finalLogs
=
finalLogs
+
formattedLog
+
'
\
n'
finalLogs
=
finalLogs
+
' '
+
formattedLog
+
'
\
n'
}
this
.
call
(
'terminal'
,
'log'
,
{
type
:
'info'
,
value
:
finalLogs
})
}
...
...
apps/remix-ide/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-analyzer/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"types"
:
[
"node"
],
"module"
:
"commonjs"
,
...
...
libs/remix-astwalker/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"types"
:
[
"node"
],
"module"
:
"commonjs"
,
...
...
libs/remix-core-plugin/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"files"
:
[],
"include"
:
[],
"references"
:
[
...
...
libs/remix-debug/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"types"
:
[
"node"
,
"tape"
],
"esModuleInterop"
:
true
...
...
libs/remix-lib/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"types"
:
[
"node"
,
"tape"
],
"esModuleInterop"
:
true
...
...
libs/remix-simulator/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"types"
:
[
"node"
,
"mocha"
],
"esModuleInterop"
:
true
...
...
libs/remix-solidity/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"types"
:
[
"node"
]
},
...
...
libs/remix-tests/src/runTestSources.ts
View file @
ee6fe2e5
...
...
@@ -5,7 +5,7 @@ import { deployAll } from './deployer'
import
{
runTest
}
from
'./testRunner'
import
Web3
from
'web3'
import
{
Provider
}
from
'@remix-project/remix-simulator'
import
{
Provider
,
extend
}
from
'@remix-project/remix-simulator'
import
{
FinalResult
,
SrcIfc
,
compilationInterface
,
ASTInterface
,
Options
,
TestResultInterface
,
AstNode
,
CompilerConfiguration
...
...
@@ -17,6 +17,7 @@ const createWeb3Provider = async function () {
const
provider
:
any
=
new
Provider
()
await
provider
.
init
()
web3
.
setProvider
(
provider
)
extend
(
web3
)
return
web3
}
...
...
@@ -102,7 +103,7 @@ export async function runTestSources (contractSources: SrcIfc, compilerConfig: C
async
.
eachOfLimit
(
contractsToTest
,
1
,
(
contractName
:
string
,
index
:
string
|
number
,
cb
:
ErrorCallback
)
=>
{
const
fileAST
:
AstNode
=
sourceASTs
[
contracts
[
contractName
][
'filename'
]]
runTest
(
contractName
,
contracts
[
contractName
],
contractsToTestDetails
[
index
],
fileAST
,
{
accounts
},
_testCallback
,
(
err
,
result
)
=>
{
runTest
(
contractName
,
contracts
[
contractName
],
contractsToTestDetails
[
index
],
fileAST
,
{
accounts
,
web3
},
_testCallback
,
(
err
,
result
)
=>
{
if
(
err
)
{
return
cb
(
err
)
}
...
...
libs/remix-tests/src/testRunner.ts
View file @
ee6fe2e5
...
...
@@ -217,7 +217,7 @@ export function runTest (testName: string, testObject: any, contractDetails: Com
const
isJSONInterfaceAvailable
=
testObject
&&
testObject
.
options
&&
testObject
.
options
.
jsonInterface
if
(
!
isJSONInterfaceAvailable
)
{
return
resultsCallback
(
new
Error
(
'Contract interface not available'
),
{
passingNum
,
failureNum
,
timePassed
})
}
const
runList
:
RunListInterface
[]
=
createRunList
(
testObject
.
options
.
jsonInterface
,
fileAST
,
testName
)
const
web3
=
new
Web3
()
const
web3
=
opts
.
web3
||
new
Web3
()
const
accts
:
TestResultInterface
=
{
type
:
'accountList'
,
value
:
opts
.
accounts
...
...
@@ -282,8 +282,10 @@ export function runTest (testName: string, testObject: any, contractDetails: Com
}
if
(
!
sendParams
)
sendParams
=
{}
sendParams
.
gas
=
10000000
*
8
method
.
send
(
sendParams
).
on
(
'receipt'
,
(
receipt
)
=>
{
method
.
send
(
sendParams
).
on
(
'receipt'
,
async
(
receipt
)
=>
{
try
{
let
hhLogs
if
(
web3
.
eth
&&
web3
.
eth
.
getHHLogsForTx
)
hhLogs
=
await
web3
.
eth
.
getHHLogsForTx
(
receipt
.
transactionHash
)
const
time
:
number
=
(
Date
.
now
()
-
startTime
)
/
1000.0
const
assertionEventHashes
=
assertionEvents
.
map
(
e
=>
Web3
.
utils
.
sha3
(
e
.
name
+
'('
+
e
.
params
.
join
()
+
')'
))
let
testPassed
=
false
...
...
@@ -313,6 +315,7 @@ export function runTest (testName: string, testObject: any, contractDetails: Com
expected
:
testEvent
[
4
],
location
}
if
(
hhLogs
)
resp
.
hhLogs
=
hhLogs
testCallback
(
undefined
,
resp
)
failureNum
+=
1
timePassed
+=
time
...
...
@@ -331,6 +334,7 @@ export function runTest (testName: string, testObject: any, contractDetails: Com
time
:
time
,
context
:
testName
}
if
(
hhLogs
)
resp
.
hhLogs
=
hhLogs
testCallback
(
undefined
,
resp
)
passingNum
+=
1
timePassed
+=
time
...
...
libs/remix-tests/src/types.ts
View file @
ee6fe2e5
...
...
@@ -36,6 +36,7 @@ export interface TestResultInterface {
returned
?:
string
|
number
expected
?:
string
|
number
location
?:
string
hhLogs
?:
[]
}
export
interface
TestCbInterface
{
(
error
:
Error
|
null
|
undefined
,
result
:
TestResultInterface
)
:
void
;
...
...
libs/remix-tests/tests/examples_0/assert_ok_test.sol
View file @
ee6fe2e5
import "remix_tests.sol"; // this import is automatically injected by Remix.
import "./hardhat/console.sol";
contract AssertOkTest {
function okPassTest() public {
console.log("AssertOkTest", "okPassTest");
Assert.ok(true, "okPassTest passes");
}
function okFailTest() public {
console.log("AssertOkTest", "okFailTest");
Assert.ok(false, "okFailTest fails");
}
}
\ No newline at end of file
libs/remix-tests/tests/examples_0/hardhat/console.sol
0 → 100644
View file @
ee6fe2e5
// SPDX-License-Identifier: MIT
pragma solidity >= 0.4.22 <0.9.0;
library console {
address constant CONSOLE_ADDRESS = address(0x000000000000000000636F6e736F6c652e6c6f67);
function _sendLogPayload(bytes memory payload) private view {
uint256 payloadLength = payload.length;
address consoleAddress = CONSOLE_ADDRESS;
assembly {
let payloadStart := add(payload, 32)
let r := staticcall(gas(), consoleAddress, payloadStart, payloadLength, 0, 0)
}
}
function log() internal view {
_sendLogPayload(abi.encodeWithSignature("log()"));
}
function logInt(int p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(int)", p0));
}
function logUint(uint p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint)", p0));
}
function logString(string memory p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string)", p0));
}
function logBool(bool p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool)", p0));
}
function logAddress(address p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address)", p0));
}
function logBytes(bytes memory p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes)", p0));
}
function logBytes1(bytes1 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes1)", p0));
}
function logBytes2(bytes2 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes2)", p0));
}
function logBytes3(bytes3 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes3)", p0));
}
function logBytes4(bytes4 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes4)", p0));
}
function logBytes5(bytes5 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes5)", p0));
}
function logBytes6(bytes6 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes6)", p0));
}
function logBytes7(bytes7 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes7)", p0));
}
function logBytes8(bytes8 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes8)", p0));
}
function logBytes9(bytes9 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes9)", p0));
}
function logBytes10(bytes10 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes10)", p0));
}
function logBytes11(bytes11 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes11)", p0));
}
function logBytes12(bytes12 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes12)", p0));
}
function logBytes13(bytes13 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes13)", p0));
}
function logBytes14(bytes14 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes14)", p0));
}
function logBytes15(bytes15 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes15)", p0));
}
function logBytes16(bytes16 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes16)", p0));
}
function logBytes17(bytes17 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes17)", p0));
}
function logBytes18(bytes18 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes18)", p0));
}
function logBytes19(bytes19 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes19)", p0));
}
function logBytes20(bytes20 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes20)", p0));
}
function logBytes21(bytes21 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes21)", p0));
}
function logBytes22(bytes22 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes22)", p0));
}
function logBytes23(bytes23 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes23)", p0));
}
function logBytes24(bytes24 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes24)", p0));
}
function logBytes25(bytes25 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes25)", p0));
}
function logBytes26(bytes26 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes26)", p0));
}
function logBytes27(bytes27 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes27)", p0));
}
function logBytes28(bytes28 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes28)", p0));
}
function logBytes29(bytes29 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes29)", p0));
}
function logBytes30(bytes30 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes30)", p0));
}
function logBytes31(bytes31 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes31)", p0));
}
function logBytes32(bytes32 p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bytes32)", p0));
}
function log(uint p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint)", p0));
}
function log(string memory p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string)", p0));
}
function log(bool p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool)", p0));
}
function log(address p0) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address)", p0));
}
function log(uint p0, uint p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint)", p0, p1));
}
function log(uint p0, string memory p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string)", p0, p1));
}
function log(uint p0, bool p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool)", p0, p1));
}
function log(uint p0, address p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address)", p0, p1));
}
function log(string memory p0, uint p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint)", p0, p1));
}
function log(string memory p0, string memory p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string)", p0, p1));
}
function log(string memory p0, bool p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool)", p0, p1));
}
function log(string memory p0, address p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address)", p0, p1));
}
function log(bool p0, uint p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint)", p0, p1));
}
function log(bool p0, string memory p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string)", p0, p1));
}
function log(bool p0, bool p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool)", p0, p1));
}
function log(bool p0, address p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address)", p0, p1));
}
function log(address p0, uint p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint)", p0, p1));
}
function log(address p0, string memory p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string)", p0, p1));
}
function log(address p0, bool p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool)", p0, p1));
}
function log(address p0, address p1) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address)", p0, p1));
}
function log(uint p0, uint p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint)", p0, p1, p2));
}
function log(uint p0, uint p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,string)", p0, p1, p2));
}
function log(uint p0, uint p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool)", p0, p1, p2));
}
function log(uint p0, uint p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,address)", p0, p1, p2));
}
function log(uint p0, string memory p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,uint)", p0, p1, p2));
}
function log(uint p0, string memory p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,string)", p0, p1, p2));
}
function log(uint p0, string memory p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,bool)", p0, p1, p2));
}
function log(uint p0, string memory p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,address)", p0, p1, p2));
}
function log(uint p0, bool p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint)", p0, p1, p2));
}
function log(uint p0, bool p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,string)", p0, p1, p2));
}
function log(uint p0, bool p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool)", p0, p1, p2));
}
function log(uint p0, bool p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,address)", p0, p1, p2));
}
function log(uint p0, address p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,uint)", p0, p1, p2));
}
function log(uint p0, address p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,string)", p0, p1, p2));
}
function log(uint p0, address p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,bool)", p0, p1, p2));
}
function log(uint p0, address p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,address)", p0, p1, p2));
}
function log(string memory p0, uint p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,uint)", p0, p1, p2));
}
function log(string memory p0, uint p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,string)", p0, p1, p2));
}
function log(string memory p0, uint p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,bool)", p0, p1, p2));
}
function log(string memory p0, uint p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,address)", p0, p1, p2));
}
function log(string memory p0, string memory p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,uint)", p0, p1, p2));
}
function log(string memory p0, string memory p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,string)", p0, p1, p2));
}
function log(string memory p0, string memory p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,bool)", p0, p1, p2));
}
function log(string memory p0, string memory p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,address)", p0, p1, p2));
}
function log(string memory p0, bool p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,uint)", p0, p1, p2));
}
function log(string memory p0, bool p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,string)", p0, p1, p2));
}
function log(string memory p0, bool p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,bool)", p0, p1, p2));
}
function log(string memory p0, bool p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,address)", p0, p1, p2));
}
function log(string memory p0, address p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,uint)", p0, p1, p2));
}
function log(string memory p0, address p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,string)", p0, p1, p2));
}
function log(string memory p0, address p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,bool)", p0, p1, p2));
}
function log(string memory p0, address p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,address)", p0, p1, p2));
}
function log(bool p0, uint p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint)", p0, p1, p2));
}
function log(bool p0, uint p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,string)", p0, p1, p2));
}
function log(bool p0, uint p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool)", p0, p1, p2));
}
function log(bool p0, uint p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,address)", p0, p1, p2));
}
function log(bool p0, string memory p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,uint)", p0, p1, p2));
}
function log(bool p0, string memory p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,string)", p0, p1, p2));
}
function log(bool p0, string memory p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,bool)", p0, p1, p2));
}
function log(bool p0, string memory p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,address)", p0, p1, p2));
}
function log(bool p0, bool p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint)", p0, p1, p2));
}
function log(bool p0, bool p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,string)", p0, p1, p2));
}
function log(bool p0, bool p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool)", p0, p1, p2));
}
function log(bool p0, bool p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,address)", p0, p1, p2));
}
function log(bool p0, address p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,uint)", p0, p1, p2));
}
function log(bool p0, address p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,string)", p0, p1, p2));
}
function log(bool p0, address p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,bool)", p0, p1, p2));
}
function log(bool p0, address p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,address)", p0, p1, p2));
}
function log(address p0, uint p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,uint)", p0, p1, p2));
}
function log(address p0, uint p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,string)", p0, p1, p2));
}
function log(address p0, uint p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,bool)", p0, p1, p2));
}
function log(address p0, uint p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,address)", p0, p1, p2));
}
function log(address p0, string memory p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,uint)", p0, p1, p2));
}
function log(address p0, string memory p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,string)", p0, p1, p2));
}
function log(address p0, string memory p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,bool)", p0, p1, p2));
}
function log(address p0, string memory p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,address)", p0, p1, p2));
}
function log(address p0, bool p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,uint)", p0, p1, p2));
}
function log(address p0, bool p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,string)", p0, p1, p2));
}
function log(address p0, bool p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,bool)", p0, p1, p2));
}
function log(address p0, bool p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,address)", p0, p1, p2));
}
function log(address p0, address p1, uint p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,uint)", p0, p1, p2));
}
function log(address p0, address p1, string memory p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,string)", p0, p1, p2));
}
function log(address p0, address p1, bool p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,bool)", p0, p1, p2));
}
function log(address p0, address p1, address p2) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,address)", p0, p1, p2));
}
function log(uint p0, uint p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,uint)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,string)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,bool)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,uint,address)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,uint)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,string)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,bool)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,string,address)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,uint)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,string)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,bool)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,bool,address)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,uint)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,string)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,bool)", p0, p1, p2, p3));
}
function log(uint p0, uint p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,uint,address,address)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,uint)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,string)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,bool)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,uint,address)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,string,uint)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,string,string)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,string,bool)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,string,address)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,uint)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,string)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,bool)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,bool,address)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,address,uint)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,address,string)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,address,bool)", p0, p1, p2, p3));
}
function log(uint p0, string memory p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,string,address,address)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,uint)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,string)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,bool)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,uint,address)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,uint)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,string)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,bool)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,string,address)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,uint)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,string)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,bool)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,bool,address)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,uint)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,string)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,bool)", p0, p1, p2, p3));
}
function log(uint p0, bool p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,bool,address,address)", p0, p1, p2, p3));
}
function log(uint p0, address p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,uint)", p0, p1, p2, p3));
}
function log(uint p0, address p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,string)", p0, p1, p2, p3));
}
function log(uint p0, address p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,bool)", p0, p1, p2, p3));
}
function log(uint p0, address p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,uint,address)", p0, p1, p2, p3));
}
function log(uint p0, address p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,string,uint)", p0, p1, p2, p3));
}
function log(uint p0, address p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,string,string)", p0, p1, p2, p3));
}
function log(uint p0, address p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,string,bool)", p0, p1, p2, p3));
}
function log(uint p0, address p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,string,address)", p0, p1, p2, p3));
}
function log(uint p0, address p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,uint)", p0, p1, p2, p3));
}
function log(uint p0, address p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,string)", p0, p1, p2, p3));
}
function log(uint p0, address p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,bool)", p0, p1, p2, p3));
}
function log(uint p0, address p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,bool,address)", p0, p1, p2, p3));
}
function log(uint p0, address p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,address,uint)", p0, p1, p2, p3));
}
function log(uint p0, address p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,address,string)", p0, p1, p2, p3));
}
function log(uint p0, address p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,address,bool)", p0, p1, p2, p3));
}
function log(uint p0, address p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(uint,address,address,address)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,uint)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,string)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,bool)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,uint,address)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,string,uint)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,string,string)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,string,bool)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,string,address)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,uint)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,string)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,bool)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,bool,address)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,address,uint)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,address,string)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,address,bool)", p0, p1, p2, p3));
}
function log(string memory p0, uint p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,uint,address,address)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,uint,uint)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,uint,string)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,uint,bool)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,uint,address)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,string,uint)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,string,string)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,string,bool)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,string,address)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,bool,uint)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,bool,string)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,bool,bool)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,bool,address)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,address,uint)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,address,string)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,address,bool)", p0, p1, p2, p3));
}
function log(string memory p0, string memory p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,string,address,address)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,uint)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,string)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,bool)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,uint,address)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,string,uint)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,string,string)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,string,bool)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,string,address)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,uint)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,string)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,bool)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,bool,address)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,address,uint)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,address,string)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,address,bool)", p0, p1, p2, p3));
}
function log(string memory p0, bool p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,bool,address,address)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,uint,uint)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,uint,string)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,uint,bool)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,uint,address)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,string,uint)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,string,string)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,string,bool)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,string,address)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,bool,uint)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,bool,string)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,bool,bool)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,bool,address)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,address,uint)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,address,string)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,address,bool)", p0, p1, p2, p3));
}
function log(string memory p0, address p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(string,address,address,address)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,uint)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,string)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,bool)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,uint,address)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,uint)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,string)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,bool)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,string,address)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,uint)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,string)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,bool)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,bool,address)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,uint)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,string)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,bool)", p0, p1, p2, p3));
}
function log(bool p0, uint p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,uint,address,address)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,uint)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,string)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,bool)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,uint,address)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,string,uint)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,string,string)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,string,bool)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,string,address)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,uint)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,string)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,bool)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,bool,address)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,address,uint)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,address,string)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,address,bool)", p0, p1, p2, p3));
}
function log(bool p0, string memory p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,string,address,address)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,uint)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,string)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,bool)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,uint,address)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,uint)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,string)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,bool)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,string,address)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,uint)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,string)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,bool)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,bool,address)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,uint)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,string)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,bool)", p0, p1, p2, p3));
}
function log(bool p0, bool p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,bool,address,address)", p0, p1, p2, p3));
}
function log(bool p0, address p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,uint)", p0, p1, p2, p3));
}
function log(bool p0, address p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,string)", p0, p1, p2, p3));
}
function log(bool p0, address p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,bool)", p0, p1, p2, p3));
}
function log(bool p0, address p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,uint,address)", p0, p1, p2, p3));
}
function log(bool p0, address p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,string,uint)", p0, p1, p2, p3));
}
function log(bool p0, address p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,string,string)", p0, p1, p2, p3));
}
function log(bool p0, address p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,string,bool)", p0, p1, p2, p3));
}
function log(bool p0, address p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,string,address)", p0, p1, p2, p3));
}
function log(bool p0, address p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,uint)", p0, p1, p2, p3));
}
function log(bool p0, address p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,string)", p0, p1, p2, p3));
}
function log(bool p0, address p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,bool)", p0, p1, p2, p3));
}
function log(bool p0, address p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,bool,address)", p0, p1, p2, p3));
}
function log(bool p0, address p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,address,uint)", p0, p1, p2, p3));
}
function log(bool p0, address p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,address,string)", p0, p1, p2, p3));
}
function log(bool p0, address p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,address,bool)", p0, p1, p2, p3));
}
function log(bool p0, address p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(bool,address,address,address)", p0, p1, p2, p3));
}
function log(address p0, uint p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,uint)", p0, p1, p2, p3));
}
function log(address p0, uint p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,string)", p0, p1, p2, p3));
}
function log(address p0, uint p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,bool)", p0, p1, p2, p3));
}
function log(address p0, uint p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,uint,address)", p0, p1, p2, p3));
}
function log(address p0, uint p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,string,uint)", p0, p1, p2, p3));
}
function log(address p0, uint p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,string,string)", p0, p1, p2, p3));
}
function log(address p0, uint p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,string,bool)", p0, p1, p2, p3));
}
function log(address p0, uint p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,string,address)", p0, p1, p2, p3));
}
function log(address p0, uint p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,uint)", p0, p1, p2, p3));
}
function log(address p0, uint p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,string)", p0, p1, p2, p3));
}
function log(address p0, uint p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,bool)", p0, p1, p2, p3));
}
function log(address p0, uint p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,bool,address)", p0, p1, p2, p3));
}
function log(address p0, uint p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,address,uint)", p0, p1, p2, p3));
}
function log(address p0, uint p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,address,string)", p0, p1, p2, p3));
}
function log(address p0, uint p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,address,bool)", p0, p1, p2, p3));
}
function log(address p0, uint p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,uint,address,address)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,uint,uint)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,uint,string)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,uint,bool)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,uint,address)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,string,uint)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,string,string)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,string,bool)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,string,address)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,bool,uint)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,bool,string)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,bool,bool)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,bool,address)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,address,uint)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,address,string)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,address,bool)", p0, p1, p2, p3));
}
function log(address p0, string memory p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,string,address,address)", p0, p1, p2, p3));
}
function log(address p0, bool p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,uint)", p0, p1, p2, p3));
}
function log(address p0, bool p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,string)", p0, p1, p2, p3));
}
function log(address p0, bool p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,bool)", p0, p1, p2, p3));
}
function log(address p0, bool p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,uint,address)", p0, p1, p2, p3));
}
function log(address p0, bool p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,string,uint)", p0, p1, p2, p3));
}
function log(address p0, bool p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,string,string)", p0, p1, p2, p3));
}
function log(address p0, bool p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,string,bool)", p0, p1, p2, p3));
}
function log(address p0, bool p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,string,address)", p0, p1, p2, p3));
}
function log(address p0, bool p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,uint)", p0, p1, p2, p3));
}
function log(address p0, bool p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,string)", p0, p1, p2, p3));
}
function log(address p0, bool p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,bool)", p0, p1, p2, p3));
}
function log(address p0, bool p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,bool,address)", p0, p1, p2, p3));
}
function log(address p0, bool p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,address,uint)", p0, p1, p2, p3));
}
function log(address p0, bool p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,address,string)", p0, p1, p2, p3));
}
function log(address p0, bool p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,address,bool)", p0, p1, p2, p3));
}
function log(address p0, bool p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,bool,address,address)", p0, p1, p2, p3));
}
function log(address p0, address p1, uint p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,uint,uint)", p0, p1, p2, p3));
}
function log(address p0, address p1, uint p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,uint,string)", p0, p1, p2, p3));
}
function log(address p0, address p1, uint p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,uint,bool)", p0, p1, p2, p3));
}
function log(address p0, address p1, uint p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,uint,address)", p0, p1, p2, p3));
}
function log(address p0, address p1, string memory p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,string,uint)", p0, p1, p2, p3));
}
function log(address p0, address p1, string memory p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,string,string)", p0, p1, p2, p3));
}
function log(address p0, address p1, string memory p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,string,bool)", p0, p1, p2, p3));
}
function log(address p0, address p1, string memory p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,string,address)", p0, p1, p2, p3));
}
function log(address p0, address p1, bool p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,bool,uint)", p0, p1, p2, p3));
}
function log(address p0, address p1, bool p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,bool,string)", p0, p1, p2, p3));
}
function log(address p0, address p1, bool p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,bool,bool)", p0, p1, p2, p3));
}
function log(address p0, address p1, bool p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,bool,address)", p0, p1, p2, p3));
}
function log(address p0, address p1, address p2, uint p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,address,uint)", p0, p1, p2, p3));
}
function log(address p0, address p1, address p2, string memory p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,address,string)", p0, p1, p2, p3));
}
function log(address p0, address p1, address p2, bool p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,address,bool)", p0, p1, p2, p3));
}
function log(address p0, address p1, address p2, address p3) internal view {
_sendLogPayload(abi.encodeWithSignature("log(address,address,address,address)", p0, p1, p2, p3));
}
}
libs/remix-tests/tests/testRunner.cli.spec.ts
→
libs/remix-tests/tests/testRunner.cli.spec
_disabled
.ts
View file @
ee6fe2e5
File moved
libs/remix-tests/tests/testRunner.spec.ts
View file @
ee6fe2e5
import
*
as
async
from
'async'
import
Web3
from
'web3'
;
import
*
as
assert
from
'assert'
import
{
Provider
}
from
'@remix-project/remix-simulator'
import
{
Provider
,
extend
}
from
'@remix-project/remix-simulator'
import
{
compileFileOrFiles
}
from
'../src/compiler'
import
{
deployAll
}
from
'../src/deployer'
...
...
@@ -47,6 +47,7 @@ async function compileAndDeploy(filename: string, callback: Function) {
let
sourceASTs
:
any
=
{}
await
provider
.
init
()
web3
.
setProvider
(
provider
)
extend
(
web3
)
let
compilationData
:
object
async
.
waterfall
([
function
getAccountList
(
next
:
Function
):
void
{
...
...
@@ -72,7 +73,7 @@ async function compileAndDeploy(filename: string, callback: Function) {
}
}
],
function
(
_err
:
Error
|
null
|
undefined
,
contracts
:
any
):
void
{
callback
(
null
,
compilationData
,
contracts
,
sourceASTs
,
accounts
)
callback
(
null
,
compilationData
,
contracts
,
sourceASTs
,
accounts
,
web3
)
})
}
...
...
@@ -106,8 +107,8 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/examples_0/assert_ok_test.sol'
beforeAll
((
done
)
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
=>
{
runTest
(
'AssertOkTest'
,
contracts
.
AssertOkTest
,
compilationData
[
filename
][
'AssertOkTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
=>
{
runTest
(
'AssertOkTest'
,
contracts
.
AssertOkTest
,
compilationData
[
filename
][
'AssertOkTest'
],
asts
[
filename
],
{
accounts
,
web3
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -121,12 +122,14 @@ describe('testRunner', () => {
assert
.
equal
(
results
.
failureNum
,
1
)
})
const
hhLogs1
=
[
[
"AssertOkTest"
,
"okPassTest"
]]
const
hhLogs2
=
[
[
"AssertOkTest"
,
"okFailTest"
]]
it
(
'should return'
,
()
=>
{
deepEqualExcluding
(
tests
,
[
{
type
:
'accountList'
,
value
:
accounts
},
{
type
:
'contract'
,
value
:
'AssertOkTest'
,
filename
:
__dirname
+
'/examples_0/assert_ok_test.sol'
},
{
type
:
'testPass'
,
value
:
'Ok pass test'
,
filename
:
__dirname
+
'/examples_0/assert_ok_test.sol'
,
context
:
'AssertOkTest'
},
{
type
:
'testFailure'
,
value
:
'Ok fail test'
,
filename
:
__dirname
+
'/examples_0/assert_ok_test.sol'
,
errMsg
:
'okFailTest fails'
,
context
:
'AssertOkTest'
,
assertMethod
:
'ok'
,
location
:
'234
:36:0'
,
expected
:
'true'
,
returned
:
'false'
},
{
type
:
'testPass'
,
value
:
'Ok pass test'
,
filename
:
__dirname
+
'/examples_0/assert_ok_test.sol'
,
context
:
'AssertOkTest'
,
hhLogs
:
hhLogs1
},
{
type
:
'testFailure'
,
value
:
'Ok fail test'
,
filename
:
__dirname
+
'/examples_0/assert_ok_test.sol'
,
errMsg
:
'okFailTest fails'
,
context
:
'AssertOkTest'
,
hhLogs
:
hhLogs2
,
assertMethod
:
'ok'
,
location
:
'370
:36:0'
,
expected
:
'true'
,
returned
:
'false'
},
],
[
'time'
])
})
...
...
@@ -136,7 +139,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/examples_0/assert_equal_test.sol'
beforeAll
((
done
)
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
=>
{
runTest
(
'AssertEqualTest'
,
contracts
.
AssertEqualTest
,
compilationData
[
filename
][
'AssertEqualTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -175,7 +178,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/examples_0/assert_notEqual_test.sol'
beforeAll
((
done
)
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
=>
{
runTest
(
'AssertNotEqualTest'
,
contracts
.
AssertNotEqualTest
,
compilationData
[
filename
][
'AssertNotEqualTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -214,7 +217,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/examples_0/assert_greaterThan_test.sol'
beforeAll
((
done
)
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
=>
{
runTest
(
'AssertGreaterThanTest'
,
contracts
.
AssertGreaterThanTest
,
compilationData
[
filename
][
'AssertGreaterThanTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -248,7 +251,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/examples_0/assert_lesserThan_test.sol'
beforeAll
((
done
)
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
=>
{
runTest
(
'AssertLesserThanTest'
,
contracts
.
AssertLesserThanTest
,
compilationData
[
filename
][
'AssertLesserThanTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -283,7 +286,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/examples_1/simple_storage_test.sol'
beforeAll
((
done
)
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
=>
{
compileAndDeploy
(
filename
,
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
=>
{
runTest
(
'MyTest'
,
contracts
.
MyTest
,
compilationData
[
filename
][
'MyTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -314,7 +317,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/examples_2/simple_storage_test.sol'
beforeAll
(
done
=>
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
{
runTest
(
'MyTest'
,
contracts
.
MyTest
,
compilationData
[
filename
][
'MyTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -344,7 +347,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/examples_3/simple_string_test.sol'
beforeAll
(
done
=>
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
{
runTest
(
'StringTest'
,
contracts
.
StringTest
,
compilationData
[
filename
][
'StringTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -370,7 +373,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/examples_5/test/simple_storage_test.sol'
beforeAll
(
done
=>
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
{
runTest
(
'StorageResolveTest'
,
contracts
.
StorageResolveTest
,
compilationData
[
filename
][
'StorageResolveTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -397,7 +400,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/examples_4/SafeMath_test.sol'
beforeAll
(
done
=>
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
{
runTest
(
'SafeMathTest'
,
contracts
.
SafeMathTest
,
compilationData
[
filename
][
'SafeMathTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -417,7 +420,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/number/number_test.sol'
beforeAll
(
done
=>
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
{
runTest
(
'IntegerTest'
,
contracts
.
IntegerTest
,
compilationData
[
filename
][
'IntegerTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -437,7 +440,7 @@ describe('testRunner', () => {
const
filename
:
string
=
__dirname
+
'/various_sender/sender_and_value_test.sol'
beforeAll
(
done
=>
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
{
runTest
(
'SenderAndValueTest'
,
contracts
.
SenderAndValueTest
,
compilationData
[
filename
][
'SenderAndValueTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
resultsCallback
(
done
))
})
})
...
...
@@ -465,7 +468,7 @@ describe('testRunner', () => {
}
}
beforeAll
(
done
=>
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[])
{
compileAndDeploy
(
filename
,
function
(
_err
:
Error
|
null
|
undefined
,
compilationData
:
object
,
contracts
:
any
,
asts
:
any
,
accounts
:
string
[]
,
web3
:
any
)
{
runTest
(
'SenderAndValueTest'
,
undefined
,
compilationData
[
filename
][
'SenderAndValueTest'
],
asts
[
filename
],
{
accounts
},
testCallback
,
errorCallback
(
done
))
})
})
...
...
libs/remix-tests/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"types"
:
[
"node"
,
"jest"
],
"module"
:
"commonjs"
,
...
...
libs/remix-ui/README.md
0 → 100644
View file @
ee6fe2e5
# remix-ui
This library was generated with
[
Nx
](
https://nx.dev
)
.
## Pre-requisite
-
Install
**NxConsole**
vscose extension
## Steps To Generate React App
-
Open
**NxConsole**
extension
-
Click generate option
-
Select
**@nrwl/react - application**
-
Enter the name of the application
-
Set
**e2eTestRunner**
to
**none**
. (This is because we run e2e tests with nightwatch)
-
Set
**unitTestRunner**
to
**none**
.
-
Click the run button in the top right corner of the generate page.
-
Your react application should be created in
**{root}/apps**
directory.
## Steps To Generate React Lib
-
Open
**NxConsole**
extension
-
Click generate option
-
Select
**@nrwl/react - library**
-
Enter the name of the library
-
Set
**directory**
to
**remix-ui**
-
Set
**importPath**
to
**@remix-ui/{library-name}**
-
Set
**unitTestRunner**
to
**none**
.
-
Click the run button in the top right corner of the generate page.
-
Your react library should be created on
**{root}/libs/remix-ui**
directory.
## Steps To Generate React Component
-
Open
**NxConsole**
extension
-
Click generate option
-
Select
**@nrwl/react - component**
-
Enter the name of the component
-
Select the name of the project/library that uses the component. (e.g TreeView library)
-
Set component directory if needed.
-
Click the run button in the top right corner of the generate page.
-
Your react component should be created with the project/library name specified.
\ No newline at end of file
libs/remix-ui/checkbox/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/clipboard/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/debugger-ui/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/file-explorer/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/modal-dialog/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/publish-to-storage/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/renderer/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/settings/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/solidity-compiler/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/static-analyser/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/toaster/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/tree-view/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/utils/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-ui/workspace/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../../tsconfig.json"
,
"extends"
:
"../../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"jsx"
:
"react"
,
"allowJs"
:
true
,
...
...
libs/remix-url-resolver/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"compilerOptions"
:
{
"types"
:
[
"node"
,
"mocha"
],
"module"
:
"commonjs"
,
...
...
libs/remixd/src/services/slitherClient.ts
View file @
ee6fe2e5
...
...
@@ -2,7 +2,7 @@
import
*
as
WS
from
'ws'
// eslint-disable-line
import
{
PluginClient
}
from
'@remixproject/plugin'
import
{
existsSync
,
readFileSync
,
readdirSync
}
from
'fs'
import
{
existsSync
,
readFileSync
,
readdirSync
,
unlink
}
from
'fs'
import
{
OutputStandard
}
from
'../types'
// eslint-disable-line
const
{
spawn
,
execSync
}
=
require
(
'child_process'
)
...
...
@@ -114,21 +114,30 @@ export class SlitherClient extends PluginClient {
// Allow paths and set solc remapping for import URLs
const
fileContent
=
readFileSync
(
`
${
this
.
currentSharedFolder
}
/
${
filePath
}
`
,
'utf8'
)
const
importsArr
=
fileContent
.
match
(
/import
[
'"
][^
.|..
](
.+
?)[
'"
]
;/g
)
let
allowPaths
=
''
;
let
remaps
=
''
let
remaps
=
''
if
(
importsArr
?.
length
)
{
const
{
remapString
,
allowPathString
}
=
this
.
mapNpmDepsDir
(
importsArr
)
allowPaths
=
allowPathString
const
{
remapString
}
=
this
.
mapNpmDepsDir
(
importsArr
)
remaps
=
remapString
.
trim
()
}
const
allowPathsOption
:
string
=
allowPaths
?
`--allow-paths
${
allowPaths
}
`
:
''
const
optimizeOption
:
string
=
optimize
?
'--optimize '
:
''
const
optimizeOption
:
string
=
optimize
?
'--optimize'
:
''
const
evmOption
:
string
=
evmVersion
?
`--evm-version
${
evmVersion
}
`
:
''
const
solcArgs
:
string
=
optimizeOption
||
evmOption
||
allowPathsOption
?
`--solc-args '
${
allowPathsOption
}${
optimizeOption
}${
evmOption
}
'`
:
''
let
solcArgs
=
''
if
(
optimizeOption
)
{
solcArgs
+=
optimizeOption
+
' '
}
if
(
evmOption
)
{
if
(
!
solcArgs
.
endsWith
(
' '
))
solcArgs
+=
' '
solcArgs
+=
evmOption
}
if
(
solcArgs
)
{
solcArgs
=
`--solc-args "
${
solcArgs
.
trimStart
()}
"`
}
const
solcRemaps
=
remaps
?
`--solc-remaps "
${
remaps
}
"`
:
''
const
outputFile
:
string
=
'remix-slitherReport_'
+
Math
.
floor
(
Date
.
now
()
/
1000
)
+
'.json'
const
cmd
:
string
=
`slither
${
filePath
}
${
solcArgs
}
${
solcRemaps
}
--json
${
outputFile
}
`
console
.
log
(
'
\
x1b[32m%s
\
x1b[0m'
,
'[Slither Analysis]: Running Slither...'
)
console
.
log
(
cmd
)
// Added `stdio: 'ignore'` as for contract with NPM imports analysis which is exported in 'stderr'
// get too big and hangs the process. We process analysis from the report file only
const
child
=
spawn
(
cmd
,
{
cwd
:
this
.
currentSharedFolder
,
shell
:
true
,
stdio
:
'ignore'
})
...
...
@@ -140,6 +149,9 @@ export class SlitherClient extends PluginClient {
if
(
existsSync
(
outputFileAbsPath
))
{
let
report
=
readFileSync
(
outputFileAbsPath
,
'utf8'
)
report
=
JSON
.
parse
(
report
)
unlink
(
outputFileAbsPath
,
(
err
)
=>
{
if
(
err
)
console
.
log
(
err
)
})
if
(
report
[
'success'
])
{
response
[
'status'
]
=
true
if
(
!
report
[
'results'
]
||
!
report
[
'results'
].
detectors
||
!
report
[
'results'
].
detectors
.
length
)
{
...
...
libs/remixd/tsconfig.json
View file @
ee6fe2e5
{
"extends"
:
"../../tsconfig.json"
,
"extends"
:
"../../tsconfig.
base.
json"
,
"files"
:
[],
"include"
:
[],
"references"
:
[
...
...
nx.json
View file @
ee6fe2e5
...
...
@@ -6,8 +6,9 @@
"dependencies"
:
"*"
,
"devDependencies"
:
"*"
},
"tsconfig.json"
:
"*"
,
"tsconfig.
base.
json"
:
"*"
,
"tslint.json"
:
"*"
,
".eslintrc"
:
"*"
,
"nx.json"
:
"*"
},
"tasksRunnerOptions"
:
{
...
...
tsconfig.base.json
0 → 100644
View file @
ee6fe2e5
{
"compileOnSave"
:
false
,
"compilerOptions"
:
{
"rootDir"
:
"."
,
"sourceMap"
:
true
,
"declaration"
:
false
,
"moduleResolution"
:
"node"
,
"emitDecoratorMetadata"
:
true
,
"experimentalDecorators"
:
true
,
"importHelpers"
:
true
,
"target"
:
"es2015"
,
"module"
:
"commonjs"
,
"typeRoots"
:
[
"node_modules/@types"
],
"lib"
:
[
"es2017"
,
"es2019"
,
"dom"
],
"skipLibCheck"
:
true
,
"skipDefaultLibCheck"
:
true
,
"baseUrl"
:
"."
,
"paths"
:
{
"@remix-project/remix-analyzer"
:
[
"dist/libs/remix-analyzer/index.js"
],
"@remix-project/remix-astwalker"
:
[
"dist/libs/remix-astwalker/index.js"
],
"@remix-project/remix-debug"
:
[
"dist/libs/remix-debug/src/index.js"
],
"@remix-project/remix-lib"
:
[
"dist/libs/remix-lib/src/index.js"
],
"@remix-project/remix-simulator"
:
[
"dist/libs/remix-simulator/src/index.js"
],
"@remix-project/remix-solidity"
:
[
"dist/libs/remix-solidity/index.js"
],
"@remix-project/remix-tests"
:
[
"dist/libs/remix-tests/src/index.js"
],
"@remix-project/remix-url-resolver"
:
[
"dist/libs/remix-url-resolver/index.js"
],
"@remixproject/debugger-plugin"
:
[
"apps/debugger/src/index.ts"
],
"@remix-project/remixd"
:
[
"dist/libs/remixd/index.js"
],
"@remix-ui/tree-view"
:
[
"libs/remix-ui/tree-view/src/index.ts"
],
"@remix-ui/debugger-ui"
:
[
"libs/remix-ui/debugger-ui/src/index.ts"
],
"@remix-ui/utils"
:
[
"libs/remix-ui/utils/src/index.ts"
],
"@remix-ui/clipboard"
:
[
"libs/remix-ui/clipboard/src/index.ts"
],
"@remix-project/remix-solidity-ts"
:
[
"libs/remix-solidity/src/index.ts"
],
"@remix-ui/modal-dialog"
:
[
"libs/remix-ui/modal-dialog/src/index.ts"
],
"@remix-ui/toaster"
:
[
"libs/remix-ui/toaster/src/index.ts"
],
"@remix-ui/file-explorer"
:
[
"libs/remix-ui/file-explorer/src/index.ts"
],
"@remix-ui/workspace"
:
[
"libs/remix-ui/workspace/src/index.ts"
],
"@remix-ui/static-analyser"
:
[
"libs/remix-ui/static-analyser/src/index.ts"
],
"@remix-ui/checkbox"
:
[
"libs/remix-ui/checkbox/src/index.ts"
],
"@remix-ui/settings"
:
[
"libs/remix-ui/settings/src/index.ts"
],
"@remix-project/core-plugin"
:
[
"libs/remix-core-plugin/src/index.ts"
],
"@remix-ui/solidity-compiler"
:
[
"libs/remix-ui/solidity-compiler/src/index.ts"
],
"@remix-ui/publish-to-storage"
:
[
"libs/remix-ui/publish-to-storage/src/index.ts"
],
"@remix-ui/renderer"
:
[
"libs/remix-ui/renderer/src/index.ts"
]
}
},
"exclude"
:
[
"node_modules"
,
"tmp"
]
}
tsconfig.json
View file @
ee6fe2e5
...
...
@@ -10,8 +10,7 @@
"importHelpers"
:
true
,
"target"
:
"es2015"
,
"module"
:
"commonjs"
,
"typeRoots"
:
[
"node_modules/@types"
],
"lib"
:
[
"es2017"
,
"es2019"
,
"dom"
],
"lib"
:
[
"es2017"
,
"dom"
],
"skipLibCheck"
:
true
,
"skipDefaultLibCheck"
:
true
,
"baseUrl"
:
"."
,
...
...
@@ -44,6 +43,7 @@
"@remix-ui/publish-to-storage"
:
[
"libs/remix-ui/publish-to-storage/src/index.ts"
],
"@remix-ui/renderer"
:
[
"libs/remix-ui/renderer/src/index.ts"
]
}
"allowSyntheticDefaultImports"
:
true
},
"exclude"
:
[
"node_modules"
,
"tmp"
]
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment