Example #1
0
 override public void OnRELiteralExpression(RELiteralExpression e)
 {
     if (IsExtendedRE(e.Value))
     {
         Write("@");
     }
     Write(e.Value);
 }
Example #2
0
        public override void Switch(IAstTransformer transformer, out Node resultingNode)
        {
            RELiteralExpression thisNode           = (RELiteralExpression)this;
            Expression          resultingTypedNode = thisNode;

            transformer.OnRELiteralExpression(thisNode, ref resultingTypedNode);
            resultingNode = resultingTypedNode;
        }
        private Field CreateRegexFieldFor(RELiteralExpression node)
        {
            var field = CodeBuilder.CreateField(Context.GetUniqueName("re"), TypeSystemServices.RegexType);

            field.Modifiers   = TypeMemberModifiers.Internal | TypeMemberModifiers.Static;
            field.LexicalInfo = node.LexicalInfo;
            _currentType.Members.Add(field);
            return(field);
        }
        override public void OnRELiteralExpression(RELiteralExpression node)
        {
            if (AstUtil.IsRhsOfAssignment(node))
            {
                return;
            }

            var field = CreateRegexFieldFor(node);

            AddFieldInitializerToStaticConstructor(field, node);

            ReplaceCurrentNode(CodeBuilder.CreateReference(field));
        }
Example #5
0
 public static CompilerError InvalidRegexOption(RELiteralExpression node, char option)
 {
     return(Instantiate("BCE0173", node, option));
 }
Example #6
0
 public override void OnRELiteralExpression(RELiteralExpression node)
 {
     throw new NotImplementedException();
 }
Example #7
0
 override public void OnRELiteralExpression(RELiteralExpression node)
 {
     OnExpression(node);
 }
Example #8
0
 public override void OnRELiteralExpression(RELiteralExpression node)
 {
     int options = (int)AstUtil.GetRegexOptions(node);
 }
Example #9
0
 public override void OnRELiteralExpression(RELiteralExpression node)
 {
     MakeLiteralResult("System.Text.RegularExpressions.Regex");
 }
 public override void OnRELiteralExpression(RELiteralExpression node)
 {
     base.OnRELiteralExpression(node);
     Check(node);
 }