public static SyntaxKind Transform(ModifierDescription modifierDescription)
        {
            var result = default(SyntaxKind);

            switch (modifierDescription)
            {
            case ModifierDescription.PUBLIC:
            {
                result = SyntaxKind.PublicKeyword;
                break;
            }

            case ModifierDescription.ABSTRACT:
            {
                result = SyntaxKind.AbstractKeyword;
                break;
            }

            case ModifierDescription.FINAL:
            {
                result = SyntaxKind.SealedKeyword;
                break;
            }

            case ModifierDescription.PROTECTED:
            {
                result = SyntaxKind.ProtectedKeyword;
                break;
            }

            case ModifierDescription.STATIC:
            {
                result = SyntaxKind.StaticKeyword;
                break;
            }

            case ModifierDescription.NATIVE:
                break;

            case ModifierDescription.SYNCHRONIZED:
                break;

            case ModifierDescription.TRANSIENT:
                break;

            case ModifierDescription.VOLATILE:
                break;

            default:
            {
                throw new NotImplementedException();
            }
            }

            return(result);
        }
Example #2
0
        public static string ModifierToString(ModifierDescription description)
        {
            string result = null;

            switch (description)
            {
            case ModifierDescription.PUBLIC:
            {
                result = "public";
                break;
            }

            case ModifierDescription.ABSTRACT:
            {
                result = "abstaract";
                break;
            }

            case ModifierDescription.FINAL:
            {
                result = "sealed";
                break;
            }

            case ModifierDescription.PROTECTED:
            {
                result = "protected";
                break;
            }

            case ModifierDescription.STATIC:
            {
                result = "static";
                break;
            }

            case ModifierDescription.NATIVE:
                break;

            case ModifierDescription.SYNCHRONIZED:
                break;

            case ModifierDescription.TRANSIENT:
                break;

            case ModifierDescription.VOLATILE:
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(description), description, null);
            }

            return(result);
        }
        private static SyntaxKind ModifierDescriptionToSyntaxKind(
            ModifierDescription modifierDescription,
            bool isFieldModifiers)
        {
            SyntaxKind result;

            switch (modifierDescription)
            {
            case ModifierDescription.PUBLIC:
            {
                result = SyntaxKind.PublicKeyword;
                break;
            }

            case ModifierDescription.ABSTRACT:
            {
                result = SyntaxKind.AbstractKeyword;
                break;
            }

            case ModifierDescription.FINAL:
            {
                result = isFieldModifiers
                                    ? SyntaxKind.ReadOnlyKeyword
                                    : SyntaxKind.SealedKeyword;
                break;
            }

            case ModifierDescription.PROTECTED:
            {
                result = SyntaxKind.ProtectedKeyword;
                break;
            }

            case ModifierDescription.STATIC:
            {
                result = SyntaxKind.StaticKeyword;
                break;
            }

            default:
            {
                throw new NotImplementedException();
            }
            }

            return(result);
        }