def get_arguments(self) -> FunctionArgumentValues: """ Gets arguments of the function """ arguments = False argument_context = dict( is_variable_length=False, optional_counter=0, ) argument_list: List[List[FunctionArgument]] = [] index = 0 while index < len(self.tokenized): token = self.tokenized[index] # Only arguments content should be processed if token.type == self.TokenType.ARGUMENT_START: arguments = True if token.type == self.TokenType.ARGUMENT_END: break if not arguments: index += 1 continue if token.type in { self.TokenType.ARGUMENT_START, self.TokenType.COMMA_SIGN, }: index += 1 continue result, index = self.get_argument(index, argument_context) if result: # Do not add empty list argument_list.append(result) return FunctionArgumentValues(arguments=argument_list, variable_length=argument_context[ 'is_variable_length'])
arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='sendTo', argument_type=FunctionType( names=['table', 'element'], is_optional=True, ), default_value='getRootElement()', ) ], [ FunctionArgument( name='name', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='sourceElement', argument_type=FunctionType( names=['element'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='arguments', argument_type=None, default_value=None, ) ]], variable_length=True, ),
def function_generator_fixture() -> TypeScriptFunctionGenerator: data = FunctionData( signature=FunctionSignature( name='getZoneName', return_types=FunctionReturnTypes( return_types=[ FunctionType( names=['string', 'mixed'], is_optional=True, ), FunctionType( names=['int'], is_optional=False, ), ], variable_length=True, ), arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='x', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='y', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='z', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ), FunctionArgument( name='z_1', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ), ], [ FunctionArgument( name='citiesonly', argument_type=FunctionType( names=['bool'], is_optional=True, ), default_value='false', ) ]], variable_length=True, ), ), url='getZoneName', docs=FunctionDoc( description="This function allows you to retrieve " "the zone name of a certain location. ", arguments={ "x": """The X axis position """, "y": """The Y axis position """, "z": """The Z axis position """, "citiesonly": (": An optional argument to choose if you want " "to return one of the following city names:\n" "** Tierra Robada\n" "** Bone County\n" "** Las Venturas\n" "** San Fierro\n" "** Red County\n" "** Whetstone\n" "** Flint County\n" "** Los Santos ") }, result="""returns the string of the zone name """, ), ) url = PageUrl( url="/wiki/GetZoneName", name="getZoneName", category="World functions", type=ListType.SERVER, ) return TypeScriptFunctionGenerator(data=data, url=url, host_name='https://example.com')
return_types=[ FunctionType( names=['bool'], is_optional=False, ) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[ [ FunctionArgument( name='clearFor', argument_type=FunctionType( names=['element'], is_optional=True, ), default_value='getRootElement()', ) ] ], variable_length=False, ), generic_types=[ ], ), docs=FunctionDoc( description='' , arguments={ "clearFor": """The player whose chat is to be cleared. By default, this is set to the root element, which will affect all players. """
}, result='' , ), arguments=FunctionArgumentValues( arguments=[ [ FunctionArgument( name='thePlayer', argument_type=FunctionType( names=['player'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='matchingDimension', argument_type=FunctionType( names=['bool'], is_optional=False, ), default_value=None, ) ] ], variable_length=False, ), ) ], ),
return_types=[ FunctionType( names=['string'], is_optional=False, ) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[ [ FunctionArgument( name='bodyPartID', argument_type=FunctionType( names=['int'], is_optional=False, ), default_value=None, ) ] ], variable_length=False, ), generic_types=[ ], ), docs=FunctionDoc( description='This function is used to get the name of a body part on a player.' , arguments={ "bodyPartID": """: An integer representing the body part ID you wish to retrieve the name of. """
arguments=FunctionArgumentValues( arguments=[ [ FunctionArgument( name='text', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='r', argument_type=FunctionType( names=['int'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='g', argument_type=FunctionType( names=['int'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='b', argument_type=FunctionType( names=['int'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='messageType', argument_type=FunctionType( names=['int'], is_optional=False, ), default_value=None, ) ] ], variable_length=False, ),
is_optional=False, ), FunctionType( names=['int'], is_optional=False, ) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='theTimer', argument_type=FunctionType( names=['timer'], is_optional=False, ), default_value=None, ) ]], variable_length=False, ), generic_types=[], ), docs=FunctionDoc( description= 'This function is for getting the details of a running timer.', arguments={"theTimer": """A timer element. """}, result= '* integer one represents the time left in miliseconds (1000th of a second) of the current time left in the loop.\n* integer two represents the amount of times the timer has left to execute.\n* integer three represents the time interval of timer.\n* returns false if the timer doesnt exist or stopped running. also, debugscript will say bad argument @ gettimerdetails. to prevent this, you can check if the timer exists with istimer().', ),
arguments=FunctionArgumentValues( arguments=[ [ FunctionArgument( name='fileResource', argument_type=FunctionType( names=['resource'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='fileName', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='fileSize', argument_type=FunctionType( names=['number'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='state', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ] ], variable_length=False, ),
return_types=FunctionReturnTypes( return_types=[ FunctionType( names=['var'], is_optional=False, ) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='settingName', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ]], variable_length=False, ), generic_types=[], ), docs=FunctionDoc( description= 'This function gets a settings value, or a group of settings values, from the settings system|settings registry.', arguments={}, result= 'returns the value of the setting if a single setting was specified and found, or a table (in associative-array form) containing:\n*the list of global setting name/value pairs if . is passed as a setting name,\n*the list of resource settings if a resource name followed by a . is passed,\n*the list of the scripts resource settings if an empty string is passed.\nit returns false if the specified setting or settings group doesnt exist, or if the settings group you are trying to retrieve doesnt have any public or protected settings.', ),
arguments=FunctionArgumentValues( arguments=[ [ FunctionArgument( name='width', argument_type=FunctionType(is_optional=False, names=['number']), default_value=None, ) ], [ FunctionArgument( name='height', argument_type=FunctionType(is_optional=False, names=['number']), default_value=None, ) ], [ FunctionArgument( name='textureFormat', argument_type=FunctionType(is_optional=True, names=['string']), default_value='"argb', ) ], [ FunctionArgument( name='textureEdge', argument_type=FunctionType(is_optional=True, names=['string']), default_value='"wrap', ) ], [ FunctionArgument( name='textureType', argument_type=FunctionType(is_optional=True, names=['string']), default_value='"2d', ) ], [ FunctionArgument( name='depth', argument_type=FunctionType(is_optional=True, names=['number']), default_value='1', ) ], ], variable_length=False, ),
server=[], client=[ EventData( name='onClientProjectileCreation', docs=FunctionDoc( description= 'This event is triggered when a projectile is created.', arguments={ "creator": """the element that created the projectile. """ }, result='', ), arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='creator', argument_type=FunctionType( names=['element'], is_optional=False, ), default_value=None, ) ]], variable_length=False, ), ) ], ) ]
return_types=[ FunctionType( names=['acl'], is_optional=False, ) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[ [ FunctionArgument( name='aclName', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ] ], variable_length=False, ), generic_types=[ ], ), docs=FunctionDoc( description='This function creates an ACL entry in the Access Control List system with the specified name.' , arguments={ "aclName": """The name of the ACL entry to add. """
arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='lightType', argument_type=FunctionType( names=['int'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='posX', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='posY', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='posZ', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='radius', argument_type=FunctionType( names=['float'], is_optional=True, ), default_value='3', ) ], [ FunctionArgument( name='r', argument_type=FunctionType( names=['int'], is_optional=True, ), default_value='255', ) ], [ FunctionArgument( name='g', argument_type=FunctionType( names=['int'], is_optional=True, ), default_value='0', ) ], [ FunctionArgument( name='b', argument_type=FunctionType( names=['int'], is_optional=True, ), default_value='0', ) ], [ FunctionArgument( name='dirX', argument_type=FunctionType( names=['float'], is_optional=True, ), default_value='0', ) ], [ FunctionArgument( name='dirY', argument_type=FunctionType( names=['float'], is_optional=True, ), default_value='0', ) ], [ FunctionArgument( name='dirZ', argument_type=FunctionType( names=['float'], is_optional=True, ), default_value='0', ) ], [ FunctionArgument( name='createsShadow', argument_type=FunctionType( names=['bool'], is_optional=True, ), default_value='false', ) ]], variable_length=False, ),
arguments=FunctionArgumentValues( arguments=[ [ FunctionArgument( name='databaseConnection', argument_type=FunctionType( names=['element'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='query', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='param1', argument_type=FunctionType( names=['var'], is_optional=True, ), default_value=None, ) ], [ FunctionArgument( name='param2', argument_type=FunctionType( names=['var'], is_optional=True, ), default_value=None, ) ] ], variable_length=True, ),
is_optional=False, ), FunctionType( names=['int'], is_optional=False, ) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='theLight', argument_type=FunctionType( names=['light'], is_optional=False, ), default_value=None, ) ]], variable_length=False, ), generic_types=[], ), docs=FunctionDoc( description= 'This function returns the color for a Element/Light|light element.', arguments={ "theLight": """The Element/Light|light that you wish to retrieve the color of. """ },
arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='x', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='y', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='z', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='size', argument_type=FunctionType( names=['float'], is_optional=True, ), default_value='1.8', ) ]], variable_length=False, ),
arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='weaponID', argument_type=FunctionType( names=['int'], is_optional=False, ), default_value=None, ), FunctionArgument( name='weaponName', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='weaponSkill', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='property', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ]], variable_length=False, ),
return_types=FunctionReturnTypes( return_types=[ FunctionType( names=['int'], is_optional=False, ) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='theTeam', argument_type=FunctionType( names=['team'], is_optional=False, ), default_value=None, ) ]], variable_length=False, ), generic_types=[], ), docs=FunctionDoc( description= 'This function is for returning the number of players in the specified team.', arguments={ "theTeam": """The team you wish to retrieve the player count of. """ },
arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='weaponID', argument_type=FunctionType( names=['int'], is_optional=False, ), default_value=None, ), FunctionArgument( name='weaponName', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='weaponSkill', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='property', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ]], variable_length=False, ),
arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='name', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='pass', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='allowCaseVariations', argument_type=FunctionType( names=['bool'], is_optional=True, ), default_value='false', ) ]], variable_length=False, ),
), FunctionType( names=['float'], is_optional=False, ) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[ [ FunctionArgument( name='theSearchLight', argument_type=FunctionType( names=['searchlight'], is_optional=False, ), default_value=None, ) ] ], variable_length=False, ), generic_types=[ ], ), docs=FunctionDoc( description='This function gets the end position of a Element/Searchlight|searchlight element.' , arguments={ "theSearchLight": """: the searchlight to get the position where the searchlights light cone ends. """
arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='x', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='y', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='z', argument_type=FunctionType( names=['float'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='theType', argument_type=FunctionType( names=['int'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='creator', argument_type=FunctionType( names=['player'], is_optional=True, ), default_value='nil', ) ]], variable_length=False, ),
return_types=FunctionReturnTypes( return_types=[ FunctionType( names=['int'], is_optional=False, ) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='projectile', argument_type=FunctionType( names=['projectile'], is_optional=False, ), default_value=None, ) ]], variable_length=False, ), generic_types=[], ), docs=FunctionDoc( description= 'Get the time left before a projectile detonates.', arguments={ "projectile": """: the projectile to get the timer of. """ },
arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='IP', argument_type=FunctionType( names=['string'], is_optional=True, ), default_value=None, ) ], [ FunctionArgument( name='Username', argument_type=FunctionType( names=['string'], is_optional=True, ), default_value=None, ) ], [ FunctionArgument( name='Serial', argument_type=FunctionType( names=['string'], is_optional=True, ), default_value=None, ) ], [ FunctionArgument( name='responsibleElement', argument_type=FunctionType( names=['player'], is_optional=True, ), default_value=None, ) ], [ FunctionArgument( name='reason', argument_type=FunctionType( names=['string'], is_optional=True, ), default_value=None, ) ], [ FunctionArgument( name='seconds', argument_type=FunctionType( names=['int'], is_optional=True, ), default_value='0', ) ]], variable_length=False, ),
arguments=FunctionArgumentValues( arguments=[ [ FunctionArgument( name='shader', argument_type=FunctionType( names=['element'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='textureName', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='targetElement', argument_type=FunctionType( names=['element'], is_optional=True, ), default_value='nil', ) ], [ FunctionArgument( name='appendLayers', argument_type=FunctionType( names=['bool'], is_optional=True, ), default_value='true', ) ] ], variable_length=False, ),
) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='node', argument_type=FunctionType( names=['xmlnode'], is_optional=False, ), default_value=None, ) ], [ FunctionArgument( name='parent', argument_type=FunctionType( names=['element'], is_optional=False, ), default_value=None, ) ]], variable_length=False, ), generic_types=[], ), docs=FunctionDoc( description=
docs=FunctionDoc( description= 'This event triggers whenever the user presses an alphanumeric character on their keyboard. This also includes special characters, ie. / # % { }.', arguments={ "character": """: a string representing the pressed character. """ }, result='', ), arguments=FunctionArgumentValues( arguments=[[ FunctionArgument( name='character', argument_type=FunctionType( names=['string'], is_optional=False, ), default_value=None, ) ]], variable_length=False, ), ) ], ), CompoundEventData( server=[], client=[ EventData( name='onClientClick', docs=FunctionDoc(
# Autogenerated file. ANY CHANGES WILL BE OVERWRITTEN from to_python.core.types import FunctionType, \ FunctionArgument, \ FunctionArgumentValues, \ FunctionReturnTypes, \ FunctionSignature, \ FunctionDoc, \ EventData, \ CompoundEventData DUMP_PARTIAL = [ CompoundEventData( server=[ EventData( name='onWeaponFire', docs=FunctionDoc( description= 'This event is triggered when a custom weapon gets fired.', arguments={}, result='', ), arguments=FunctionArgumentValues( arguments=[], variable_length=False, ), ) ], client=[], ) ]
is_optional=False, ), FunctionType( names=['int'], is_optional=False, ), FunctionType( names=['int'], is_optional=False, ) ], variable_length=False, ), arguments=FunctionArgumentValues( arguments=[ ], variable_length=False, ), generic_types=[ ], ), docs=FunctionDoc( description='This function returns the water color of the GTA world.\nNote: The server can only return the water color, if it has actually been set by script.' , arguments={ }, result='returns 4 int|ints, indicating the color of the water. (rgba)' , ), url='getWaterColor', ),