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
- SecurityCredentialsManager.cs
- SmtpReplyReader.cs
- EntityDataSourceEntityTypeFilterItem.cs
- AssociationType.cs
- AssemblyFilter.cs
- Control.cs
- ManifestResourceInfo.cs
- LinkDescriptor.cs
- DataGridViewRow.cs
- InputElement.cs
- EntityDataSourceContextCreatingEventArgs.cs
- DirectoryInfo.cs
- XamlSerializer.cs
- DataGridViewCellEventArgs.cs
- PerformanceCounterCategory.cs
- ItemsControl.cs
- httpapplicationstate.cs
- VerificationException.cs
- XPathPatternBuilder.cs
- GiveFeedbackEventArgs.cs
- IssuanceLicense.cs
- WCFBuildProvider.cs
- MethodBody.cs
- DataList.cs
- SHA1.cs
- Rotation3DAnimation.cs
- HttpWriter.cs
- ScaleTransform3D.cs
- PtsCache.cs
- TypeValidationEventArgs.cs
- ConstructorBuilder.cs
- XmlILConstructAnalyzer.cs
- PhysicalFontFamily.cs
- CodeDomDesignerLoader.cs
- TextEditorCharacters.cs
- SafeViewOfFileHandle.cs
- RankException.cs
- Html32TextWriter.cs
- WebPartConnectionsCancelVerb.cs
- XamlTypeWithExplicitNamespace.cs
- LoadRetryHandler.cs
- SingleKeyFrameCollection.cs
- DashStyle.cs
- PathFigureCollection.cs
- HttpSysSettings.cs
- ComplexTypeEmitter.cs
- TabControlCancelEvent.cs
- PhysicalAddress.cs
- PageCache.cs
- DnsEndPoint.cs
- DataSourceControl.cs
- DecoderReplacementFallback.cs
- Vector3DIndependentAnimationStorage.cs
- RegisterResponseInfo.cs
- uribuilder.cs
- ProtectedConfigurationSection.cs
- RelationshipEndCollection.cs
- RegularExpressionValidator.cs
- BinaryCommonClasses.cs
- Win32SafeHandles.cs
- StorageTypeMapping.cs
- Propagator.JoinPropagator.cs
- EntityContainer.cs
- PeerObject.cs
- OuterGlowBitmapEffect.cs
- ScalarOps.cs
- RegexCaptureCollection.cs
- WrapperEqualityComparer.cs
- StrokeFIndices.cs
- WsatStrings.cs
- AlphabetConverter.cs
- SiteMapPath.cs
- Dispatcher.cs
- DataServiceContext.cs
- QilFunction.cs
- UnmanagedMarshal.cs
- Header.cs
- SpnEndpointIdentity.cs
- DataObjectMethodAttribute.cs
- DtcInterfaces.cs
- Border.cs
- MsmqBindingBase.cs
- TextTabProperties.cs
- ListManagerBindingsCollection.cs
- PatternMatcher.cs
- SqlDataReader.cs
- ContextQuery.cs
- SimpleFieldTemplateUserControl.cs
- DetailsViewRowCollection.cs
- LayoutDump.cs
- DataComponentMethodGenerator.cs
- EntityTransaction.cs
- UICuesEvent.cs
- autovalidator.cs
- StylusPointPropertyInfoDefaults.cs
- HtmlButton.cs
- XmlnsCache.cs
- MatrixAnimationUsingKeyFrames.cs
- SrgsGrammar.cs
- MruCache.cs