Lines Matching full:binding
24 Binding Invalidation
37 because ``foo[i]`` may have overwritten it! Thus, *binding to a region with a
51 because ``foo[0]`` may have overwritten it! *Binding to a region R with a
89 Unlike binding invalidation, region invalidation occurs when the entire
115 type of binding called a "Default" binding. These are used to provide values to
117 explicitly specify a binding for each individual element.
119 When there is no Direct binding for a particular region, the store manager
120 looks at each super-region in turn to see if there is a Default binding. If so,
129 manyInts[1] = 42; // Creates a Direct binding for manyInts[1].
130 print(manyInts[1]); // Retrieves the Direct binding for manyInts[1];
131 print(manyInts[0]); // There is no Direct binding for manyInts[0].
132 // Is there a Default binding for the entire array?
138 the Default Binding strategy, because in C aggregates can contain other
140 distinguish a Default binding for an entire aggregate from a Default binding
149 LazyCompoundVal. When the store is asked for the "binding" for an entire
161 Retrieving a value from a lazy binding happens in the same way as any other
162 Default binding: since there is no direct binding, the store manager falls back
163 to super-regions to look for an appropriate default binding. LazyCompoundVal
164 differs from a normal default binding, however, in that it contains several
174 p.x = 42; // A Direct binding is made to the FieldRegion 'p.x'.
177 // used as a Default binding for the VarRegion 'p2'.
178 return p2.x; // The binding for FieldRegion 'p2.x' is requested.
179 // There is no Direct binding, so we look for a Default
180 // binding to 'p2' and find the LCV.