The Labs \ Source Viewer \ SSCLI \ System.Xml.Xsl \ XslFlags

  1. //------------------------------------------------------------------------------
  2. // <copyright file="XslFlags.cs" company="Microsoft">
  3. //
  4. // Copyright (c) 2006 Microsoft Corporation. All rights reserved.
  5. //
  6. // The use and distribution terms for this software are contained in the file
  7. // named license.txt, which can be found in the root of this distribution.
  8. // By using this software in any fashion, you are agreeing to be bound by the
  9. // terms of this license.
  10. //
  11. // You must not remove this notice, or any other, from this software.
  12. //
  13. // </copyright>
  14. //------------------------------------------------------------------------------
  15. namespace System.Xml.Xsl
  16. {
  17.     [Flags()]
  18.     internal enum XslFlags
  19.     {
  20.         None = 0,
  21.        
  22.         // XPath types flags. These flags indicate what type the result of the expression may have.
  23.         String = 1,
  24.         Number = 2,
  25.         Boolean = 4,
  26.         Node = 8,
  27.         Nodeset = 16,
  28.         Rtf = 32,
  29.         TypeFilter = AnyType,
  30.         AnyType = XslFlags.String | XslFlags.Number | XslFlags.Boolean | XslFlags.Node | XslFlags.Nodeset | XslFlags.Rtf,
  31.        
  32.         // Focus flags. These flags indicate which of the three focus values (context item, context position,
  33.         // context size) are required for calculation of the expression.
  34.         Current = 256,
  35.         Position = 512,
  36.         Last = 1024,
  37.         FocusFilter = FullFocus,
  38.         FullFocus = XslFlags.Current | XslFlags.Position | XslFlags.Last,
  39.        
  40.         // Indicates that the expression contains at least one of xsl:call-template, xsl:apply-templates,
  41.         // xsl:apply-imports, [xsl:]use-attribute-sets. Needed for default values of xsl:param's.
  42.         HasCalls = 4096,
  43.        
  44.         // Used for xsl:param's only. Indicates that at least one caller does not pass value for this param,
  45.         // so its default value will be used.
  46.         MayBeDefault = 8192,
  47.        
  48.         // Indicates that expression may produce side effects
  49.         // This flag is on for xsl:message and for calls to extension functions.
  50.         SideEffects = 16384,
  51.        
  52.         // Indicates that the corresponding graph vertex has been already visited in flag propagation process.
  53.         Stop = 32768
  54.     }
  55. }

Developer Fusion