Subversion Repositories DevTools

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2218 sbetterm 1
//## begin module%1.7%.codegen_version preserve=yes
2
//   Read the documentation to learn more about C++ code generator
3
//   versioning.
4
//## end module%1.7%.codegen_version
5
 
6
//## begin module%4209C61A01F8.cm preserve=no
7
//## end module%4209C61A01F8.cm
8
 
9
//## begin module%4209C61A01F8.cp preserve=no
10
//	C O P Y R I G H T   N O T I C E
11
//	This material is confidential to ERG and may not be disclosed in whole
12
//	or in part to any third party nor used in any manner whatsoever other
13
//	than for the purposes expressly consented to by ERG in writing.
14
//
15
//	This material is also copyright and may not be reproduced, stored in a
16
//	retrieval system or transmitted in any form or by any means in whole or
17
//	in part without the express written consent of ERG.
18
//## end module%4209C61A01F8.cp
19
 
20
//## Module: DefinedVariable%4209C61A01F8; Pseudo Package specification
21
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
22
//## Source file: Z:\MASS_Dev\Tools\TxnTestManager\src\DefinedVariable.h
23
 
24
#ifndef DefinedVariable_h
25
#define DefinedVariable_h 1
26
 
27
//## begin module%4209C61A01F8.additionalIncludes preserve=no
28
//## end module%4209C61A01F8.additionalIncludes
29
 
30
//## begin module%4209C61A01F8.includes preserve=yes
31
//## end module%4209C61A01F8.includes
32
 
33
// FieldExpression
34
#include "FieldExpression.h"
35
 
36
class TransactionSpecificationValue;
37
class EvaluationContext;
38
 
39
//## begin module%4209C61A01F8.additionalDeclarations preserve=yes
40
#include <vector>
41
//## end module%4209C61A01F8.additionalDeclarations
42
 
43
 
44
//## begin DefinedVariable%4209C61A01F8.preface preserve=yes
45
//## end DefinedVariable%4209C61A01F8.preface
46
 
47
//## Class: DefinedVariable%4209C61A01F8; private
48
//	A defined variable.
49
//## Category: TransactionTestManager::Symbol Table%4209C5C30033
50
//## Subsystem: MASS::Dev::Tools::TxnTestManager::src%41F5A79001E4
51
//## Persistence: Transient
52
//## Cardinality/Multiplicity: n
53
 
54
 
55
 
56
//## Uses: <unnamed>%420ACCBD0067;TransactionSpecificationValue { -> F}
57
//## Uses: <unnamed>%421176B20172;EvaluationContext { -> F}
58
 
59
class DefinedVariable 
60
{
61
  //## begin DefinedVariable%4209C61A01F8.initialDeclarations preserve=yes
62
  //## end DefinedVariable%4209C61A01F8.initialDeclarations
63
 
64
  public:
65
    //## Constructors (specified)
66
      //## Operation: DefinedVariable%4209CBCF00A3
67
      //	The only constructor.
68
      DefinedVariable (const std::string &variableName	// The name of this variable.
69
      );
70
 
71
    //## Destructor (generated)
72
      virtual ~DefinedVariable();
73
 
74
 
75
    //## Other Operations (specified)
76
      //## Operation: evaluate%420ACC990152
77
      //	Evaluate the expression of this variable, and evaluate to true, or to false
78
      //	when any expression cannot be evaluated.
79
      const bool evaluate (std::string &value, 	// The resulting value.
80
      const bool &sideEffect, 	// When true, evaluation is allowed to have side effects, otherwise side
81
      	// effects must be suppressed.  For example, when true, a call to a sequence
82
      	// generator may allocate a new number from the sequence: when false, the call
83
      	// must not change the sate of the sequence generator.
84
      	// 
85
      	// One usage of this: when generating a transaction side effects are allowed,
86
      	// when rendering the hint to display for a field value side effects are not
87
      	// allowed.
88
      EvaluationContext& evaluationContext, 	// The evaluation context.
89
      std::vector< DefinedVariable * > &path, 	// The evaluation path.
90
      bool &postponed	// Set the actual argument to true when evaluation is postponed, and to false
91
      	// otherwise.
92
      );
93
 
94
      //## Operation: getExpression%420ACC82000A
95
      //	Evaluate to the expression of this instance.
96
      const std::string & getExpression () const;
97
 
98
      //## Operation: setExpression%420ACC82000B
99
      //	Set the expression of this instance, and evaluate to the resulting value.
100
      const std::string & setExpression (const std::string &value	// The value.
101
      );
102
 
103
    // Additional Public Declarations
104
      //## begin DefinedVariable%4209C61A01F8.public preserve=yes
105
      //## end DefinedVariable%4209C61A01F8.public
106
 
107
  protected:
108
    // Additional Protected Declarations
109
      //## begin DefinedVariable%4209C61A01F8.protected preserve=yes
110
      //## end DefinedVariable%4209C61A01F8.protected
111
 
112
  private:
113
    //## Constructors (generated)
114
      DefinedVariable();
115
 
116
      DefinedVariable(const DefinedVariable &right);
117
 
118
    //## Assignment Operation (generated)
119
      DefinedVariable & operator=(const DefinedVariable &right);
120
 
121
    // Data Members for Class Attributes
122
 
123
      //## Attribute: variableName%4209C7AD00AE
124
      //	The name of this variable.
125
      //## begin DefinedVariable::variableName%4209C7AD00AE.attr preserve=no  private: std::string {VAC} variableName
126
      const std::string m_variableName;
127
      //## end DefinedVariable::variableName%4209C7AD00AE.attr
128
 
129
      //## Attribute: value%4209C7CD00DD
130
      //	The value of this variable.
131
      //## begin DefinedVariable::value%4209C7CD00DD.attr preserve=no  private: std::string {VA} 
132
      std::string m_value;
133
      //## end DefinedVariable::value%4209C7CD00DD.attr
134
 
135
    // Data Members for Associations
136
 
137
      //## Association: TransactionTestManager::Symbol Table::<unnamed>%420ACBD602E8
138
      //## Role: DefinedVariable::expression%420ACBD70077
139
      //	expression
140
      //## begin DefinedVariable::expression%420ACBD70077.role preserve=no  private: FieldExpression {1 -> 1VHgAN}
141
      FieldExpression m_expression;
142
      //## end DefinedVariable::expression%420ACBD70077.role
143
 
144
    // Additional Private Declarations
145
      //## begin DefinedVariable%4209C61A01F8.private preserve=yes
146
      //## end DefinedVariable%4209C61A01F8.private
147
 
148
  private: //## implementation
149
    // Additional Implementation Declarations
150
      //## begin DefinedVariable%4209C61A01F8.implementation preserve=yes
151
      //## end DefinedVariable%4209C61A01F8.implementation
152
 
153
};
154
 
155
//## begin DefinedVariable%4209C61A01F8.postscript preserve=yes
156
//## end DefinedVariable%4209C61A01F8.postscript
157
 
158
// Class DefinedVariable 
159
 
160
//## begin module%4209C61A01F8.epilog preserve=yes
161
//## end module%4209C61A01F8.epilog
162
 
163
 
164
#endif