@@ -156,6 +156,104 @@ def TmpLocalparam(self, value, width=None, signed=False, length=None):
156156 self .tmp_count += 1
157157 return self .Localparam (name , value , width , signed , length )
158158
159+ #---------------------------------------------------------------------------
160+ def InputLike (self , src , name = None , width = None , length = None , signed = None , value = None ):
161+ if name is None : name = src .name
162+ if width is None : width = src .width
163+ #if length is None: length = src.length
164+ if length is None : length = None
165+ if signed is None : signed = src .signed
166+ if value is None : value = src .value
167+ return self .Input (name , width , length , signed , value )
168+
169+ def OutputLike (self , src , name = None , width = None , length = None , signed = None , value = None ):
170+ if name is None : name = src .name
171+ if width is None : width = src .width
172+ #if length is None: length = src.length
173+ if length is None : length = None
174+ if signed is None : signed = src .signed
175+ if value is None : value = src .value
176+ return self .Output (name , width , length , signed , value )
177+
178+ def OutputRegLike (self , src , name = None , width = None , length = None , signed = None , value = None , initval = None ):
179+ if name is None : name = src .name
180+ if width is None : width = src .width
181+ #if length is None: length = src.length
182+ if length is None : length = None
183+ if signed is None : signed = src .signed
184+ if value is None : value = src .value
185+ if initval is None : initval = src .initval
186+ return self .OutputReg (name , width , length , signed , value , initval )
187+
188+ def InoutLike (self , src , name = None , width = None , length = None , signed = None , value = None ):
189+ if name is None : name = src .name
190+ if width is None : width = src .width
191+ #if length is None: length = src.length
192+ if length is None : length = None
193+ if signed is None : signed = src .signed
194+ if value is None : value = src .value
195+ return self .Inout (name , width , length , signed , value )
196+
197+ def WireLike (self , src , name = None , width = None , length = None , signed = None , value = None ):
198+ if name is None : name = src .name
199+ if width is None : width = src .width
200+ if length is None : length = src .length
201+ if signed is None : signed = src .signed
202+ if value is None : value = src .value
203+ return self .Wire (name , width , length , signed , value )
204+
205+ def RegLike (self , src , name = None , width = None , length = None , signed = None , value = None , initval = None ):
206+ if name is None : name = src .name
207+ if width is None : width = src .width
208+ if length is None : length = src .length
209+ if signed is None : signed = src .signed
210+ if value is None : value = src .value
211+ if initval is None : initval = src .initval
212+ return self .Reg (name , width , length , signed , value , initval )
213+
214+ def IntegerLike (self , src , name = None , width = None , length = None , signed = None , value = None , initval = None ):
215+ if name is None : name = src .name
216+ if width is None : width = src .width
217+ if length is None : length = src .length
218+ if signed is None : signed = src .signed
219+ if value is None : value = src .value
220+ if initval is None : initval = src .initval
221+ return self .Integer (name , width , length , signed , value , initval )
222+
223+ def RealLike (self , src , name = None , width = None , length = None , signed = None , value = None , initval = None ):
224+ if name is None : name = src .name
225+ if width is None : width = src .width
226+ if length is None : length = src .length
227+ if signed is None : signed = src .signed
228+ if value is None : value = src .value
229+ if initval is None : initval = src .initval
230+ return self .Real (name , width , length , signed , value , initval )
231+
232+ def GenvarLike (self , src , name = None , width = None , length = None , signed = None , value = None ):
233+ if name is None : name = src .name
234+ if width is None : width = src .width
235+ #if length is None: length = src.length
236+ if length is None : length = None
237+ if signed is None : signed = src .signed
238+ if value is None : value = src .value
239+ return self .Genvar (name , width , length , signed , value )
240+
241+ def ParameterLike (self , src , name = None , value = None , width = None , signed = False , length = None ):
242+ if name is None : name = src .name
243+ if value is None : value = src .value
244+ if width is None : width = src .width
245+ if signed is None : signed = src .signed
246+ if length is None : length = src .length
247+ return self .Parameter (name , value , width , signed , length )
248+
249+ def LocalparamLike (self , src , name = None , value = None , width = None , signed = False , length = None ):
250+ if name is None : name = src .name
251+ if value is None : value = src .value
252+ if width is None : width = src .width
253+ if signed is None : signed = src .signed
254+ if length is None : length = src .length
255+ return self .Localparam (name , value , width , signed , length )
256+
159257 #---------------------------------------------------------------------------
160258 # User interface for control statements
161259 #---------------------------------------------------------------------------
0 commit comments