@@ -22,7 +22,7 @@ def isStatic(member):
2222 return False
2323
2424
25- def isA (x ):
25+ def isA (member , x ):
2626 """Returns True if member is an `x`."""
2727 for child in member :
2828 if child .tag == "MemberType" and child .text == x :
@@ -77,10 +77,10 @@ def generateTypeModels(arg):
7777 try :
7878 if not file_path .name .endswith (".xml" ):
7979 continue
80-
80+
8181 if not file_path .is_file ():
8282 continue
83-
83+
8484 tree = ET .parse (str (file_path ))
8585 root = tree .getroot ()
8686 if not root .tag == "Type" :
@@ -91,8 +91,8 @@ def generateTypeModels(arg):
9191 if "`" in file_path .stem or "+" in file_path .stem :
9292 continue # Skip generics (and nested types?) for now
9393
94- folderName = file_path .parent .name .replace ("." , "" )
95- filename = folderName + "/model .yml"
94+ folderName = "generated/" + file_path .parent .name .replace ("." , "" )
95+ filename = folderName + "/typemodel .yml"
9696 s = set ()
9797 for elem in root .findall (".//Members/Member" ):
9898 name = elem .attrib ["MemberName" ]
@@ -106,10 +106,10 @@ def generateTypeModels(arg):
106106 startSelectorMarker = ""
107107 endSelectorMarker = ""
108108 if isField (elem ):
109- startSelectorMarker = "Field "
109+ startSelectorMarker = "Member "
110110 endSelectorMarker = ""
111111 if isProperty (elem ):
112- startSelectorMarker = "Property "
112+ startSelectorMarker = "Member "
113113 endSelectorMarker = ""
114114 if isMethod (elem ):
115115 startSelectorMarker = "Method"
@@ -134,8 +134,9 @@ def generateTypeModels(arg):
134134 returnType = elem .find (".//ReturnValue/ReturnType" ).text
135135 if returnType == "System.Void" :
136136 continue # Don't generate type summaries for void methods
137+
137138 s .add (
138- f' - ["{ fixup (returnType ) } ", "{ thisType + staticMarker } ", "{ startSelectorMarker } [{ name } ]{ endSelectorMarker } "]\n '
139+ f' - ["{ fixup (returnType . lower ()) } ", "{ thisType . lower () + staticMarker } ", "{ startSelectorMarker } [{ name . lower () } ]{ endSelectorMarker } "]\n '
139140 )
140141
141142 summaries [filename ].update (s )
@@ -153,6 +154,7 @@ def writeModels():
153154 continue
154155 os .makedirs (os .path .dirname (filename ), exist_ok = True )
155156 with open (filename , "x" ) as file :
157+ file .write ("# THIS FILE IS AN AUTO-GENERATED MODELS AS DATA FILE. DO NOT EDIT.\n " )
156158 file .write ("extensions:\n " )
157159 file .write (" - addsTo:\n " )
158160 file .write (" pack: microsoft/powershell-all\n " )
0 commit comments