示例#1
0
        private static TypeDefinition ConvertClass(JavaClass jc)
        {
            string         className       = $"{jc.GetPackageName()}{jc.GetName()}";
            string         dotnetNamespace = IdentifierHelper.GetDotNetNamespace(className);
            string         dotnetClass     = IdentifierHelper.GetDotNetClassName(className);
            TypeDefinition result          = new TypeDefinition(dotnetNamespace, dotnetClass, jc.GetAttributes());

            return(result);
        }
        /// <summary>
        /// Gets the type reference from a module from a java type names.
        /// </summary>
        /// <param name="module">The module.</param>
        /// <param name="javaTypeName">Name of the java type.</param>
        /// <returns>The type reference.</returns>
        public static TypeReference GetJavaType(this ModuleDefinition module, string javaTypeName)
        {
            Guard.NotNull(ref module, nameof(module));
            Guard.NotNull(ref javaTypeName, nameof(javaTypeName));

            if (javaTypeName[0] == '[')
            {
                return(module.GetDescriptorType(javaTypeName));
            }

            string dotnetNamespace = IdentifierHelper.GetDotNetNamespace(javaTypeName);
            string dotnetClass     = IdentifierHelper.GetDotNetClassName(javaTypeName);

            return(module.GetType(dotnetNamespace, dotnetClass));
        }