aboutsummaryrefslogtreecommitdiffstats
path: root/packages/contracts/contracts/utils/ExchangeSelectors/ExchangeSelectors.sol
blob: c361fd07550c7758e1cb8ccc0a5b621e34fecdfe (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
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)'));
}