Skip to content

Commit 8b9b995

Browse files
Merge pull request #561 from qubic/develop (Release v1.262.0)
Release v1.262.0
2 parents 7a13c95 + 4b78e06 commit 8b9b995

File tree

14 files changed

+6117
-349
lines changed

14 files changed

+6117
-349
lines changed

src/Qubic.vcxproj

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,10 @@
2323
<ClInclude Include="assets\net_msg_impl.h" />
2424
<ClInclude Include="common_buffers.h" />
2525
<ClInclude Include="contracts\ComputorControlledFund.h" />
26+
<ClInclude Include="contracts\MsVault_v1.h" />
2627
<ClInclude Include="contracts\Qdraw.h" />
2728
<ClInclude Include="contracts\Qswap.h" />
29+
<ClInclude Include="contracts\RandomLottery.h" />
2830
<ClInclude Include="contracts\SupplyWatcher.h" />
2931
<ClInclude Include="contracts\EmptyTemplate.h" />
3032
<ClInclude Include="contracts\GeneralQuorumProposal.h" />
@@ -40,6 +42,7 @@
4042
<ClInclude Include="contracts\QVAULT.h" />
4143
<ClInclude Include="contracts\QBAY.h" />
4244
<ClInclude Include="contracts\Nostromo.h" />
45+
<ClInclude Include="contracts\QBond.h" />
4346
<ClInclude Include="contracts\TestExampleA.h" />
4447
<ClInclude Include="contracts\TestExampleB.h" />
4548
<ClInclude Include="contracts\TestExampleC.h" />

src/Qubic.vcxproj.filters

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,9 @@
123123
<ClInclude Include="contracts\Nostromo.h">
124124
<Filter>contracts</Filter>
125125
</ClInclude>
126+
<ClInclude Include="contracts\QBond.h">
127+
<Filter>contracts</Filter>
128+
</ClInclude>
126129
<ClInclude Include="contract_core\contract_def.h">
127130
<Filter>contract_core</Filter>
128131
</ClInclude>
@@ -276,6 +279,12 @@
276279
<ClInclude Include="contracts\Qdraw.h">
277280
<Filter>contracts</Filter>
278281
</ClInclude>
282+
<ClInclude Include="contracts\RandomLottery.h">
283+
<Filter>contracts</Filter>
284+
</ClInclude>
285+
<ClInclude Include="contracts\MsVault_v1.h">
286+
<Filter>contracts</Filter>
287+
</ClInclude>
279288
</ItemGroup>
280289
<ItemGroup>
281290
<Filter Include="platform">

src/contract_core/contract_def.h

Lines changed: 45 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,11 @@ struct __FunctionOrProcedureBeginEndGuard
172172
#define CONTRACT_INDEX MSVAULT_CONTRACT_INDEX
173173
#define CONTRACT_STATE_TYPE MSVAULT
174174
#define CONTRACT_STATE2_TYPE MSVAULT2
175-
#include "contracts/MsVault.h"
175+
#ifdef MSVAULT_V1
176+
#include "contracts/MsVault_v1.h"
177+
#else
178+
#include "contracts/MsVault.h"
179+
#endif
176180

177181
#undef CONTRACT_INDEX
178182
#undef CONTRACT_STATE_TYPE
@@ -214,6 +218,34 @@ struct __FunctionOrProcedureBeginEndGuard
214218
#define CONTRACT_STATE2_TYPE QDRAW2
215219
#include "contracts/Qdraw.h"
216220

221+
#ifndef NO_RANDOM_LOTTERY
222+
223+
constexpr unsigned short RL_CONTRACT_INDEX = (CONTRACT_INDEX + 1);
224+
#undef CONTRACT_INDEX
225+
#undef CONTRACT_STATE_TYPE
226+
#undef CONTRACT_STATE2_TYPE
227+
228+
#define CONTRACT_INDEX RL_CONTRACT_INDEX
229+
#define CONTRACT_STATE_TYPE RL
230+
#define CONTRACT_STATE2_TYPE RL2
231+
#include "contracts/RandomLottery.h"
232+
233+
#endif
234+
235+
#ifndef NO_QBOND
236+
237+
constexpr unsigned short QBOND_CONTRACT_INDEX = (CONTRACT_INDEX + 1);
238+
#undef CONTRACT_INDEX
239+
#undef CONTRACT_STATE_TYPE
240+
#undef CONTRACT_STATE2_TYPE
241+
242+
#define CONTRACT_INDEX QBOND_CONTRACT_INDEX
243+
#define CONTRACT_STATE_TYPE QBOND
244+
#define CONTRACT_STATE2_TYPE QBOND2
245+
#include "contracts/QBond.h"
246+
247+
#endif
248+
217249
// new contracts should be added above this line
218250

219251
#ifdef INCLUDE_CONTRACT_TEST_EXAMPLES
@@ -312,6 +344,12 @@ constexpr struct ContractDescription
312344
{"QSWAP", 171, 10000, sizeof(QSWAP)}, // proposal in epoch 169, IPO in 170, construction and first use in 171
313345
{"NOST", 172, 10000, sizeof(NOST)}, // proposal in epoch 170, IPO in 171, construction and first use in 172
314346
{"QDRAW", 179, 10000, sizeof(QDRAW)}, // proposal in epoch 177, IPO in 178, construction and first use in 179
347+
#ifndef NO_RANDOM_LOTTERY
348+
{"RL", 182, 10000, sizeof(RL)}, // proposal in epoch 180, IPO in 181, construction and first use in 182
349+
#endif
350+
#ifndef NO_QBOND
351+
{"QBOND", 182, 10000, sizeof(QBOND)}, // proposal in epoch 180, IPO in 181, construction and first use in 182
352+
#endif
315353
// new contracts should be added above this line
316354
#ifdef INCLUDE_CONTRACT_TEST_EXAMPLES
317355
{"TESTEXA", 138, 10000, sizeof(IPO)},
@@ -416,6 +454,12 @@ static void initializeContracts()
416454
REGISTER_CONTRACT_FUNCTIONS_AND_PROCEDURES(QSWAP);
417455
REGISTER_CONTRACT_FUNCTIONS_AND_PROCEDURES(NOST);
418456
REGISTER_CONTRACT_FUNCTIONS_AND_PROCEDURES(QDRAW);
457+
#ifndef NO_RANDOM_LOTTERY
458+
REGISTER_CONTRACT_FUNCTIONS_AND_PROCEDURES(RL);
459+
#endif
460+
#ifndef NO_QBOND
461+
REGISTER_CONTRACT_FUNCTIONS_AND_PROCEDURES(QBOND);
462+
#endif
419463
// new contracts should be added above this line
420464
#ifdef INCLUDE_CONTRACT_TEST_EXAMPLES
421465
REGISTER_CONTRACT_FUNCTIONS_AND_PROCEDURES(TESTEXA);

0 commit comments

Comments
 (0)