Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / CqlGeneration / BooleanProjectedSlot.cs / 1305376 / BooleanProjectedSlot.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Data.Mapping.ViewGeneration.Structures; using System.Text; using System.Diagnostics; using System.Data.Common.Utils; namespace System.Data.Mapping.ViewGeneration.CqlGeneration { // This class represents slots for the boolean variables, e.g., _from0, // _from1, etc internal class BooleanProjectedSlot : ProjectedSlot { #region Constructor // effects: Creates a boolean slot for expression that comes from // originalCellNum, i.e., the value of the slot is "expr" and the // name is "_from", e.g., _from2 internal BooleanProjectedSlot(BoolExpression expr, CqlIdentifiers identifiers, int originalCellNum) { m_expr = expr; m_originalCell = new CellIdBoolean(identifiers, originalCellNum); CellIdBoolean boolExpr = expr.AsLiteral as CellIdBoolean; Debug.Assert(boolExpr == null || BoolLiteral.EqualityComparer.Equals(boolExpr, m_originalCell), "Cellid boolean for the slot and cell number disagree"); } #endregion #region Fields private BoolExpression m_expr; // The actual value of the slot - // could be CellIdBoolean! // A boolean corresponding to the original cell number (from0) private CellIdBoolean m_originalCell; #endregion #region Methods internal override StringBuilder AsCql(StringBuilder builder, MemberPath outputMember, string blockAlias, int indentLevel) { if (m_expr.IsTrue || m_expr.IsFalse) { // No Case statement for TRUE and FALSE m_expr.AsCql(builder, blockAlias); } else { builder.Append("CASE WHEN "); m_expr.AsCql(builder, blockAlias); builder.Append(" THEN True ELSE False END"); } return builder; } internal override string CqlFieldAlias(MemberPath outputMember) { // Return _from0, _from1 etc return m_originalCell.SlotName; } internal override void ToCompactString(StringBuilder builder) { StringUtil.FormatStringBuilder(builder, "<{0}, ", m_originalCell.SlotName); m_expr.ToCompactString(builder); builder.Append('>'); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Data.Mapping.ViewGeneration.Structures; using System.Text; using System.Diagnostics; using System.Data.Common.Utils; namespace System.Data.Mapping.ViewGeneration.CqlGeneration { // This class represents slots for the boolean variables, e.g., _from0, // _from1, etc internal class BooleanProjectedSlot : ProjectedSlot { #region Constructor // effects: Creates a boolean slot for expression that comes from // originalCellNum, i.e., the value of the slot is "expr" and the // name is "_from", e.g., _from2 internal BooleanProjectedSlot(BoolExpression expr, CqlIdentifiers identifiers, int originalCellNum) { m_expr = expr; m_originalCell = new CellIdBoolean(identifiers, originalCellNum); CellIdBoolean boolExpr = expr.AsLiteral as CellIdBoolean; Debug.Assert(boolExpr == null || BoolLiteral.EqualityComparer.Equals(boolExpr, m_originalCell), "Cellid boolean for the slot and cell number disagree"); } #endregion #region Fields private BoolExpression m_expr; // The actual value of the slot - // could be CellIdBoolean! // A boolean corresponding to the original cell number (from0) private CellIdBoolean m_originalCell; #endregion #region Methods internal override StringBuilder AsCql(StringBuilder builder, MemberPath outputMember, string blockAlias, int indentLevel) { if (m_expr.IsTrue || m_expr.IsFalse) { // No Case statement for TRUE and FALSE m_expr.AsCql(builder, blockAlias); } else { builder.Append("CASE WHEN "); m_expr.AsCql(builder, blockAlias); builder.Append(" THEN True ELSE False END"); } return builder; } internal override string CqlFieldAlias(MemberPath outputMember) { // Return _from0, _from1 etc return m_originalCell.SlotName; } internal override void ToCompactString(StringBuilder builder) { StringUtil.FormatStringBuilder(builder, "<{0}, ", m_originalCell.SlotName); m_expr.ToCompactString(builder); builder.Append('>'); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- LinkDesigner.cs
- BitmapEffectInputConnector.cs
- CodeSubDirectory.cs
- XmlSchemaParticle.cs
- Cell.cs
- HttpWebResponse.cs
- SamlAuthorityBinding.cs
- TypeForwardedToAttribute.cs
- SqlPersonalizationProvider.cs
- WebScriptMetadataFormatter.cs
- IOThreadScheduler.cs
- Image.cs
- LongTypeConverter.cs
- TextModifier.cs
- XmlWrappingReader.cs
- AsymmetricKeyExchangeFormatter.cs
- ISAPIRuntime.cs
- Point3DConverter.cs
- Columns.cs
- Array.cs
- ElementNotEnabledException.cs
- HtmlImage.cs
- RegisteredHiddenField.cs
- MulticastOption.cs
- StylusPlugin.cs
- ReadOnlyNameValueCollection.cs
- _NestedSingleAsyncResult.cs
- ErrorReporting.cs
- WinInetCache.cs
- SoapAttributeOverrides.cs
- TextSchema.cs
- XmlSchemaInclude.cs
- Camera.cs
- GeometryDrawing.cs
- CaseInsensitiveComparer.cs
- ProcessHostServerConfig.cs
- ItemCollection.cs
- StorageFunctionMapping.cs
- Matrix.cs
- StreamedWorkflowDefinitionContext.cs
- BuildTopDownAttribute.cs
- StructuralCache.cs
- SplitterPanelDesigner.cs
- XmlUrlResolver.cs
- KeyEventArgs.cs
- MultiSelectRootGridEntry.cs
- XsltLoader.cs
- CutCopyPasteHelper.cs
- XmlSchemaObject.cs
- ToolStripDropDownItemDesigner.cs
- DataControlImageButton.cs
- ImageCodecInfo.cs
- LocalBuilder.cs
- KeyEvent.cs
- LinearGradientBrush.cs
- Int16AnimationBase.cs
- HashMembershipCondition.cs
- RequestStatusBarUpdateEventArgs.cs
- smtppermission.cs
- TriggerCollection.cs
- WriteFileContext.cs
- NoResizeSelectionBorderGlyph.cs
- SmiMetaData.cs
- TiffBitmapEncoder.cs
- hebrewshape.cs
- BitmapEffectInput.cs
- SqlClientMetaDataCollectionNames.cs
- TextView.cs
- DropTarget.cs
- AssociatedControlConverter.cs
- DefaultEventAttribute.cs
- CommonProperties.cs
- ArraySortHelper.cs
- TileBrush.cs
- CodeCompileUnit.cs
- SqlCrossApplyToCrossJoin.cs
- UTF8Encoding.cs
- StringUtil.cs
- StatusBarPanel.cs
- Version.cs
- CacheDependency.cs
- ListBoxChrome.cs
- Number.cs
- MetaChildrenColumn.cs
- WebPartMovingEventArgs.cs
- XmlSchemaExporter.cs
- WebPartCancelEventArgs.cs
- Win32Native.cs
- OleDbConnection.cs
- SQLMoneyStorage.cs
- PhysicalOps.cs
- AnonymousIdentificationSection.cs
- CheckBoxAutomationPeer.cs
- Currency.cs
- IdentifierCollection.cs
- HeaderPanel.cs
- DetailsViewInsertedEventArgs.cs
- __Filters.cs
- ConfigPathUtility.cs
- SiteMapHierarchicalDataSourceView.cs