コード例 #1
0
 private void SetupProperties(MetadataJavaMethod meta)
 {
     _metaFlags  = (AccessFlags)meta.AccessFlags;
     _metaName   = meta.Name;
     _metaType   = Type.GetType(meta.ReturnType);
     _metaParams = meta.Parameters.Select(c => c.ToDataClass()).ToArray();
 }
コード例 #2
0
 private static void WriteJavaMethod(this DataOutputStream stream, MetadataJavaMethod method)
 {
     stream.WriteUTF(method.Name);
     stream.WriteUTF(method.ReturnType);
     stream.WriteAccessFlagsParameter(method.AccessFlags);
     stream.WriteArray(method.Parameters, stream.WriteJavaParameter);
 }
コード例 #3
0
        private static MetadataJavaMethod ReadJavaMethod(this DataInputStream stream)
        {
            var method = new MetadataJavaMethod
            {
                Name        = stream.ReadUtfAndIntern(),
                ReturnType  = stream.ReadUtfAndIntern(),
                AccessFlags = stream.ReadAccessFlagsParameter(),
                Parameters  = stream.ReadArray(stream.ReadJavaParameter)
            };

            return(method);
        }
コード例 #4
0
 public static DataJavaMethod ToDataClass(this MetadataJavaMethod meta)
 {
     return(new DataJavaMethod(meta));
 }
コード例 #5
0
 public DataJavaMethod(MetadataJavaMethod meta)
 {
     CanLoad += (_, __) => SetupProperties(meta);
 }