aboutsummaryrefslogtreecommitdiffstats
path: root/contracts/utils
diff options
context:
space:
mode:
authorGreg Hysen <greg.hysen@gmail.com>2018-12-14 05:52:20 +0800
committerGreg Hysen <greg.hysen@gmail.com>2018-12-19 05:36:05 +0800
commitf91781a0605f46ee1a40bf979d22ff510f48d464 (patch)
tree0e3198872ed89bda0431d7fe29878e2cbd47449b /contracts/utils
parent22fd23643cb26ba1b79e9b13e5ef41c97ab7fe6a (diff)
downloaddexon-sol-tools-f91781a0605f46ee1a40bf979d22ff510f48d464.tar
dexon-sol-tools-f91781a0605f46ee1a40bf979d22ff510f48d464.tar.gz
dexon-sol-tools-f91781a0605f46ee1a40bf979d22ff510f48d464.tar.bz2
dexon-sol-tools-f91781a0605f46ee1a40bf979d22ff510f48d464.tar.lz
dexon-sol-tools-f91781a0605f46ee1a40bf979d22ff510f48d464.tar.xz
dexon-sol-tools-f91781a0605f46ee1a40bf979d22ff510f48d464.tar.zst
dexon-sol-tools-f91781a0605f46ee1a40bf979d22ff510f48d464.zip
Less Assembly. More Solidity. Less Efficiency. More Readability.
Diffstat (limited to 'contracts/utils')
-rw-r--r--contracts/utils/contracts/utils/ExchangeSelectors/ExchangeSelectors.sol151
1 files changed, 151 insertions, 0 deletions
diff --git a/contracts/utils/contracts/utils/ExchangeSelectors/ExchangeSelectors.sol b/contracts/utils/contracts/utils/ExchangeSelectors/ExchangeSelectors.sol
new file mode 100644
index 000000000..c361fd075
--- /dev/null
+++ b/contracts/utils/contracts/utils/ExchangeSelectors/ExchangeSelectors.sol
@@ -0,0 +1,151 @@
+/*
+
+ Copyright 2018 ZeroEx Intl.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+*/
+
+pragma solidity 0.4.24;
+
+
+contract ExchangeSelectors {
+
+ // allowedValidators
+ bytes4 constant allowedValidatorsSelector = 0x7b8e3514;
+ bytes4 constant allowedValidatorsSelectorGenerator = bytes4(keccak256('allowedValidators(address,address)'));
+
+ // assetProxies
+ bytes4 constant assetProxiesSelector = 0x3fd3c997;
+ bytes4 constant assetProxiesSelectorGenerator = bytes4(keccak256('assetProxies(bytes4)'));
+
+ // batchCancelOrders
+ bytes4 constant batchCancelOrdersSelector = 0x4ac14782;
+ bytes4 constant batchCancelOrdersSelectorGenerator = bytes4(keccak256('batchCancelOrders((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[])'));
+
+ // batchFillOrKillOrders
+ bytes4 constant batchFillOrKillOrdersSelector = 0x4d0ae546;
+ bytes4 constant batchFillOrKillOrdersSelectorGenerator = bytes4(keccak256('batchFillOrKillOrders((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[],uint256[],bytes[])'));
+
+ // batchFillOrders
+ bytes4 constant batchFillOrdersSelector = 0x297bb70b;
+ bytes4 constant batchFillOrdersSelectorGenerator = bytes4(keccak256('batchFillOrders((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[],uint256[],bytes[])'));
+
+ // batchFillOrdersNoThrow
+ bytes4 constant batchFillOrdersNoThrowSelector = 0x50dde190;
+ bytes4 constant batchFillOrdersNoThrowSelectorGenerator = bytes4(keccak256('batchFillOrdersNoThrow((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[],uint256[],bytes[])'));
+
+ // cancelOrder
+ bytes4 constant cancelOrderSelector = 0xd46b02c3;
+ bytes4 constant cancelOrderSelectorGenerator = bytes4(keccak256('cancelOrder((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes))'));
+
+ // cancelOrdersUpTo
+ bytes4 constant cancelOrdersUpToSelector = 0x4f9559b1;
+ bytes4 constant cancelOrdersUpToSelectorGenerator = bytes4(keccak256('cancelOrdersUpTo(uint256)'));
+
+ // cancelled
+ bytes4 constant cancelledSelector = 0x2ac12622;
+ bytes4 constant cancelledSelectorGenerator = bytes4(keccak256('cancelled(bytes32)'));
+
+ // currentContextAddress
+ bytes4 constant currentContextAddressSelector = 0xeea086ba;
+ bytes4 constant currentContextAddressSelectorGenerator = bytes4(keccak256('currentContextAddress()'));
+
+ // executeTransaction
+ bytes4 constant executeTransactionSelector = 0xbfc8bfce;
+ bytes4 constant executeTransactionSelectorGenerator = bytes4(keccak256('executeTransaction(uint256,address,bytes,bytes)'));
+
+ // fillOrKillOrder
+ bytes4 constant fillOrKillOrderSelector = 0x64a3bc15;
+ bytes4 constant fillOrKillOrderSelectorGenerator = bytes4(keccak256('fillOrKillOrder((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes),uint256,bytes)'));
+
+ // fillOrder
+ bytes4 constant fillOrderSelector = 0xb4be83d5;
+ bytes4 constant fillOrderSelectorGenerator = bytes4(keccak256('fillOrder((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes),uint256,bytes)'));
+
+ // fillOrderNoThrow
+ bytes4 constant fillOrderNoThrowSelector = 0x3e228bae;
+ bytes4 constant fillOrderNoThrowSelectorGenerator = bytes4(keccak256('fillOrderNoThrow((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes),uint256,bytes)'));
+
+ // filled
+ bytes4 constant filledSelector = 0x288cdc91;
+ bytes4 constant filledSelectorGenerator = bytes4(keccak256('filled(bytes32)'));
+
+ // getAssetProxy
+ bytes4 constant getAssetProxySelector = 0x60704108;
+ bytes4 constant getAssetProxySelectorGenerator = bytes4(keccak256('getAssetProxy(bytes4)'));
+
+ // getOrderInfo
+ bytes4 constant getOrderInfoSelector = 0xc75e0a81;
+ bytes4 constant getOrderInfoSelectorGenerator = bytes4(keccak256('getOrderInfo((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes))'));
+
+ // getOrdersInfo
+ bytes4 constant getOrdersInfoSelector = 0x7e9d74dc;
+ bytes4 constant getOrdersInfoSelectorGenerator = bytes4(keccak256('getOrdersInfo((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[])'));
+
+ // isValidSignature
+ bytes4 constant isValidSignatureSelector = 0x93634702;
+ bytes4 constant isValidSignatureSelectorGenerator = bytes4(keccak256('isValidSignature(bytes32,address,bytes)'));
+
+ // marketBuyOrders
+ bytes4 constant marketBuyOrdersSelector = 0xe5fa431b;
+ bytes4 constant marketBuyOrdersSelectorGenerator = bytes4(keccak256('marketBuyOrders((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[],uint256,bytes[])'));
+
+ // marketBuyOrdersNoThrow
+ bytes4 constant marketBuyOrdersNoThrowSelector = 0xa3e20380;
+ bytes4 constant marketBuyOrdersNoThrowSelectorGenerator = bytes4(keccak256('marketBuyOrdersNoThrow((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[],uint256,bytes[])'));
+
+ // marketSellOrders
+ bytes4 constant marketSellOrdersSelector = 0x7e1d9808;
+ bytes4 constant marketSellOrdersSelectorGenerator = bytes4(keccak256('marketSellOrders((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[],uint256,bytes[])'));
+
+ // marketSellOrdersNoThrow
+ bytes4 constant marketSellOrdersNoThrowSelector = 0xdd1c7d18;
+ bytes4 constant marketSellOrdersNoThrowSelectorGenerator = bytes4(keccak256('marketSellOrdersNoThrow((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes)[],uint256,bytes[])'));
+
+ // matchOrders
+ bytes4 constant matchOrdersSelector = 0x3c28d861;
+ bytes4 constant matchOrdersSelectorGenerator = bytes4(keccak256('matchOrders((address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes),(address,address,address,address,uint256,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes,bytes)'));
+
+ // orderEpoch
+ bytes4 constant orderEpochSelector = 0xd9bfa73e;
+ bytes4 constant orderEpochSelectorGenerator = bytes4(keccak256('orderEpoch(address,address)'));
+
+ // owner
+ bytes4 constant ownerSelector = 0x8da5cb5b;
+ bytes4 constant ownerSelectorGenerator = bytes4(keccak256('owner()'));
+
+ // preSign
+ bytes4 constant preSignSelector = 0x3683ef8e;
+ bytes4 constant preSignSelectorGenerator = bytes4(keccak256('preSign(bytes32,address,bytes)'));
+
+ // preSigned
+ bytes4 constant preSignedSelector = 0x82c174d0;
+ bytes4 constant preSignedSelectorGenerator = bytes4(keccak256('preSigned(bytes32,address)'));
+
+ // registerAssetProxy
+ bytes4 constant registerAssetProxySelector = 0xc585bb93;
+ bytes4 constant registerAssetProxySelectorGenerator = bytes4(keccak256('registerAssetProxy(address)'));
+
+ // setSignatureValidatorApproval
+ bytes4 constant setSignatureValidatorApprovalSelector = 0x77fcce68;
+ bytes4 constant setSignatureValidatorApprovalSelectorGenerator = bytes4(keccak256('setSignatureValidatorApproval(address,bool)'));
+
+ // transactions
+ bytes4 constant transactionsSelector = 0x642f2eaf;
+ bytes4 constant transactionsSelectorGenerator = bytes4(keccak256('transactions(bytes32)'));
+
+ // transferOwnership
+ bytes4 constant transferOwnershipSelector = 0xf2fde38b;
+ bytes4 constant transferOwnershipSelectorGenerator = bytes4(keccak256('transferOwnership(address)'));
+} \ No newline at end of file