Пример #1
0
 static string ResolveName(SassClassifierType type)
 {
     switch (type)
     {
         case SassClassifierType.Keyword: return ScssClassificationTypes.Keyword;
         case SassClassifierType.Comment: return ScssClassificationTypes.Comment;
         case SassClassifierType.UserFunctionDefinition: return ScssClassificationTypes.UserFunctionDefinition;
         case SassClassifierType.UserFunctionReference: return ScssClassificationTypes.UserFunctionReference;
         case SassClassifierType.MixinDefinition: return ScssClassificationTypes.MixinDefinition;
         case SassClassifierType.MixinReference: return ScssClassificationTypes.MixinReference;
         case SassClassifierType.VariableReference: return ScssClassificationTypes.VariableReference;
         case SassClassifierType.VariableDefinition: return ScssClassificationTypes.VariableDefinition;
         case SassClassifierType.ImportanceModifier: return ScssClassificationTypes.ImportanceModifier;
         case SassClassifierType.ParentReference: return ScssClassificationTypes.ParentReference;
         case SassClassifierType.Interpolation: return ScssClassificationTypes.Interpolation;
         case SassClassifierType.SystemFunction: return ScssClassificationTypes.FunctionReference;
         case SassClassifierType.String: return ScssClassificationTypes.StringValue;
         case SassClassifierType.PropertyName: return ScssClassificationTypes.CssPropertyName;
         case SassClassifierType.PropertyValue: return ScssClassificationTypes.CssPropertyValue;
         case SassClassifierType.FunctionBrace: return "text";
         case SassClassifierType.XmlDocumentationComment: return ScssClassificationTypes.XmlDocumentationComment;
         case SassClassifierType.XmlDocumentationTag: return ScssClassificationTypes.XmlDocumentationTag;
         case SassClassifierType.ClassName:
         case SassClassifierType.IdName:
         case SassClassifierType.ElementName:
         case SassClassifierType.PseudoClass:
         case SassClassifierType.PseudoElement:
             return ScssClassificationTypes.CssSelector;
         default: return "Default";
     }
 }
Пример #2
0
 public TokenItem(Token token, SassClassifierType classifierType = SassClassifierType.Default)
     : this(classifierType)
 {
     _Start = token.Start;
     _Length = token.Length;
     _End = token.Start + token.Length;
     SourceType = token.Type;
 }
Пример #3
0
 public TokenItem(Token token, SassClassifierType classifierType = SassClassifierType.Default)
     : this(classifierType)
 {
     _Start     = token.Start;
     _Length    = token.Length;
     _End       = token.Start + token.Length;
     SourceType = token.Type;
 }
Пример #4
0
        public TokenItem AddCurrentAndAdvance(ITokenStream stream, SassClassifierType classifierType = SassClassifierType.Default)
        {
            var item = new TokenItem(stream.Current, classifierType);

            Add(item);

            stream.Advance();
            return(item);
        }
Пример #5
0
        static string ResolveName(SassClassifierType type)
        {
            switch (type)
            {
            case SassClassifierType.Keyword: return(ScssClassificationTypes.Keyword);

            case SassClassifierType.Comment: return(ScssClassificationTypes.Comment);

            case SassClassifierType.UserFunctionDefinition: return(ScssClassificationTypes.UserFunctionDefinition);

            case SassClassifierType.UserFunctionReference: return(ScssClassificationTypes.UserFunctionReference);

            case SassClassifierType.MixinDefinition: return(ScssClassificationTypes.MixinDefinition);

            case SassClassifierType.MixinReference: return(ScssClassificationTypes.MixinReference);

            case SassClassifierType.VariableReference: return(ScssClassificationTypes.VariableReference);

            case SassClassifierType.VariableDefinition: return(ScssClassificationTypes.VariableDefinition);

            case SassClassifierType.ImportanceModifier: return(ScssClassificationTypes.ImportanceModifier);

            case SassClassifierType.ParentReference: return(ScssClassificationTypes.ParentReference);

            case SassClassifierType.Interpolation: return(ScssClassificationTypes.Interpolation);

            case SassClassifierType.SystemFunction: return(ScssClassificationTypes.FunctionReference);

            case SassClassifierType.String: return(ScssClassificationTypes.StringValue);

            case SassClassifierType.PropertyName: return(ScssClassificationTypes.CssPropertyName);

            case SassClassifierType.PropertyValue: return(ScssClassificationTypes.CssPropertyValue);

            case SassClassifierType.FunctionBrace: return("text");

            case SassClassifierType.XmlDocumentationComment: return(ScssClassificationTypes.XmlDocumentationComment);

            case SassClassifierType.XmlDocumentationTag: return(ScssClassificationTypes.XmlDocumentationTag);

            case SassClassifierType.ClassName:
            case SassClassifierType.IdName:
            case SassClassifierType.ElementName:
            case SassClassifierType.PseudoClass:
            case SassClassifierType.PseudoElement:
                return(ScssClassificationTypes.CssSelector);

            default: return("Default");
            }
        }
Пример #6
0
 public ClassName(SassClassifierType classifierType = SassClassifierType.ClassName)
 {
     ClassifierType = classifierType;
 }
Пример #7
0
 public Function(SassClassifierType classifierType = SassClassifierType.SystemFunction)
 {
     FunctionClassifierType = classifierType;
 }
Пример #8
0
 public ClassifierContext(SassClassifierType type)
 {
     Name = ResolveName(type);
 }
Пример #9
0
 public static IClassifierContext Get(SassClassifierType type)
 {
     return(Cache.GetOrAdd(type, t => new ClassifierContext(type)));
 }
Пример #10
0
 public VariableName(SassClassifierType classifierType)
 {
     ClassifierType = classifierType;
 }
Пример #11
0
 public static IClassifierContext Get(SassClassifierType type)
 {
     return Cache.GetOrAdd(type, t => new ClassifierContext(type));
 }
Пример #12
0
 public TokenItem(SassClassifierType classifierType = SassClassifierType.Default)
 {
     ClassifierType = classifierType;
 }
Пример #13
0
 public ClassifierContext(SassClassifierType type)
 {
     Name = ResolveName(type);
 }
Пример #14
0
 public Function(SassClassifierType classifierType = SassClassifierType.SystemFunction)
 {
     FunctionClassifierType = classifierType;
 }
Пример #15
0
 public MixinName(SassClassifierType type)
 {
     ClassifierType = type;
 }
Пример #16
0
 public TokenItem(SassClassifierType classifierType = SassClassifierType.Default)
 {
     ClassifierType = classifierType;
 }
Пример #17
0
        public static MixinName CreateParsed(IItemFactory itemFactory, ITextProvider text, ITokenStream stream, SassClassifierType classifierType)
        {
            var name = new MixinName(classifierType);

            if (name.Parse(itemFactory, text, stream))
            {
                return(name);
            }

            return(null);
        }
Пример #18
0
 public ClassName(SassClassifierType classifierType = SassClassifierType.ClassName)
 {
     ClassifierType = classifierType;
 }