Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntityDesign / Design / System / Data / EntityModel / Emitters / Emitter.cs / 1305376 / Emitter.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.CodeDom; using System.Diagnostics; using System.Data.EntityModel.SchemaObjectModel; namespace System.Data.EntityModel.Emitters { ////// /// internal abstract class Emitter { #region Instance Fields private ClientApiGenerator _generator = null; #endregion #region Static Fields private static CodeExpression _nullExpression = null; private static CodeExpression _thisRef = null; ///Name of property used to get StorageContext from an Entity private const string EntityGetContextPropertyName = "Context"; ///Name of property used to get StorageContext from a StorageSearcher protected const string SearcherGetContextPropertyName = "Context"; #endregion #region Protected Methods ////// /// /// protected Emitter(ClientApiGenerator generator) { Generator = generator; } ////// /// /// ///protected static CodeBinaryOperatorExpression EmitExpressionEqualsNull(CodeExpression expression) { return new CodeBinaryOperatorExpression(expression, CodeBinaryOperatorType.IdentityEquality, NullExpression); } protected static CodeBinaryOperatorExpression EmitExpressionDoesNotEqualNull(CodeExpression expression) { return new CodeBinaryOperatorExpression(expression, CodeBinaryOperatorType.IdentityInequality, NullExpression); } internal static CodeExpression EmitEnumMemberExpression(CodeTypeReference type, string member) { CodeTypeReferenceExpression typeref = new CodeTypeReferenceExpression(type); return new CodeFieldReferenceExpression(typeref, member); } #endregion #region Protected Properties /// /// /// protected static CodeExpression ThisRef { get { if (_thisRef == null) _thisRef = new CodeThisReferenceExpression(); return _thisRef; } } ////// /// internal ClientApiGenerator Generator { get { return _generator; } private set { _generator = value; } } protected TypeReference TypeReference { get { return _generator.TypeReference; } } protected AttributeEmitter AttributeEmitter { get { return _generator.AttributeEmitter; } } protected static CodeExpression NullExpression { get { if (_nullExpression == null) _nullExpression = new CodePrimitiveExpression(null); return _nullExpression; } } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.CodeDom; using System.Diagnostics; using System.Data.EntityModel.SchemaObjectModel; namespace System.Data.EntityModel.Emitters { ////// /// internal abstract class Emitter { #region Instance Fields private ClientApiGenerator _generator = null; #endregion #region Static Fields private static CodeExpression _nullExpression = null; private static CodeExpression _thisRef = null; ///Name of property used to get StorageContext from an Entity private const string EntityGetContextPropertyName = "Context"; ///Name of property used to get StorageContext from a StorageSearcher protected const string SearcherGetContextPropertyName = "Context"; #endregion #region Protected Methods ////// /// /// protected Emitter(ClientApiGenerator generator) { Generator = generator; } ////// /// /// ///protected static CodeBinaryOperatorExpression EmitExpressionEqualsNull(CodeExpression expression) { return new CodeBinaryOperatorExpression(expression, CodeBinaryOperatorType.IdentityEquality, NullExpression); } protected static CodeBinaryOperatorExpression EmitExpressionDoesNotEqualNull(CodeExpression expression) { return new CodeBinaryOperatorExpression(expression, CodeBinaryOperatorType.IdentityInequality, NullExpression); } internal static CodeExpression EmitEnumMemberExpression(CodeTypeReference type, string member) { CodeTypeReferenceExpression typeref = new CodeTypeReferenceExpression(type); return new CodeFieldReferenceExpression(typeref, member); } #endregion #region Protected Properties /// /// /// protected static CodeExpression ThisRef { get { if (_thisRef == null) _thisRef = new CodeThisReferenceExpression(); return _thisRef; } } ////// /// internal ClientApiGenerator Generator { get { return _generator; } private set { _generator = value; } } protected TypeReference TypeReference { get { return _generator.TypeReference; } } protected AttributeEmitter AttributeEmitter { get { return _generator.AttributeEmitter; } } protected static CodeExpression NullExpression { get { if (_nullExpression == null) _nullExpression = new CodePrimitiveExpression(null); return _nullExpression; } } #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
- BitmapCodecInfoInternal.cs
- ApplicationBuildProvider.cs
- ContextMenu.cs
- DataGridCellInfo.cs
- QueryProcessor.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- XpsSerializationManagerAsync.cs
- XslAstAnalyzer.cs
- TransportReplyChannelAcceptor.cs
- Interlocked.cs
- PeerNameRecord.cs
- ArrayTypeMismatchException.cs
- _SpnDictionary.cs
- TabletDeviceInfo.cs
- KeyedCollection.cs
- XDRSchema.cs
- parserscommon.cs
- DllNotFoundException.cs
- RoleGroupCollection.cs
- PageTheme.cs
- LinkDescriptor.cs
- Wildcard.cs
- InputScope.cs
- GuidelineSet.cs
- HwndMouseInputProvider.cs
- IndexedSelectQueryOperator.cs
- XPathNodeIterator.cs
- ExtensionWindowHeader.cs
- MemberAccessException.cs
- Process.cs
- Double.cs
- NumberFunctions.cs
- ListBase.cs
- ButtonBase.cs
- BooleanAnimationUsingKeyFrames.cs
- Operators.cs
- XmlIncludeAttribute.cs
- SocketPermission.cs
- DataServiceHostWrapper.cs
- BaseDataList.cs
- RepeatButton.cs
- QilParameter.cs
- XmlCountingReader.cs
- ArrayWithOffset.cs
- RijndaelManaged.cs
- PersianCalendar.cs
- DataGridViewComboBoxCell.cs
- wgx_exports.cs
- EntityRecordInfo.cs
- ExtenderProvidedPropertyAttribute.cs
- TextReader.cs
- DefaultValueConverter.cs
- TaiwanLunisolarCalendar.cs
- UpdateManifestForBrowserApplication.cs
- XmlDownloadManager.cs
- MediaPlayer.cs
- NumericUpDownAccelerationCollection.cs
- ECDiffieHellmanCng.cs
- latinshape.cs
- TokenBasedSetEnumerator.cs
- PropertyRecord.cs
- TrackingMemoryStream.cs
- InlinedAggregationOperatorEnumerator.cs
- CanonicalizationDriver.cs
- AttributedMetaModel.cs
- Condition.cs
- MemberMemberBinding.cs
- cryptoapiTransform.cs
- WriteableBitmap.cs
- Ref.cs
- DataGridViewLayoutData.cs
- MenuItemAutomationPeer.cs
- DocumentOrderQuery.cs
- MonthChangedEventArgs.cs
- PropertyReferenceSerializer.cs
- AssemblyCache.cs
- Pair.cs
- UpdateDelegates.Generated.cs
- RectKeyFrameCollection.cs
- ResourceSet.cs
- EllipticalNodeOperations.cs
- log.cs
- CodeEventReferenceExpression.cs
- PerspectiveCamera.cs
- BrowserDefinition.cs
- CodeAttributeArgumentCollection.cs
- CellTreeNodeVisitors.cs
- ActivityDesignerHighlighter.cs
- DataDesignUtil.cs
- CapabilitiesPattern.cs
- CacheEntry.cs
- NetworkAddressChange.cs
- TemplateControlBuildProvider.cs
- WebPartRestoreVerb.cs
- ConfigPathUtility.cs
- CharacterBufferReference.cs
- PackWebRequestFactory.cs
- ActiveXContainer.cs
- WebPartMenu.cs
- NamespaceInfo.cs