Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit7cf4ba9

Browse files
authored
Simple classes cleanup (#348)
1 parent432467f commit7cf4ba9

38 files changed

+290
-319
lines changed

‎src/runtime/arrayobject.cs

Lines changed: 21 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
usingSystem;
22
usingSystem.Collections;
3-
usingSystem.Reflection;
43

54
namespacePython.Runtime
65
{
@@ -22,13 +21,13 @@ internal override bool CanSubclass()
2221

2322
publicstaticIntPtrtp_new(IntPtrtp,IntPtrargs,IntPtrkw)
2423
{
25-
ArrayObjectself=GetManagedObject(tp)asArrayObject;
24+
varself=GetManagedObject(tp)asArrayObject;
2625
if(Runtime.PyTuple_Size(args)!=1)
2726
{
2827
returnExceptions.RaiseTypeError("array expects 1 argument");
2928
}
3029
IntPtrop=Runtime.PyTuple_GetItem(args,0);
31-
Objectresult;
30+
objectresult;
3231

3332
if(!Converter.ToManaged(op,self.type,outresult,true))
3433
{
@@ -43,11 +42,11 @@ public static IntPtr tp_new(IntPtr tp, IntPtr args, IntPtr kw)
4342
/// </summary>
4443
publicstaticIntPtrmp_subscript(IntPtrob,IntPtridx)
4544
{
46-
CLRObjectobj=(CLRObject)ManagedType.GetManagedObject(ob);
47-
Arrayitems=obj.instasArray;
45+
varobj=(CLRObject)GetManagedObject(ob);
46+
varitems=obj.instasArray;
4847
TypeitemType=obj.inst.GetType().GetElementType();
4948
intrank=items.Rank;
50-
intindex=0;
49+
intindex;
5150
objectvalue;
5251

5352
// Note that CLR 1.0 only supports int indexes - methods to
@@ -61,7 +60,7 @@ public static IntPtr mp_subscript(IntPtr ob, IntPtr idx)
6160

6261
if(rank==1)
6362
{
64-
index=(int)Runtime.PyInt_AsLong(idx);
63+
index=Runtime.PyInt_AsLong(idx);
6564

6665
if(Exceptions.ErrorOccurred())
6766
{
@@ -83,7 +82,7 @@ public static IntPtr mp_subscript(IntPtr ob, IntPtr idx)
8382
returnIntPtr.Zero;
8483
}
8584

86-
returnConverter.ToPython(items.GetValue(index),itemType);
85+
returnConverter.ToPython(value,itemType);
8786
}
8887

8988
// Multi-dimensional arrays can be indexed a la: list[1, 2, 3].
@@ -96,12 +95,12 @@ public static IntPtr mp_subscript(IntPtr ob, IntPtr idx)
9695

9796
intcount=Runtime.PyTuple_Size(idx);
9897

99-
Arrayargs=Array.CreateInstance(typeof(Int32),count);
98+
varargs=newint[count];
10099

101-
for(inti=0;i<count;i++)
100+
for(vari=0;i<count;i++)
102101
{
103102
IntPtrop=Runtime.PyTuple_GetItem(idx,i);
104-
index=(int)Runtime.PyInt_AsLong(op);
103+
index=Runtime.PyInt_AsLong(op);
105104

106105
if(Exceptions.ErrorOccurred())
107106
{
@@ -135,11 +134,11 @@ public static IntPtr mp_subscript(IntPtr ob, IntPtr idx)
135134
/// </summary>
136135
publicstaticintmp_ass_subscript(IntPtrob,IntPtridx,IntPtrv)
137136
{
138-
CLRObjectobj=(CLRObject)ManagedType.GetManagedObject(ob);
139-
Arrayitems=obj.instasArray;
137+
varobj=(CLRObject)GetManagedObject(ob);
138+
varitems=obj.instasArray;
140139
TypeitemType=obj.inst.GetType().GetElementType();
141140
intrank=items.Rank;
142-
intindex=0;
141+
intindex;
143142
objectvalue;
144143

145144
if(items.IsReadOnly)
@@ -155,7 +154,7 @@ public static int mp_ass_subscript(IntPtr ob, IntPtr idx, IntPtr v)
155154

156155
if(rank==1)
157156
{
158-
index=(int)Runtime.PyInt_AsLong(idx);
157+
index=Runtime.PyInt_AsLong(idx);
159158

160159
if(Exceptions.ErrorOccurred())
161160
{
@@ -188,13 +187,12 @@ public static int mp_ass_subscript(IntPtr ob, IntPtr idx, IntPtr v)
188187
}
189188

190189
intcount=Runtime.PyTuple_Size(idx);
190+
varargs=newint[count];
191191

192-
Arrayargs=Array.CreateInstance(typeof(Int32),count);
193-
194-
for(inti=0;i<count;i++)
192+
for(vari=0;i<count;i++)
195193
{
196194
IntPtrop=Runtime.PyTuple_GetItem(idx,i);
197-
index=(int)Runtime.PyInt_AsLong(op);
195+
index=Runtime.PyInt_AsLong(op);
198196

199197
if(Exceptions.ErrorOccurred())
200198
{
@@ -229,9 +227,9 @@ public static int mp_ass_subscript(IntPtr ob, IntPtr idx, IntPtr v)
229227
/// </summary>
230228
publicstaticintsq_contains(IntPtrob,IntPtrv)
231229
{
232-
CLRObjectobj=(CLRObject)ManagedType.GetManagedObject(ob);
230+
varobj=(CLRObject)GetManagedObject(ob);
233231
TypeitemType=obj.inst.GetType().GetElementType();
234-
IListitems=obj.instasIList;
232+
varitems=obj.instasIList;
235233
objectvalue;
236234

237235
if(!Converter.ToManaged(v,itemType,outvalue,false))
@@ -253,8 +251,8 @@ public static int sq_contains(IntPtr ob, IntPtr v)
253251
/// </summary>
254252
publicstaticintmp_length(IntPtrob)
255253
{
256-
CLRObjectself=(CLRObject)ManagedType.GetManagedObject(ob);
257-
Arrayitems=self.instasArray;
254+
varself=(CLRObject)GetManagedObject(ob);
255+
varitems=self.instasArray;
258256
returnitems.Length;
259257
}
260258
}

‎src/runtime/assemblymanager.cs

Lines changed: 27 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,10 @@ internal class AssemblyManager
2121
//static Dictionary<string, Dictionary<string, string>> generics;
2222
staticAssemblyLoadEventHandlerlhandler;
2323
staticResolveEventHandlerrhandler;
24+
2425
// updated only under GIL?
2526
staticDictionary<string,int>probed;
27+
2628
// modified from event handlers below, potentially triggered from different .NET threads
2729
staticAssemblyListassemblies;
2830
internalstaticList<string>pypath;
@@ -53,7 +55,7 @@ internal static void Initialize()
5355
domain.AssemblyResolve+=rhandler;
5456

5557
Assembly[]items=domain.GetAssemblies();
56-
foreach(varainitems)
58+
foreach(Assemblyainitems)
5759
{
5860
try
5961
{
@@ -62,7 +64,7 @@ internal static void Initialize()
6264
}
6365
catch(Exceptionex)
6466
{
65-
Debug.WriteLine(string.Format("Error scanning assembly {0}. {1}",a,ex));
67+
Debug.WriteLine("Error scanning assembly {0}. {1}",a,ex);
6668
}
6769
}
6870
}
@@ -86,7 +88,7 @@ internal static void Shutdown()
8688
/// so that we can know about assemblies that get loaded after the
8789
/// Python runtime is initialized.
8890
/// </summary>
89-
staticvoidAssemblyLoadHandler(Objectob,AssemblyLoadEventArgsargs)
91+
privatestaticvoidAssemblyLoadHandler(objectob,AssemblyLoadEventArgsargs)
9092
{
9193
Assemblyassembly=args.LoadedAssembly;
9294
assemblies.Add(assembly);
@@ -101,7 +103,7 @@ static void AssemblyLoadHandler(Object ob, AssemblyLoadEventArgs args)
101103
/// for failed loads, because they might be dependencies of something
102104
/// we loaded from Python which also needs to be found on PYTHONPATH.
103105
/// </summary>
104-
staticAssemblyResolveHandler(Objectob,ResolveEventArgsargs)
106+
privatestaticAssemblyResolveHandler(objectob,ResolveEventArgsargs)
105107
{
106108
stringname=args.Name.ToLower();
107109
foreach(Assemblyainassemblies)
@@ -135,7 +137,7 @@ internal static void UpdatePath()
135137
{
136138
pypath.Clear();
137139
probed.Clear();
138-
for(inti=0;i<count;i++)
140+
for(vari=0;i<count;i++)
139141
{
140142
IntPtritem=Runtime.PyList_GetItem(list,i);
141143
stringpath=Runtime.GetManagedString(item);
@@ -159,7 +161,7 @@ public static string FindAssembly(string name)
159161
stringpath;
160162
stringtemp;
161163

162-
for(inti=0;i<pypath.Count;i++)
164+
for(vari=0;i<pypath.Count;i++)
163165
{
164166
stringhead=pypath[i];
165167
if(head==null||head.Length==0)
@@ -197,7 +199,7 @@ public static Assembly LoadAssembly(string name)
197199
{
198200
assembly=Assembly.Load(name);
199201
}
200-
catch(System.Exception)
202+
catch(Exception)
201203
{
202204
//if (!(e is System.IO.FileNotFoundException))
203205
//{
@@ -221,7 +223,7 @@ public static Assembly LoadAssemblyPath(string name)
221223
{
222224
assembly=Assembly.LoadFrom(path);
223225
}
224-
catch
226+
catch(Exception)
225227
{
226228
}
227229
}
@@ -241,7 +243,9 @@ public static Assembly LoadAssemblyFullPath(string name)
241243
if(Path.IsPathRooted(name))
242244
{
243245
if(!Path.HasExtension(name))
246+
{
244247
name=name+".dll";
248+
}
245249
if(File.Exists(name))
246250
{
247251
try
@@ -287,13 +291,13 @@ public static Assembly FindLoadedAssembly(string name)
287291
publicstaticboolLoadImplicit(stringname,boolwarn=true)
288292
{
289293
string[]names=name.Split('.');
290-
boolloaded=false;
291-
strings="";
294+
varloaded=false;
295+
vars="";
292296
AssemblylastAssembly=null;
293297
HashSet<Assembly>assembliesSet=null;
294-
for(inti=0;i<names.Length;i++)
298+
for(vari=0;i<names.Length;i++)
295299
{
296-
s=(i==0)?names[0]:s+"."+names[i];
300+
s=i==0?names[0]:s+"."+names[i];
297301
if(!probed.ContainsKey(s))
298302
{
299303
if(assembliesSet==null)
@@ -321,7 +325,7 @@ public static bool LoadImplicit(string name, bool warn = true)
321325
// Deprecation warning
322326
if(warn&&loaded)
323327
{
324-
stringdeprWarning=String.Format(
328+
stringdeprWarning=string.Format(
325329
"\nThe module was found, but not in a referenced namespace.\n"+
326330
"Implicit loading is deprecated. Please use clr.AddReference(\"{0}\").",
327331
Path.GetFileNameWithoutExtension(lastAssembly.Location));
@@ -345,24 +349,23 @@ internal static void ScanAssembly(Assembly assembly)
345349
// the assembly.
346350

347351
Type[]types=assembly.GetTypes();
348-
for(inti=0;i<types.Length;i++)
352+
foreach(Typetintypes)
349353
{
350-
Typet=types[i];
351354
stringns=t.Namespace??"";
352355
if(!namespaces.ContainsKey(ns))
353356
{
354357
string[]names=ns.Split('.');
355-
strings="";
356-
for(intn=0;n<names.Length;n++)
358+
vars="";
359+
for(varn=0;n<names.Length;n++)
357360
{
358-
s=(n==0)?names[0]:s+"."+names[n];
361+
s=n==0?names[0]:s+"."+names[n];
359362
namespaces.TryAdd(s,newConcurrentDictionary<Assembly,string>());
360363
}
361364
}
362365

363366
if(ns!=null)
364367
{
365-
namespaces[ns].TryAdd(assembly,String.Empty);
368+
namespaces[ns].TryAdd(assembly,string.Empty);
366369
}
367370

368371
if(ns!=null&&t.IsGenericTypeDefinition)
@@ -374,7 +377,7 @@ internal static void ScanAssembly(Assembly assembly)
374377

375378
publicstaticAssemblyName[]ListAssemblies()
376379
{
377-
List<AssemblyName>names=newList<AssemblyName>(assemblies.Count);
380+
varnames=newList<AssemblyName>(assemblies.Count);
378381
foreach(Assemblyassemblyinassemblies)
379382
{
380383
names.Add(assembly.GetName());
@@ -388,18 +391,15 @@ public static AssemblyName[] ListAssemblies()
388391
/// </summary>
389392
publicstaticboolIsValidNamespace(stringname)
390393
{
391-
return!String.IsNullOrEmpty(name)&&namespaces.ContainsKey(name);
394+
return!string.IsNullOrEmpty(name)&&namespaces.ContainsKey(name);
392395
}
393396

394397
/// <summary>
395398
/// Returns list of assemblies that declare types in a given namespace
396399
/// </summary>
397400
publicstaticIEnumerable<Assembly>GetAssemblies(stringnsname)
398401
{
399-
if(!namespaces.ContainsKey(nsname))
400-
returnnewList<Assembly>();
401-
402-
returnnamespaces[nsname].Keys;
402+
return!namespaces.ContainsKey(nsname)?newList<Assembly>():namespaces[nsname].Keys;
403403
}
404404

405405
/// <summary>
@@ -408,7 +408,7 @@ public static IEnumerable<Assembly> GetAssemblies(string nsname)
408408
publicstaticList<string>GetNames(stringnsname)
409409
{
410410
//Dictionary<string, int> seen = new Dictionary<string, int>();
411-
List<string>names=newList<string>(8);
411+
varnames=newList<string>(8);
412412

413413
List<string>g=GenericUtil.GetGenericBaseNames(nsname);
414414
if(g!=null)
@@ -424,9 +424,8 @@ public static List<string> GetNames(string nsname)
424424
foreach(Assemblyainnamespaces[nsname].Keys)
425425
{
426426
Type[]types=a.GetTypes();
427-
for(inti=0;i<types.Length;i++)
427+
foreach(Typetintypes)
428428
{
429-
Typet=types[i];
430429
if((t.Namespace??"")==nsname)
431430
{
432431
names.Add(t.Name);

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp