From e4308a3a78ec9f806a28cc89771a751f6dfeac41 Mon Sep 17 00:00:00 2001 From: Hsuan Lee Date: Mon, 11 Mar 2019 14:21:04 +0800 Subject: Add Orderbook structure --- contracts/exchange/contracts/src/Exchange.sol | 7 ++++-- .../exchange/contracts/src/MixinOrderbook.sol | 29 ++++++++++++++++++++++ .../contracts/src/interfaces/IOrderbook.sol | 22 ++++++++++++++++ .../exchange/contracts/src/mixins/MOrderbook.sol | 26 +++++++++++++++++++ 4 files changed, 82 insertions(+), 2 deletions(-) create mode 100644 contracts/exchange/contracts/src/MixinOrderbook.sol create mode 100644 contracts/exchange/contracts/src/interfaces/IOrderbook.sol create mode 100644 contracts/exchange/contracts/src/mixins/MOrderbook.sol diff --git a/contracts/exchange/contracts/src/Exchange.sol b/contracts/exchange/contracts/src/Exchange.sol index 541750518..e78e58cf5 100644 --- a/contracts/exchange/contracts/src/Exchange.sol +++ b/contracts/exchange/contracts/src/Exchange.sol @@ -26,6 +26,7 @@ import "./MixinWrapperFunctions.sol"; import "./MixinAssetProxyDispatcher.sol"; import "./MixinTransactions.sol"; import "./MixinMatchOrders.sol"; +import "./MixinOrderbook.sol"; // solhint-disable no-empty-blocks @@ -35,9 +36,10 @@ contract Exchange is MixinSignatureValidator, MixinTransactions, MixinAssetProxyDispatcher, - MixinWrapperFunctions + MixinWrapperFunctions, + MixinOrderbook { - string constant public VERSION = "2.0.1-alpha"; + string constant public VERSION = "2.1.0-alpha"; // Mixins are instantiated in the order they are inherited constructor (bytes memory _zrxAssetData) @@ -49,5 +51,6 @@ contract Exchange is MixinTransactions() MixinAssetProxyDispatcher() MixinWrapperFunctions() + MixinOrderbook() {} } diff --git a/contracts/exchange/contracts/src/MixinOrderbook.sol b/contracts/exchange/contracts/src/MixinOrderbook.sol new file mode 100644 index 000000000..271f28da2 --- /dev/null +++ b/contracts/exchange/contracts/src/MixinOrderbook.sol @@ -0,0 +1,29 @@ +/* + + Copyright 2019 DEXON Foundation. + + 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; +pragma experimental ABIEncoderV2; + +import "./mixins/MOrderbook.sol"; + + +contract MixinOrderbook is + MOrderbook +{ + +} diff --git a/contracts/exchange/contracts/src/interfaces/IOrderbook.sol b/contracts/exchange/contracts/src/interfaces/IOrderbook.sol new file mode 100644 index 000000000..f42517087 --- /dev/null +++ b/contracts/exchange/contracts/src/interfaces/IOrderbook.sol @@ -0,0 +1,22 @@ +/* + + Copyright 2019 DEXON Foundation. + + 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 IOrderbook { +} diff --git a/contracts/exchange/contracts/src/mixins/MOrderbook.sol b/contracts/exchange/contracts/src/mixins/MOrderbook.sol new file mode 100644 index 000000000..bb2886cd4 --- /dev/null +++ b/contracts/exchange/contracts/src/mixins/MOrderbook.sol @@ -0,0 +1,26 @@ +/* + + Copyright 2019 DEXON Foundation. + + 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; + +import "../interfaces/IOrderbook.sol"; + + +contract MOrderbook is + IOrderbook +{ +} -- cgit