diff options
author | Tim Hatch <tim@timhatch.com> | 2014-06-07 07:58:54 -0700 |
---|---|---|
committer | Tim Hatch <tim@timhatch.com> | 2014-06-07 07:58:54 -0700 |
commit | 32ceb8d947ab8efa9a37543a88a9428aaeacc8a9 (patch) | |
tree | 8b52b931ede55ef56e96b3eb41e4cf30f822ee34 | |
parent | dfdf0de2da30f0626706c5f3ec9f3c3153c69917 (diff) | |
parent | 1725e215f9833d271462ccc7d3bd5fc7c0e41bab (diff) | |
download | pygments-32ceb8d947ab8efa9a37543a88a9428aaeacc8a9.tar.gz |
Merged in krasul/pygments-main/swift (pull request #371)
Initial Swift lexer
-rw-r--r-- | pygments/lexers/_mapping.py | 2 | ||||
-rw-r--r-- | pygments/lexers/_phpbuiltins.py | 1146 | ||||
-rw-r--r-- | pygments/lexers/compiled.py | 5 | ||||
-rw-r--r-- | pygments/lexers/functional.py | 20 | ||||
-rw-r--r-- | pygments/lexers/templates.py | 22 | ||||
-rw-r--r-- | pygments/lexers/web.py | 72 | ||||
-rw-r--r-- | tests/examplefiles/example.slim | 31 | ||||
-rw-r--r-- | tests/examplefiles/example.sls | 51 | ||||
-rw-r--r-- | tests/examplefiles/pawn_example | 9 | ||||
-rw-r--r-- | tests/examplefiles/r6rs-comments.scm | 23 |
10 files changed, 1279 insertions, 102 deletions
diff --git a/pygments/lexers/_mapping.py b/pygments/lexers/_mapping.py index f773c6d8..989cd32d 100644 --- a/pygments/lexers/_mapping.py +++ b/pygments/lexers/_mapping.py @@ -309,6 +309,7 @@ LEXERS = { 'ScilabLexer': ('pygments.lexers.math', 'Scilab', ('scilab',), ('*.sci', '*.sce', '*.tst'), ('text/scilab',)), 'ScssLexer': ('pygments.lexers.web', 'SCSS', ('scss',), ('*.scss',), ('text/x-scss',)), 'ShellSessionLexer': ('pygments.lexers.shell', 'Shell Session', ('shell-session',), ('*.shell-session',), ('application/x-sh-session',)), + 'SlimLexer': ('pygments.lexers.web', 'Slim', ('slim',), ('*.slim',), ('text/x-slim',)), 'SmaliLexer': ('pygments.lexers.dalvik', 'Smali', ('smali',), ('*.smali',), ('text/smali',)), 'SmalltalkLexer': ('pygments.lexers.other', 'Smalltalk', ('smalltalk', 'squeak', 'st'), ('*.st',), ('text/x-smalltalk',)), 'SmartyLexer': ('pygments.lexers.templates', 'Smarty', ('smarty',), ('*.tpl',), ('application/x-smarty',)), @@ -352,6 +353,7 @@ LEXERS = { 'XmlSmartyLexer': ('pygments.lexers.templates', 'XML+Smarty', ('xml+smarty',), (), ('application/xml+smarty',)), 'XsltLexer': ('pygments.lexers.web', 'XSLT', ('xslt',), ('*.xsl', '*.xslt', '*.xpl'), ('application/xsl+xml', 'application/xslt+xml')), 'XtendLexer': ('pygments.lexers.jvm', 'Xtend', ('xtend',), ('*.xtend',), ('text/x-xtend',)), + 'YamlJinjaLexer': ('pygments.lexers.templates', 'YAML+Jinja', ('yaml+jinja', 'salt', 'sls'), ('*.sls',), ('text/x-yaml+jinja', 'text/x-sls')), 'YamlLexer': ('pygments.lexers.text', 'YAML', ('yaml',), ('*.yaml', '*.yml'), ('text/x-yaml',)), 'ZephirLexer': ('pygments.lexers.web', 'Zephir', ('zephir',), ('*.zep',), ()), } diff --git a/pygments/lexers/_phpbuiltins.py b/pygments/lexers/_phpbuiltins.py index 2f5ec851..354e995c 100644 --- a/pygments/lexers/_phpbuiltins.py +++ b/pygments/lexers/_phpbuiltins.py @@ -58,23 +58,20 @@ MODULES = {'.NET': ['dotnet_load'], 'mysqli_bind_result', 'mysqli_client_encoding', 'mysqli_connect', - 'mysqli_disable_reads_from_master', 'mysqli_disable_rpl_parse', 'mysqli_enable_reads_from_master', 'mysqli_enable_rpl_parse', 'mysqli_escape_string', 'mysqli_execute', 'mysqli_fetch', + 'mysqli_get_cache_stats', 'mysqli_get_metadata', 'mysqli_master_query', 'mysqli_param_count', 'mysqli_report', 'mysqli_rpl_parse_enabled', 'mysqli_rpl_probe', - 'mysqli_rpl_query_type', 'mysqli_send_long_data', - 'mysqli_send_query', - 'mysqli_set_opt', 'mysqli_slave_query'], 'Apache': ['apache_child_terminate', 'apache_get_modules', @@ -90,6 +87,7 @@ MODULES = {'.NET': ['dotnet_load'], 'virtual'], 'Array': ['array_change_key_case', 'array_chunk', + 'array_column', 'array_combine', 'array_count_values', 'array_diff_assoc', @@ -147,6 +145,7 @@ MODULES = {'.NET': ['dotnet_load'], 'end', 'extract', 'in_array', + 'key_exists', 'key', 'krsort', 'ksort', @@ -182,6 +181,7 @@ MODULES = {'.NET': ['dotnet_load'], 'bcscale', 'bcsqrt', 'bcsub'], + 'Blenc': ['blenc_encrypt'], 'Bzip2': ['bzclose', 'bzcompress', 'bzdecompress', @@ -234,8 +234,7 @@ MODULES = {'.NET': ['dotnet_load'], 'variant_set', 'variant_sub', 'variant_xor'], - 'CUBRID': ['cubrid_affected_rows', - 'cubrid_bind', + 'CUBRID': ['cubrid_bind', 'cubrid_close_prepare', 'cubrid_close_request', 'cubrid_col_get', @@ -254,10 +253,12 @@ MODULES = {'.NET': ['dotnet_load'], 'cubrid_execute', 'cubrid_fetch', 'cubrid_free_result', + 'cubrid_get_autocommit', 'cubrid_get_charset', 'cubrid_get_class_name', 'cubrid_get_client_info', 'cubrid_get_db_parameter', + 'cubrid_get_query_timeout', 'cubrid_get_server_info', 'cubrid_get', 'cubrid_insert_id', @@ -267,11 +268,27 @@ MODULES = {'.NET': ['dotnet_load'], 'cubrid_lob_get', 'cubrid_lob_send', 'cubrid_lob_size', + 'cubrid_lob2_bind', + 'cubrid_lob2_close', + 'cubrid_lob2_export', + 'cubrid_lob2_import', + 'cubrid_lob2_new', + 'cubrid_lob2_read', + 'cubrid_lob2_seek64', + 'cubrid_lob2_seek', + 'cubrid_lob2_size64', + 'cubrid_lob2_size', + 'cubrid_lob2_tell64', + 'cubrid_lob2_tell', + 'cubrid_lob2_write', 'cubrid_lock_read', 'cubrid_lock_write', 'cubrid_move_cursor', + 'cubrid_next_result', 'cubrid_num_cols', 'cubrid_num_rows', + 'cubrid_pconnect_with_url', + 'cubrid_pconnect', 'cubrid_prepare', 'cubrid_put', 'cubrid_rollback', @@ -280,7 +297,10 @@ MODULES = {'.NET': ['dotnet_load'], 'cubrid_seq_insert', 'cubrid_seq_put', 'cubrid_set_add', + 'cubrid_set_autocommit', + 'cubrid_set_db_parameter', 'cubrid_set_drop', + 'cubrid_set_query_timeout', 'cubrid_version'], 'Cairo': ['cairo_create', 'cairo_font_face_get_type', @@ -395,7 +415,8 @@ MODULES = {'.NET': ['dotnet_load'], 'JewishToJD', 'JulianToJD', 'unixtojd'], - 'Classes/Object': ['call_user_method_array', + 'Classes/Object': ['__autoload', + 'call_user_method_array', 'call_user_method', 'class_alias', 'class_exists', @@ -405,13 +426,15 @@ MODULES = {'.NET': ['dotnet_load'], 'get_class', 'get_declared_classes', 'get_declared_interfaces', + 'get_declared_traits', 'get_object_vars', 'get_parent_class', 'interface_exists', 'is_a', 'is_subclass_of', 'method_exists', - 'property_exists'], + 'property_exists', + 'trait_exists'], 'Classkit': ['classkit_import', 'classkit_method_add', 'classkit_method_copy', @@ -429,7 +452,10 @@ MODULES = {'.NET': ['dotnet_load'], 'ctype_graph', 'ctype_lower', 'ctype_print', - 'ctype_punct'], + 'ctype_punct', + 'ctype_space', + 'ctype_upper', + 'ctype_xdigit'], 'Cyrus': ['cyrus_authenticate', 'cyrus_bind', 'cyrus_close', @@ -499,25 +525,11 @@ MODULES = {'.NET': ['dotnet_load'], 'dba_replace', 'dba_sync'], 'DOM': ['dom_import_simplexml'], - 'DOM XML (PHP 4)': ['domxml_new_doc', - 'domxml_open_file', - 'domxml_open_mem', - 'domxml_version', - 'domxml_xmltree', - 'domxml_xslt_stylesheet_doc', - 'domxml_xslt_stylesheet_file', - 'domxml_xslt_stylesheet', - 'domxml_xslt_version', - 'xpath_eval_expression', - 'xpath_eval', - 'xpath_new_context', - 'xpath_register_ns_auto', - 'xpath_register_ns', - 'xptr_eval', - 'xptr_new_context'], 'Date/Time': ['checkdate', 'date_add', 'date_create_from_format', + 'date_create_immutable_from_format', + 'date_create_immutable', 'date_create', 'date_date_set', 'date_default_timezone_get', @@ -564,15 +576,83 @@ MODULES = {'.NET': ['dotnet_load'], 'timezone_open', 'timezone_transitions_get', 'timezone_version_get'], - 'Direct IO': ['dio_close', 'dio_fcntl', 'dio_open'], + 'Direct IO': ['dio_close', + 'dio_fcntl', + 'dio_open', + 'dio_read', + 'dio_seek', + 'dio_stat', + 'dio_tcsetattr', + 'dio_truncate', + 'dio_write'], 'Directory': ['chdir', 'chroot', 'closedir', + 'dir', 'getcwd', 'opendir', 'readdir', 'rewinddir', 'scandir'], + 'Eio': ['eio_busy', + 'eio_cancel', + 'eio_chmod', + 'eio_chown', + 'eio_close', + 'eio_custom', + 'eio_dup2', + 'eio_event_loop', + 'eio_fallocate', + 'eio_fchmod', + 'eio_fchown', + 'eio_fdatasync', + 'eio_fstat', + 'eio_fstatvfs', + 'eio_fsync', + 'eio_ftruncate', + 'eio_futime', + 'eio_get_event_stream', + 'eio_get_last_error', + 'eio_grp_add', + 'eio_grp_cancel', + 'eio_grp_limit', + 'eio_grp', + 'eio_init', + 'eio_link', + 'eio_lstat', + 'eio_mkdir', + 'eio_mknod', + 'eio_nop', + 'eio_npending', + 'eio_nready', + 'eio_nreqs', + 'eio_nthreads', + 'eio_open', + 'eio_poll', + 'eio_read', + 'eio_readahead', + 'eio_readdir', + 'eio_readlink', + 'eio_realpath', + 'eio_rename', + 'eio_rmdir', + 'eio_seek', + 'eio_sendfile', + 'eio_set_max_idle', + 'eio_set_max_parallel', + 'eio_set_max_poll_reqs', + 'eio_set_max_poll_time', + 'eio_set_min_parallel', + 'eio_stat', + 'eio_statvfs', + 'eio_symlink', + 'eio_sync_file_range', + 'eio_sync', + 'eio_syncfs', + 'eio_truncate', + 'eio_unlink', + 'eio_utime', + 'eio_write'], 'Enchant': ['enchant_broker_describe', 'enchant_broker_dict_exists', 'enchant_broker_free_dict', @@ -608,7 +688,7 @@ MODULES = {'.NET': ['dotnet_load'], 'exif_tagname', 'exif_thumbnail', 'read_exif_data'], - 'Expect': ['expect_expectl'], + 'Expect': ['expect_expectl', 'expect_popen'], 'FAM': ['fam_cancel_monitor', 'fam_close', 'fam_monitor_collection', @@ -654,6 +734,7 @@ MODULES = {'.NET': ['dotnet_load'], 'fdf_set_target_frame', 'fdf_set_value', 'fdf_set_version'], + 'FPM': ['fastcgi_finish_request'], 'FTP': ['ftp_alloc', 'ftp_cdup', 'ftp_chdir', @@ -688,6 +769,147 @@ MODULES = {'.NET': ['dotnet_load'], 'ftp_size', 'ftp_ssl_connect', 'ftp_systype'], + 'Fann': ['fann_cascadetrain_on_data', + 'fann_cascadetrain_on_file', + 'fann_clear_scaling_params', + 'fann_copy', + 'fann_create_from_file', + 'fann_create_shortcut_array', + 'fann_create_shortcut', + 'fann_create_sparse_array', + 'fann_create_sparse', + 'fann_create_standard_array', + 'fann_create_standard', + 'fann_create_train_from_callback', + 'fann_create_train', + 'fann_descale_input', + 'fann_descale_output', + 'fann_descale_train', + 'fann_destroy_train', + 'fann_destroy', + 'fann_duplicate_train_data', + 'fann_get_activation_function', + 'fann_get_activation_steepness', + 'fann_get_bias_array', + 'fann_get_bit_fail_limit', + 'fann_get_bit_fail', + 'fann_get_cascade_activation_functions_count', + 'fann_get_cascade_activation_functions', + 'fann_get_cascade_activation_steepnesses_count', + 'fann_get_cascade_activation_steepnesses', + 'fann_get_cascade_candidate_change_fraction', + 'fann_get_cascade_candidate_limit', + 'fann_get_cascade_candidate_stagnation_epochs', + 'fann_get_cascade_max_cand_epochs', + 'fann_get_cascade_max_out_epochs', + 'fann_get_cascade_min_cand_epochs', + 'fann_get_cascade_min_out_epochs', + 'fann_get_cascade_num_candidate_groups', + 'fann_get_cascade_num_candidates', + 'fann_get_cascade_output_change_fraction', + 'fann_get_cascade_output_stagnation_epochs', + 'fann_get_cascade_weight_multiplier', + 'fann_get_connection_array', + 'fann_get_connection_rate', + 'fann_get_errno', + 'fann_get_errstr', + 'fann_get_layer_array', + 'fann_get_learning_momentum', + 'fann_get_learning_rate', + 'fann_get_MSE', + 'fann_get_network_type', + 'fann_get_num_input', + 'fann_get_num_layers', + 'fann_get_num_output', + 'fann_get_quickprop_decay', + 'fann_get_quickprop_mu', + 'fann_get_rprop_decrease_factor', + 'fann_get_rprop_delta_max', + 'fann_get_rprop_delta_min', + 'fann_get_rprop_delta_zero', + 'fann_get_rprop_increase_factor', + 'fann_get_sarprop_step_error_shift', + 'fann_get_sarprop_step_error_threshold_factor', + 'fann_get_sarprop_temperature', + 'fann_get_sarprop_weight_decay_shift', + 'fann_get_total_connections', + 'fann_get_total_neurons', + 'fann_get_train_error_function', + 'fann_get_train_stop_function', + 'fann_get_training_algorithm', + 'fann_init_weights', + 'fann_length_train_data', + 'fann_merge_train_data', + 'fann_num_input_train_data', + 'fann_num_output_train_data', + 'fann_print_error', + 'fann_randomize_weights', + 'fann_read_train_from_file', + 'fann_reset_errno', + 'fann_reset_errstr', + 'fann_reset_MSE', + 'fann_run', + 'fann_save_train', + 'fann_save', + 'fann_scale_input_train_data', + 'fann_scale_input', + 'fann_scale_output_train_data', + 'fann_scale_output', + 'fann_scale_train_data', + 'fann_scale_train', + 'fann_set_activation_function_hidden', + 'fann_set_activation_function_layer', + 'fann_set_activation_function_output', + 'fann_set_activation_function', + 'fann_set_activation_steepness_hidden', + 'fann_set_activation_steepness_layer', + 'fann_set_activation_steepness_output', + 'fann_set_activation_steepness', + 'fann_set_bit_fail_limit', + 'fann_set_callback', + 'fann_set_cascade_activation_functions', + 'fann_set_cascade_activation_steepnesses', + 'fann_set_cascade_candidate_change_fraction', + 'fann_set_cascade_candidate_limit', + 'fann_set_cascade_candidate_stagnation_epochs', + 'fann_set_cascade_max_cand_epochs', + 'fann_set_cascade_max_out_epochs', + 'fann_set_cascade_min_cand_epochs', + 'fann_set_cascade_min_out_epochs', + 'fann_set_cascade_num_candidate_groups', + 'fann_set_cascade_output_change_fraction', + 'fann_set_cascade_output_stagnation_epochs', + 'fann_set_cascade_weight_multiplier', + 'fann_set_error_log', + 'fann_set_input_scaling_params', + 'fann_set_learning_momentum', + 'fann_set_learning_rate', + 'fann_set_output_scaling_params', + 'fann_set_quickprop_decay', + 'fann_set_quickprop_mu', + 'fann_set_rprop_decrease_factor', + 'fann_set_rprop_delta_max', + 'fann_set_rprop_delta_min', + 'fann_set_rprop_delta_zero', + 'fann_set_rprop_increase_factor', + 'fann_set_sarprop_step_error_shift', + 'fann_set_sarprop_step_error_threshold_factor', + 'fann_set_sarprop_temperature', + 'fann_set_sarprop_weight_decay_shift', + 'fann_set_scaling_params', + 'fann_set_train_error_function', + 'fann_set_train_stop_function', + 'fann_set_training_algorithm', + 'fann_set_weight_array', + 'fann_set_weight', + 'fann_shuffle_train_data', + 'fann_subset_train_data', + 'fann_test_data', + 'fann_test', + 'fann_train_epoch', + 'fann_train_on_data', + 'fann_train_on_file', + 'fann_train'], 'Fileinfo': ['finfo_buffer', 'finfo_close', 'finfo_file', @@ -827,7 +1049,6 @@ MODULES = {'.NET': ['dotnet_load'], 'ibase_service_attach', 'ibase_service_detach', 'ibase_set_event_handler', - 'ibase_timefmt', 'ibase_trans', 'ibase_wait_event'], 'FriBiDi': ['fribidi_log2vis'], @@ -906,8 +1127,118 @@ MODULES = {'.NET': ['dotnet_load'], 'unregister_tick_function'], 'GD and Image': ['gd_info', 'getimagesize', + 'getimagesizefromstring', 'image_type_to_extension', - 'image_type_to_mime_type'], + 'image_type_to_mime_type', + 'image2wbmp', + 'imageaffine', + 'imageaffinematrixconcat', + 'imageaffinematrixget', + 'imagealphablending', + 'imageantialias', + 'imagearc', + 'imagechar', + 'imagecharup', + 'imagecolorallocate', + 'imagecolorallocatealpha', + 'imagecolorat', + 'imagecolorclosest', + 'imagecolorclosestalpha', + 'imagecolorclosesthwb', + 'imagecolordeallocate', + 'imagecolorexact', + 'imagecolorexactalpha', + 'imagecolormatch', + 'imagecolorresolve', + 'imagecolorresolvealpha', + 'imagecolorset', + 'imagecolorsforindex', + 'imagecolorstotal', + 'imagecolortransparent', + 'imageconvolution', + 'imagecopy', + 'imagecopymerge', + 'imagecopymergegray', + 'imagecopyresampled', + 'imagecopyresized', + 'imagecreate', + 'imagecreatefromgd2', + 'imagecreatefromgd2part', + 'imagecreatefromgd', + 'imagecreatefromgif', + 'imagecreatefromjpeg', + 'imagecreatefrompng', + 'imagecreatefromstring', + 'imagecreatefromwbmp', + 'imagecreatefromwebp', + 'imagecreatefromxbm', + 'imagecreatefromxpm', + 'imagecreatetruecolor', + 'imagecrop', + 'imagecropauto', + 'imagedashedline', + 'imagedestroy', + 'imageellipse', + 'imagefill', + 'imagefilledarc', + 'imagefilledellipse', + 'imagefilledpolygon', + 'imagefilledrectangle', + 'imagefilltoborder', + 'imagefilter', + 'imageflip', + 'imagefontheight', + 'imagefontwidth', + 'imageftbbox', + 'imagefttext', + 'imagegammacorrect', + 'imagegd2', + 'imagegd', + 'imagegif', + 'imagegrabscreen', + 'imagegrabwindow', + 'imageinterlace', + 'imageistruecolor', + 'imagejpeg', + 'imagelayereffect', + 'imageline', + 'imageloadfont', + 'imagepalettecopy', + 'imagepalettetotruecolor', + 'imagepng', + 'imagepolygon', + 'imagepsbbox', + 'imagepsencodefont', + 'imagepsextendfont', + 'imagepsfreefont', + 'imagepsloadfont', + 'imagepsslantfont', + 'imagepstext', + 'imagerectangle', + 'imagerotate', + 'imagesavealpha', + 'imagescale', + 'imagesetbrush', + 'imagesetinterpolation', + 'imagesetpixel', + 'imagesetstyle', + 'imagesetthickness', + 'imagesettile', + 'imagestring', + 'imagestringup', + 'imagesx', + 'imagesy', + 'imagetruecolortopalette', + 'imagettfbbox', + 'imagettftext', + 'imagetypes', + 'imagewbmp', + 'imagewebp', + 'imagexbm', + 'iptcembed', + 'iptcparse', + 'jpeg2wbmp', + 'png2wbmp'], 'GMP': ['gmp_abs', 'gmp_add', 'gmp_and', @@ -949,7 +1280,8 @@ MODULES = {'.NET': ['dotnet_load'], 'gmp_sub', 'gmp_testbit', 'gmp_xor'], - 'GeoIP': ['geoip_continent_code_by_name', + 'GeoIP': ['geoip_asnum_by_name', + 'geoip_continent_code_by_name', 'geoip_country_code_by_name', 'geoip_country_code3_by_name', 'geoip_country_name_by_name', @@ -957,12 +1289,15 @@ MODULES = {'.NET': ['dotnet_load'], 'geoip_db_avail', 'geoip_db_filename', 'geoip_db_get_all_info', + 'geoip_domain_by_name', 'geoip_id_by_name', 'geoip_isp_by_name', + 'geoip_netspeedcell_by_name', 'geoip_org_by_name', 'geoip_record_by_name', 'geoip_region_by_name', 'geoip_region_name_by_code', + 'geoip_setup_custom_directory', 'geoip_time_zone_by_country_and_region'], 'Gettext': ['bind_textdomain_codeset', 'bindtextdomain', @@ -1100,6 +1435,7 @@ MODULES = {'.NET': ['dotnet_load'], 'hash_hmac_file', 'hash_hmac', 'hash_init', + 'hash_pbkdf2', 'hash_update_file', 'hash_update_stream', 'hash_update', @@ -1166,10 +1502,10 @@ MODULES = {'.NET': ['dotnet_load'], 'hw_stat', 'hw_Unlock', 'hw_Who'], - 'Hyperwave API': ['hw_api_attribute', + 'Hyperwave API': ['hwapi_attribute_new', + 'hwapi_content_new', 'hwapi_hgcsp', - 'hw_api_content', - 'hw_api_object'], + 'hwapi_object_new'], 'IBM DB2': ['db2_autocommit', 'db2_bind_param', 'db2_client_info', @@ -1200,7 +1536,27 @@ MODULES = {'.NET': ['dotnet_load'], 'db2_free_result', 'db2_free_stmt', 'db2_get_option', - 'db2_last_insert_id'], + 'db2_last_insert_id', + 'db2_lob_read', + 'db2_next_result', + 'db2_num_fields', + 'db2_num_rows', + 'db2_pclose', + 'db2_pconnect', + 'db2_prepare', + 'db2_primary_keys', + 'db2_procedure_columns', + 'db2_procedures', + 'db2_result', + 'db2_rollback', + 'db2_server_info', + 'db2_set_option', + 'db2_special_columns', + 'db2_statistics', + 'db2_stmt_error', + 'db2_stmt_errormsg', + 'db2_table_privileges', + 'db2_tables'], 'ID3': ['id3_get_frame_long_name', 'id3_get_frame_short_name', 'id3_get_genre_id', @@ -1210,7 +1566,7 @@ MODULES = {'.NET': ['dotnet_load'], 'id3_get_version', 'id3_remove_tag', 'id3_set_tag'], - 'IDN': ['idn_to_ascii', 'idn_to_unicode', 'idn_to_utf8'], + 'IDN': ['grapheme_substr', 'idn_to_ascii', 'idn_to_unicode', 'idn_to_utf8'], 'IIS': ['iis_add_server', 'iis_get_dir_security', 'iis_get_script_map', @@ -1237,6 +1593,7 @@ MODULES = {'.NET': ['dotnet_load'], 'imap_check', 'imap_clearflag_full', 'imap_close', + 'imap_create', 'imap_createmailbox', 'imap_delete', 'imap_deletemailbox', @@ -1247,6 +1604,7 @@ MODULES = {'.NET': ['dotnet_load'], 'imap_fetchheader', 'imap_fetchmime', 'imap_fetchstructure', + 'imap_fetchtext', 'imap_gc', 'imap_get_quota', 'imap_get_quotaroot', @@ -1274,12 +1632,14 @@ MODULES = {'.NET': ['dotnet_load'], 'imap_open', 'imap_ping', 'imap_qprint', + 'imap_rename', 'imap_renamemailbox', 'imap_reopen', 'imap_rfc822_parse_adrlist', 'imap_rfc822_parse_headers', 'imap_rfc822_write_address', 'imap_savebody', + 'imap_scan', 'imap_scanmailbox', 'imap_search', 'imap_set_quota', @@ -1373,7 +1733,10 @@ MODULES = {'.NET': ['dotnet_load'], 'inotify_queue_len', 'inotify_read', 'inotify_rm_watch'], - 'JSON': ['json_decode', 'json_encode', 'json_last_error'], + 'JSON': ['json_decode', + 'json_encode', + 'json_last_error_msg', + 'json_last_error'], 'Java': ['java_last_exception_clear', 'java_last_exception_get'], 'Judy': ['judy_type', 'judy_version'], 'KADM5': ['kadm5_chpass_principal', @@ -1392,6 +1755,8 @@ MODULES = {'.NET': ['dotnet_load'], 'ldap_close', 'ldap_compare', 'ldap_connect', + 'ldap_control_paged_result_response', + 'ldap_control_paged_result', 'ldap_count_entries', 'ldap_delete', 'ldap_dn2ufn', @@ -1487,7 +1852,26 @@ MODULES = {'.NET': ['dotnet_load'], 'm_numcolumns', 'm_numrows', 'm_parsecommadelimited', - 'm_responsekeys'], + 'm_responsekeys', + 'm_responseparam', + 'm_returnstatus', + 'm_setblocking', + 'm_setdropfile', + 'm_setip', + 'm_setssl_cafile', + 'm_setssl_files', + 'm_setssl', + 'm_settimeout', + 'm_sslcert_gen_hash', + 'm_transactionssent', + 'm_transinqueue', + 'm_transkeyval', + 'm_transnew', + 'm_transsend', + 'm_uwait', + 'm_validateidentifier', + 'm_verifyconnection', + 'm_verifysslcert'], 'Mail': ['ezmlm_hash', 'mail'], 'Mailparse': ['mailparse_determine_best_xfer_encoding', 'mailparse_msg_create', @@ -1521,7 +1905,36 @@ MODULES = {'.NET': ['dotnet_load'], 'decoct', 'deg2rad', 'exp', - 'expm1'], + 'expm1', + 'floor', + 'fmod', + 'getrandmax', + 'hexdec', + 'hypot', + 'is_finite', + 'is_infinite', + 'is_nan', + 'lcg_value', + 'log10', + 'log1p', + 'log', + 'max', + 'min', + 'mt_getrandmax', + 'mt_rand', + 'mt_srand', + 'octdec', + 'pi', + 'pow', + 'rad2deg', + 'rand', + 'round', + 'sin', + 'sinh', + 'sqrt', + 'srand', + 'tan', + 'tanh'], 'MaxDB': ['maxdb_affected_rows', 'maxdb_autocommit', 'maxdb_bind_param', @@ -1599,7 +2012,31 @@ MODULES = {'.NET': ['dotnet_load'], 'maxdb_sqlstate', 'maxdb_ssl_set', 'maxdb_stat', - 'maxdb_stmt_affected_rows'], + 'maxdb_stmt_affected_rows', + 'maxdb_stmt_bind_param', + 'maxdb_stmt_bind_result', + 'maxdb_stmt_close_long_data', + 'maxdb_stmt_close', + 'maxdb_stmt_data_seek', + 'maxdb_stmt_errno', + 'maxdb_stmt_error', + 'maxdb_stmt_execute', + 'maxdb_stmt_fetch', + 'maxdb_stmt_free_result', + 'maxdb_stmt_init', + 'maxdb_stmt_num_rows', + 'maxdb_stmt_param_count', + 'maxdb_stmt_prepare', + 'maxdb_stmt_reset', + 'maxdb_stmt_result_metadata', + 'maxdb_stmt_send_long_data', + 'maxdb_stmt_sqlstate', + 'maxdb_stmt_store_result', + 'maxdb_store_result', + 'maxdb_thread_id', + 'maxdb_thread_safe', + 'maxdb_use_result', + 'maxdb_warning_count'], 'Mcrypt': ['mcrypt_cbc', 'mcrypt_cfb', 'mcrypt_create_iv', @@ -1739,6 +2176,7 @@ MODULES = {'.NET': ['dotnet_load'], 'mb_encode_numericentity', 'mb_encoding_aliases', 'mb_ereg_match', + 'mb_ereg_replace_callback', 'mb_ereg_replace', 'mb_ereg_search_getpos', 'mb_ereg_search_getregs', @@ -1828,6 +2266,20 @@ MODULES = {'.NET': ['dotnet_load'], 'mysql_tablename', 'mysql_thread_id', 'mysql_unbuffered_query'], + 'Mysqlnd_memcache': ['mysqlnd_memcache_get_config', 'mysqlnd_memcache_set'], + 'Mysqlnd_ms': ['mysqlnd_ms_dump_servers', + 'mysqlnd_ms_fabric_select_global', + 'mysqlnd_ms_fabric_select_shard', + 'mysqlnd_ms_get_last_gtid', + 'mysqlnd_ms_get_last_used_connection', + 'mysqlnd_ms_get_stats', + 'mysqlnd_ms_match_wild', + 'mysqlnd_ms_query_is_select', + 'mysqlnd_ms_set_qos', + 'mysqlnd_ms_set_user_pick_server'], + 'Mysqlnd_uh': ['mysqlnd_uh_convert_to_mysqlnd', + 'mysqlnd_uh_set_connection_proxy', + 'mysqlnd_uh_set_statement_proxy'], 'NSAPI': ['nsapi_request_headers', 'nsapi_response_headers', 'nsapi_virtual'], 'Ncurses': ['ncurses_addch', 'ncurses_addchnstr', @@ -1998,7 +2450,31 @@ MODULES = {'.NET': ['dotnet_load'], 'fsockopen', 'gethostbyaddr', 'gethostbyname', - 'gethostbynamel'], + 'gethostbynamel', + 'gethostname', + 'getmxrr', + 'getprotobyname', + 'getprotobynumber', + 'getservbyname', + 'getservbyport', + 'header_register_callback', + 'header_remove', + 'header', + 'headers_list', + 'headers_sent', + 'http_response_code', + 'inet_ntop', + 'inet_pton', + 'ip2long', + 'long2ip', + 'openlog', + 'pfsockopen', + 'setcookie', + 'setrawcookie', + 'socket_get_status', + 'socket_set_blocking', + 'socket_set_timeout', + 'syslog'], 'Newt': ['newt_bell', 'newt_button_bar', 'newt_button', @@ -2019,11 +2495,107 @@ MODULES = {'.NET': ['dotnet_load'], 'newt_checkbox_tree_set_width', 'newt_checkbox_tree', 'newt_checkbox', - 'newt_clear_key_buffer'], + 'newt_clear_key_buffer', + 'newt_cls', + 'newt_compact_button', + 'newt_component_add_callback', + 'newt_component_takes_focus', + 'newt_create_grid', + 'newt_cursor_off', + 'newt_cursor_on', + 'newt_delay', + 'newt_draw_form', + 'newt_draw_root_text', + 'newt_entry_get_value', + 'newt_entry_set_filter', + 'newt_entry_set_flags', + 'newt_entry_set', + 'newt_entry', + 'newt_finished', + 'newt_form_add_component', + 'newt_form_add_components', + 'newt_form_add_hot_key', + 'newt_form_destroy', + 'newt_form_get_current', + 'newt_form_run', + 'newt_form_set_background', + 'newt_form_set_height', + 'newt_form_set_size', + 'newt_form_set_timer', + 'newt_form_set_width', + 'newt_form_watch_fd', + 'newt_form', + 'newt_get_screen_size', + 'newt_grid_add_components_to_form', + 'newt_grid_basic_window', + 'newt_grid_free', + 'newt_grid_get_size', + 'newt_grid_h_close_stacked', + 'newt_grid_h_stacked', + 'newt_grid_place', + 'newt_grid_set_field', + 'newt_grid_simple_window', + 'newt_grid_v_close_stacked', + 'newt_grid_v_stacked', + 'newt_grid_wrapped_window_at', + 'newt_grid_wrapped_window', + 'newt_init', + 'newt_label_set_text', + 'newt_label', + 'newt_listbox_append_entry', + 'newt_listbox_clear_selection', + 'newt_listbox_clear', + 'newt_listbox_delete_entry', + 'newt_listbox_get_current', + 'newt_listbox_get_selection', + 'newt_listbox_insert_entry', + 'newt_listbox_item_count', + 'newt_listbox_select_item', + 'newt_listbox_set_current_by_key', + 'newt_listbox_set_current', + 'newt_listbox_set_data', + 'newt_listbox_set_entry', + 'newt_listbox_set_width', + 'newt_listbox', + 'newt_listitem_get_data', + 'newt_listitem_set', + 'newt_listitem', + 'newt_open_window', + 'newt_pop_help_line', + 'newt_pop_window', + 'newt_push_help_line', + 'newt_radio_get_current', + 'newt_radiobutton', + 'newt_redraw_help_line', + 'newt_reflow_text', + 'newt_refresh', + 'newt_resize_screen', + 'newt_resume', + 'newt_run_form', + 'newt_scale_set', + 'newt_scale', + 'newt_scrollbar_set', + 'newt_set_help_callback', + 'newt_set_suspend_callback', + 'newt_suspend', + 'newt_textbox_get_num_lines', + 'newt_textbox_reflowed', + 'newt_textbox_set_height', + 'newt_textbox_set_text', + 'newt_textbox', + 'newt_vertical_scrollbar', + 'newt_wait_for_key', + 'newt_win_choice', + 'newt_win_entries', + 'newt_win_menu', + 'newt_win_message', + 'newt_win_messagev', + 'newt_win_ternary'], 'OAuth': ['oauth_get_sbs', 'oauth_urlencode'], 'OCI8': ['oci_bind_array_by_name', 'oci_bind_by_name', 'oci_cancel', + 'oci_client_version', 'oci_close', 'oci_commit', 'oci_connect', @@ -2043,7 +2615,9 @@ MODULES = {'.NET': ['dotnet_load'], 'oci_field_size', 'oci_field_type_raw', 'oci_field_type', + 'oci_free_descriptor', 'oci_free_statement', + 'oci_get_implicit_resultset', 'oci_internal_debug', 'oci_lob_copy', 'oci_lob_is_equal', @@ -2111,10 +2685,21 @@ MODULES = {'.NET': ['dotnet_load'], 'odbc_statistics', 'odbc_tableprivileges', 'odbc_tables'], + 'OPcache': ['opcache_compile_file', + 'opcache_get_configuration', + 'opcache_get_status', + 'opcache_invalidate', + 'opcache_reset'], 'Object Aggregation': ['aggregate_info', 'aggregate_methods_by_list', - 'aggregate_methods_by_regexp'], - 'Object overloading': ['overload'], + 'aggregate_methods_by_regexp', + 'aggregate_methods', + 'aggregate_properties_by_list', + 'aggregate_properties_by_regexp', + 'aggregate_properties', + 'aggregate', + 'aggregation_info', + 'deaggregate'], 'OpenAL': ['openal_buffer_create', 'openal_buffer_data', 'openal_buffer_destroy', @@ -2138,7 +2723,8 @@ MODULES = {'.NET': ['dotnet_load'], 'openal_source_set', 'openal_source_stop', 'openal_stream'], - 'OpenSSL': ['openssl_csr_export_to_file', + 'OpenSSL': ['openssl_cipher_iv_length', + 'openssl_csr_export_to_file', 'openssl_csr_export', 'openssl_csr_get_public_key', 'openssl_csr_get_subject', @@ -2155,6 +2741,7 @@ MODULES = {'.NET': ['dotnet_load'], 'openssl_get_privatekey', 'openssl_get_publickey', 'openssl_open', + 'openssl_pbkdf2', 'openssl_pkcs12_export_to_file', 'openssl_pkcs12_export', 'openssl_pkcs12_read', @@ -2176,6 +2763,10 @@ MODULES = {'.NET': ['dotnet_load'], 'openssl_random_pseudo_bytes', 'openssl_seal', 'openssl_sign', + 'openssl_spki_export_challenge', + 'openssl_spki_export', + 'openssl_spki_new', + 'openssl_spki_verify', 'openssl_verify', 'openssl_x509_check_private_key', 'openssl_x509_checkpurpose', @@ -2222,8 +2813,10 @@ MODULES = {'.NET': ['dotnet_load'], 'ovrimos_result', 'ovrimos_rollback'], 'PCNTL': ['pcntl_alarm', + 'pcntl_errno', 'pcntl_exec', 'pcntl_fork', + 'pcntl_get_last_error', 'pcntl_getpriority', 'pcntl_setpriority', 'pcntl_signal_dispatch', @@ -2231,6 +2824,7 @@ MODULES = {'.NET': ['dotnet_load'], 'pcntl_sigprocmask', 'pcntl_sigtimedwait', 'pcntl_sigwaitinfo', + 'pcntl_strerror', 'pcntl_wait', 'pcntl_waitpid', 'pcntl_wexitstatus', @@ -2429,6 +3023,8 @@ MODULES = {'.NET': ['dotnet_load'], 'PDF_utf8_to_utf16'], 'PHP Options/Info': ['assert_options', 'assert', + 'cli_get_process_title', + 'cli_set_process_title', 'dl', 'extension_loaded', 'gc_collect_cycles', @@ -2628,6 +3224,10 @@ MODULES = {'.NET': ['dotnet_load'], 'Parsekit': ['parsekit_compile_file', 'parsekit_compile_string', 'parsekit_func_arginfo'], + 'Password Hashing': ['password_get_info', + 'password_hash', + 'password_needs_rehash', + 'password_verify'], 'PostgreSQL': ['pg_affected_rows', 'pg_cancel_query', 'pg_client_encoding', @@ -2643,6 +3243,8 @@ MODULES = {'.NET': ['dotnet_load'], 'pg_delete', 'pg_end_copy', 'pg_escape_bytea', + 'pg_escape_identifier', + 'pg_escape_literal', 'pg_escape_string', 'pg_execute', 'pg_fetch_all_columns', @@ -2678,6 +3280,7 @@ MODULES = {'.NET': ['dotnet_load'], 'pg_lo_read', 'pg_lo_seek', 'pg_lo_tell', + 'pg_lo_truncate', 'pg_lo_unlink', 'pg_lo_write', 'pg_meta_data', @@ -2688,7 +3291,28 @@ MODULES = {'.NET': ['dotnet_load'], 'pg_pconnect', 'pg_ping', 'pg_port', - 'pg_prepare'], + 'pg_prepare', + 'pg_put_line', + 'pg_query_params', + 'pg_query', + 'pg_result_error_field', + 'pg_result_error', + 'pg_result_seek', + 'pg_result_status', + 'pg_select', + 'pg_send_execute', + 'pg_send_prepare', + 'pg_send_query_params', + 'pg_send_query', + 'pg_set_client_encoding', + 'pg_set_error_verbosity', + 'pg_trace', + 'pg_transaction_status', + 'pg_tty', + 'pg_unescape_bytea', + 'pg_untrace', + 'pg_update', + 'pg_version'], 'Printer': ['printer_abort', 'printer_close', 'printer_create_brush', @@ -2720,6 +3344,7 @@ MODULES = {'.NET': ['dotnet_load'], 'printer_start_doc', 'printer_start_page', 'printer_write'], + 'Proctitle': ['setproctitle', 'setthreadtitle'], 'Program execution': ['escapeshellarg', 'escapeshellcmd', 'exec', @@ -2743,7 +3368,13 @@ MODULES = {'.NET': ['dotnet_load'], 'pspell_config_personal', 'pspell_config_repl', 'pspell_config_runtogether', - 'pspell_config_save_repl'], + 'pspell_config_save_repl', + 'pspell_new_config', + 'pspell_new_personal', + 'pspell_new', + 'pspell_save_wordlist', + 'pspell_store_replacement', + 'pspell_suggest'], 'RPM Reader': ['rpm_close', 'rpm_get_tag', 'rpm_is_valid', @@ -2760,7 +3391,9 @@ MODULES = {'.NET': ['dotnet_load'], 'rrd_restore', 'rrd_tune', 'rrd_update', - 'rrd_xport'], + 'rrd_version', + 'rrd_xport', + 'rrdc_disconnect'], 'Radius': ['radius_acct_open', 'radius_add_server', 'radius_auth_open', @@ -2773,6 +3406,8 @@ MODULES = {'.NET': ['dotnet_load'], 'radius_demangle_mppe_key', 'radius_demangle', 'radius_get_attr', + 'radius_get_tagged_attr_data', + 'radius_get_tagged_attr_tag', 'radius_get_vendor_attr', 'radius_put_addr', 'radius_put_attr', @@ -2783,6 +3418,7 @@ MODULES = {'.NET': ['dotnet_load'], 'radius_put_vendor_int', 'radius_put_vendor_string', 'radius_request_authenticator', + 'radius_salt_encrypt_attr', 'radius_send_request', 'radius_server_secret', 'radius_strerror'], @@ -2828,6 +3464,7 @@ MODULES = {'.NET': ['dotnet_load'], 'SOAP': ['is_soap_fault', 'use_soap_error_handler'], 'SPL': ['class_implements', 'class_parents', + 'class_uses', 'iterator_apply', 'iterator_count', 'iterator_to_array', @@ -2840,8 +3477,74 @@ MODULES = {'.NET': ['dotnet_load'], 'spl_classes', 'spl_object_hash'], 'SPPLUS': ['calcul_hmac', 'calculhmac', 'nthmac', 'signeurlpaiement'], - 'SQLite': ['sqlite_array_query', 'sqlite_busy_timeout', 'sqlite_changes'], - 'SSH2': ['ssh2_auth_hostbased_file', + 'SQLSRV': ['sqlsrv_begin_transaction', + 'sqlsrv_cancel', + 'sqlsrv_client_info', + 'sqlsrv_close', + 'sqlsrv_commit', + 'sqlsrv_configure', + 'sqlsrv_connect', + 'sqlsrv_errors', + 'sqlsrv_execute', + 'sqlsrv_fetch_array', + 'sqlsrv_fetch_object', + 'sqlsrv_fetch', + 'sqlsrv_field_metadata', + 'sqlsrv_free_stmt', + 'sqlsrv_get_config', + 'sqlsrv_get_field', + 'sqlsrv_has_rows', + 'sqlsrv_next_result', + 'sqlsrv_num_fields', + 'sqlsrv_num_rows', + 'sqlsrv_prepare', + 'sqlsrv_query', + 'sqlsrv_rollback', + 'sqlsrv_rows_affected', + 'sqlsrv_send_stream_data', + 'sqlsrv_server_info'], + 'SQLite': ['sqlite_array_query', + 'sqlite_busy_timeout', + 'sqlite_changes', + 'sqlite_close', + 'sqlite_column', + 'sqlite_create_aggregate', + 'sqlite_create_function', + 'sqlite_current', + 'sqlite_error_string', + 'sqlite_escape_string', + 'sqlite_exec', + 'sqlite_factory', + 'sqlite_fetch_all', + 'sqlite_fetch_array', + 'sqlite_fetch_column_types', + 'sqlite_fetch_object', + 'sqlite_fetch_single', + 'sqlite_fetch_string', + 'sqlite_field_name', + 'sqlite_has_more', + 'sqlite_has_prev', + 'sqlite_key', + 'sqlite_last_error', + 'sqlite_last_insert_rowid', + 'sqlite_libencoding', + 'sqlite_libversion', + 'sqlite_next', + 'sqlite_num_fields', + 'sqlite_num_rows', + 'sqlite_open', + 'sqlite_popen', + 'sqlite_prev', + 'sqlite_query', + 'sqlite_rewind', + 'sqlite_seek', + 'sqlite_single_query', + 'sqlite_udf_decode_binary', + 'sqlite_udf_encode_binary', + 'sqlite_unbuffered_query', + 'sqlite_valid'], + 'SSH2': ['ssh2_auth_agent', + 'ssh2_auth_hostbased_file', 'ssh2_auth_none', 'ssh2_auth_password', 'ssh2_auth_pubkey_file', @@ -2856,6 +3559,7 @@ MODULES = {'.NET': ['dotnet_load'], 'ssh2_publickey_remove', 'ssh2_scp_recv', 'ssh2_scp_send', + 'ssh2_sftp_chmod', 'ssh2_sftp_lstat', 'ssh2_sftp_mkdir', 'ssh2_sftp_readlink', @@ -3014,11 +3718,13 @@ MODULES = {'.NET': ['dotnet_load'], 'session_module_name', 'session_name', 'session_regenerate_id', + 'session_register_shutdown', 'session_register', 'session_save_path', 'session_set_cookie_params', 'session_set_save_handler', 'session_start', + 'session_status', 'session_unregister', 'session_unset', 'session_write_close'], @@ -3041,6 +3747,7 @@ MODULES = {'.NET': ['dotnet_load'], 'socket_bind', 'socket_clear_error', 'socket_close', + 'socket_cmsg_space', 'socket_connect', 'socket_create_listen', 'socket_create_pair', @@ -3048,13 +3755,16 @@ MODULES = {'.NET': ['dotnet_load'], 'socket_get_option', 'socket_getpeername', 'socket_getsockname', + 'socket_import_stream', 'socket_last_error', 'socket_listen', 'socket_read', 'socket_recv', 'socket_recvfrom', + 'socket_recvmsg', 'socket_select', 'socket_send', + 'socket_sendmsg', 'socket_sendto', 'socket_set_block', 'socket_set_nonblock', @@ -3160,7 +3870,25 @@ MODULES = {'.NET': ['dotnet_load'], 'stream_notification_callback', 'stream_register_wrapper', 'stream_resolve_include_path', - 'stream_select'], + 'stream_select', + 'stream_set_blocking', + 'stream_set_chunk_size', + 'stream_set_read_buffer', + 'stream_set_timeout', + 'stream_set_write_buffer', + 'stream_socket_accept', + 'stream_socket_client', + 'stream_socket_enable_crypto', + 'stream_socket_get_name', + 'stream_socket_pair', + 'stream_socket_recvfrom', + 'stream_socket_sendto', + 'stream_socket_server', + 'stream_socket_shutdown', + 'stream_supports_lock', + 'stream_wrapper_register', + 'stream_wrapper_restore', + 'stream_wrapper_unregister'], 'String': ['addcslashes', 'addslashes', 'bin2hex', @@ -3179,6 +3907,7 @@ MODULES = {'.NET': ['dotnet_load'], 'get_html_translation_table', 'hebrev', 'hebrevc', + 'hex2bin', 'html_entity_decode', 'htmlentities', 'htmlspecialchars_decode', @@ -3241,7 +3970,23 @@ MODULES = {'.NET': ['dotnet_load'], 'strrev', 'strripos', 'strrpos', - 'strspn'], + 'strspn', + 'strstr', + 'strtok', + 'strtolower', + 'strtoupper', + 'strtr', + 'substr_compare', + 'substr_count', + 'substr_replace', + 'substr', + 'trim', + 'ucfirst', + 'ucwords', + 'vfprintf', + 'vprintf', + 'vsprintf', + 'wordwrap'], 'Sybase': ['sybase_affected_rows', 'sybase_close', 'sybase_connect', @@ -3268,11 +4013,11 @@ MODULES = {'.NET': ['dotnet_load'], 'sybase_set_message_handler', 'sybase_unbuffered_query'], 'TCP': ['tcpwrap_check'], + 'Taint': ['is_tainted', 'taint', 'untaint'], 'Tidy': ['ob_tidyhandler', 'tidy_access_count', 'tidy_config_count', 'tidy_error_count', - 'tidy_get_error_buffer', 'tidy_get_output', 'tidy_load_config', 'tidy_reset_config', @@ -3281,6 +4026,169 @@ MODULES = {'.NET': ['dotnet_load'], 'tidy_setopt', 'tidy_warning_count'], 'Tokenizer': ['token_get_all', 'token_name'], + 'Trader': ['trader_acos', + 'trader_ad', + 'trader_add', + 'trader_adosc', + 'trader_adx', + 'trader_adxr', + 'trader_apo', + 'trader_aroon', + 'trader_aroonosc', + 'trader_asin', + 'trader_atan', + 'trader_atr', + 'trader_avgprice', + 'trader_bbands', + 'trader_beta', + 'trader_bop', + 'trader_cci', + 'trader_cdl2crows', + 'trader_cdl3blackcrows', + 'trader_cdl3inside', + 'trader_cdl3linestrike', + 'trader_cdl3outside', + 'trader_cdl3starsinsouth', + 'trader_cdl3whitesoldiers', + 'trader_cdlabandonedbaby', + 'trader_cdladvanceblock', + 'trader_cdlbelthold', + 'trader_cdlbreakaway', + 'trader_cdlclosingmarubozu', + 'trader_cdlconcealbabyswall', + 'trader_cdlcounterattack', + 'trader_cdldarkcloudcover', + 'trader_cdldoji', + 'trader_cdldojistar', + 'trader_cdldragonflydoji', + 'trader_cdlengulfing', + 'trader_cdleveningdojistar', + 'trader_cdleveningstar', + 'trader_cdlgapsidesidewhite', + 'trader_cdlgravestonedoji', + 'trader_cdlhammer', + 'trader_cdlhangingman', + 'trader_cdlharami', + 'trader_cdlharamicross', + 'trader_cdlhighwave', + 'trader_cdlhikkake', + 'trader_cdlhikkakemod', + 'trader_cdlhomingpigeon', + 'trader_cdlidentical3crows', + 'trader_cdlinneck', + 'trader_cdlinvertedhammer', + 'trader_cdlkicking', + 'trader_cdlkickingbylength', + 'trader_cdlladderbottom', + 'trader_cdllongleggeddoji', + 'trader_cdllongline', + 'trader_cdlmarubozu', + 'trader_cdlmatchinglow', + 'trader_cdlmathold', + 'trader_cdlmorningdojistar', + 'trader_cdlmorningstar', + 'trader_cdlonneck', + 'trader_cdlpiercing', + 'trader_cdlrickshawman', + 'trader_cdlrisefall3methods', + 'trader_cdlseparatinglines', + 'trader_cdlshootingstar', + 'trader_cdlshortline', + 'trader_cdlspinningtop', + 'trader_cdlstalledpattern', + 'trader_cdlsticksandwich', + 'trader_cdltakuri', + 'trader_cdltasukigap', + 'trader_cdlthrusting', + 'trader_cdltristar', + 'trader_cdlunique3river', + 'trader_cdlupsidegap2crows', + 'trader_cdlxsidegap3methods', + 'trader_ceil', + 'trader_cmo', + 'trader_correl', + 'trader_cos', + 'trader_cosh', + 'trader_dema', + 'trader_div', + 'trader_dx', + 'trader_ema', + 'trader_errno', + 'trader_exp', + 'trader_floor', + 'trader_get_compat', + 'trader_get_unstable_period', + 'trader_ht_dcperiod', + 'trader_ht_dcphase', + 'trader_ht_phasor', + 'trader_ht_sine', + 'trader_ht_trendline', + 'trader_ht_trendmode', + 'trader_kama', + 'trader_linearreg_angle', + 'trader_linearreg_intercept', + 'trader_linearreg_slope', + 'trader_linearreg', + 'trader_ln', + 'trader_log10', + 'trader_ma', + 'trader_macd', + 'trader_macdext', + 'trader_macdfix', + 'trader_mama', + 'trader_mavp', + 'trader_max', + 'trader_maxindex', + 'trader_medprice', + 'trader_mfi', + 'trader_midpoint', + 'trader_midprice', + 'trader_min', + 'trader_minindex', + 'trader_minmax', + 'trader_minmaxindex', + 'trader_minus_di', + 'trader_minus_dm', + 'trader_mom', + 'trader_mult', + 'trader_natr', + 'trader_obv', + 'trader_plus_di', + 'trader_plus_dm', + 'trader_ppo', + 'trader_roc', + 'trader_rocp', + 'trader_rocr100', + 'trader_rocr', + 'trader_rsi', + 'trader_sar', + 'trader_sarext', + 'trader_set_compat', + 'trader_set_unstable_period', + 'trader_sin', + 'trader_sinh', + 'trader_sma', + 'trader_sqrt', + 'trader_stddev', + 'trader_stoch', + 'trader_stochf', + 'trader_stochrsi', + 'trader_sub', + 'trader_sum', + 'trader_t3', + 'trader_tan', + 'trader_tanh', + 'trader_tema', + 'trader_trange', + 'trader_trima', + 'trader_trix', + 'trader_tsf', + 'trader_typprice', + 'trader_ultosc', + 'trader_var', + 'trader_wclprice', + 'trader_willr', + 'trader_wma'], 'URL': ['base64_decode', 'base64_encode', 'get_headers', @@ -3291,7 +4199,21 @@ MODULES = {'.NET': ['dotnet_load'], 'rawurlencode', 'urldecode', 'urlencode'], - 'Variable handling': ['debug_zval_dump', + 'Uopz': ['uopz_backup', + 'uopz_compose', + 'uopz_copy', + 'uopz_delete', + 'uopz_extend', + 'uopz_flags', + 'uopz_function', + 'uopz_implement', + 'uopz_overload', + 'uopz_redefine', + 'uopz_rename', + 'uopz_restore', + 'uopz_undefine'], + 'Variable handling': ['boolval', + 'debug_zval_dump', 'doubleval', 'empty', 'floatval', @@ -3334,8 +4256,7 @@ MODULES = {'.NET': ['dotnet_load'], 'wddx_packet_end', 'wddx_packet_start', 'wddx_serialize_value', - 'wddx_serialize_vars', - 'wddx_unserialize'], + 'wddx_serialize_vars'], 'WinCache': ['wincache_fcache_fileinfo', 'wincache_fcache_meminfo', 'wincache_lock', @@ -3358,7 +4279,30 @@ MODULES = {'.NET': ['dotnet_load'], 'wincache_ucache_meminfo', 'wincache_ucache_set', 'wincache_unlock'], - 'XML Parser': ['utf8_decode'], + 'XML Parser': ['utf8_decode', + 'utf8_encode', + 'xml_error_string', + 'xml_get_current_byte_index', + 'xml_get_current_column_number', + 'xml_get_current_line_number', + 'xml_get_error_code', + 'xml_parse_into_struct', + 'xml_parse', + 'xml_parser_create_ns', + 'xml_parser_create', + 'xml_parser_free', + 'xml_parser_get_option', + 'xml_parser_set_option', + 'xml_set_character_data_handler', + 'xml_set_default_handler', + 'xml_set_element_handler', + 'xml_set_end_namespace_decl_handler', + 'xml_set_external_entity_ref_handler', + 'xml_set_notation_decl_handler', + 'xml_set_object', + 'xml_set_processing_instruction_handler', + 'xml_set_start_namespace_decl_handler', + 'xml_set_unparsed_entity_decl_handler'], 'XML-RPC': ['xmlrpc_decode_request', 'xmlrpc_decode', 'xmlrpc_encode_request', @@ -3373,25 +4317,29 @@ MODULES = {'.NET': ['dotnet_load'], 'xmlrpc_server_register_introspection_callback', 'xmlrpc_server_register_method', 'xmlrpc_set_type'], - 'XSLT (PHP4)': ['xslt_backend_info', - 'xslt_backend_name', - 'xslt_backend_version', - 'xslt_create', - 'xslt_errno', - 'xslt_error', - 'xslt_free', - 'xslt_getopt', - 'xslt_process', - 'xslt_set_base', - 'xslt_set_encoding', - 'xslt_set_error_handler', - 'xslt_set_log', - 'xslt_set_object', - 'xslt_set_sax_handler', - 'xslt_set_sax_handlers', - 'xslt_set_scheme_handler', - 'xslt_set_scheme_handlers', - 'xslt_setopt'], + 'XSLT (PHP 4)': ['xslt_backend_info', + 'xslt_backend_name', + 'xslt_backend_version', + 'xslt_create', + 'xslt_errno', + 'xslt_error', + 'xslt_free', + 'xslt_getopt', + 'xslt_process', + 'xslt_set_base', + 'xslt_set_encoding', + 'xslt_set_error_handler', + 'xslt_set_log', + 'xslt_set_object', + 'xslt_set_sax_handler', + 'xslt_set_sax_handlers', + 'xslt_set_scheme_handler', + 'xslt_set_scheme_handlers', + 'xslt_setopt'], + 'Xhprof': ['xhprof_disable', + 'xhprof_enable', + 'xhprof_sample_disable', + 'xhprof_sample_enable'], 'YAZ': ['yaz_addinfo', 'yaz_ccl_conf', 'yaz_ccl_parse', @@ -3463,6 +4411,8 @@ MODULES = {'.NET': ['dotnet_load'], 'gzuncompress', 'gzwrite', 'readgzfile', + 'zlib_decode', + 'zlib_encode', 'zlib_get_coding_type'], 'bcompiler': ['bcompiler_load_exe', 'bcompiler_load', @@ -3481,7 +4431,9 @@ MODULES = {'.NET': ['dotnet_load'], 'curl_copy_handle', 'curl_errno', 'curl_error', + 'curl_escape', 'curl_exec', + 'curl_file_create', 'curl_getinfo', 'curl_init', 'curl_multi_add_handle', @@ -3492,8 +4444,17 @@ MODULES = {'.NET': ['dotnet_load'], 'curl_multi_init', 'curl_multi_remove_handle', 'curl_multi_select', + 'curl_multi_setopt', + 'curl_multi_strerror', + 'curl_pause', + 'curl_reset', 'curl_setopt_array', 'curl_setopt', + 'curl_share_close', + 'curl_share_init', + 'curl_share_setopt', + 'curl_strerror', + 'curl_unescape', 'curl_version'], 'chdb': ['chdb_create'], 'dBase': ['dbase_add_record', @@ -3513,7 +4474,9 @@ MODULES = {'.NET': ['dotnet_load'], 'dbx_connect', 'dbx_error', 'dbx_escape_string', - 'dbx_fetch_row'], + 'dbx_fetch_row', + 'dbx_query', + 'dbx_sort'], 'filePro': ['filepro_fieldcount', 'filepro_fieldname', 'filepro_fieldtype', @@ -3541,6 +4504,7 @@ MODULES = {'.NET': ['dotnet_load'], 'libxml_disable_entity_loader', 'libxml_get_errors', 'libxml_get_last_error', + 'libxml_set_external_entity_loader', 'libxml_set_streams_context', 'libxml_use_internal_errors'], 'mSQL': ['msql_affected_rows', @@ -3621,12 +4585,15 @@ MODULES = {'.NET': ['dotnet_load'], 'mqseries_put', 'mqseries_set', 'mqseries_strerror'], - 'mysqlnd_qc': ['mysqlnd_qc_change_handler', - 'mysqlnd_qc_clear_cache', + 'mysqlnd_qc': ['mysqlnd_qc_clear_cache', + 'mysqlnd_qc_get_available_handlers', 'mysqlnd_qc_get_cache_info', 'mysqlnd_qc_get_core_stats', - 'mysqlnd_qc_get_handler', + 'mysqlnd_qc_get_normalized_query_trace_log', 'mysqlnd_qc_get_query_trace_log', + 'mysqlnd_qc_set_cache_condition', + 'mysqlnd_qc_set_is_select', + 'mysqlnd_qc_set_storage_handler', 'mysqlnd_qc_set_user_handlers'], 'qtdom': ['qdom_error', 'qdom_tree'], 'runkit': ['runkit_class_adopt', @@ -3737,22 +4704,23 @@ if __name__ == '__main__': module = search.group(1) modules[module] = [] - elif '<h2>Table of Contents</h2>' in line: + elif 'href="function.' in line: for match in function_re.finditer(line): fn = match.group(1) - if '->' not in fn and '::' not in fn: + if '->' not in fn and '::' not in fn and fn not in modules[module]: modules[module].append(fn) - # These are dummy manual pages, not actual functions - if module == 'PHP Options/Info': - modules[module].remove('main') - elif module == 'Filesystem': - modules[module].remove('delete') + if module: + # These are dummy manual pages, not actual functions + if module == 'PHP Options/Info': + modules[module].remove('main') - if not modules[module]: - del modules[module] + if module == 'Filesystem': + modules[module].remove('delete') + + if not modules[module]: + del modules[module] - break return modules def get_php_references(): diff --git a/pygments/lexers/compiled.py b/pygments/lexers/compiled.py index 48a11578..25c7a4d8 100644 --- a/pygments/lexers/compiled.py +++ b/pygments/lexers/compiled.py @@ -210,7 +210,10 @@ class CppLexer(CFamilyLexer): r'export|friend|mutable|namespace|new|operator|' r'private|protected|public|reinterpret_cast|' r'restrict|static_cast|template|this|throw|throws|' - r'typeid|typename|using|virtual)\b', Keyword), + r'typeid|typename|using|virtual|' + r'constexpr|nullptr|decltype|thread_local|' + r'alignas|alignof|static_assert|noexcept|override|final)\b', Keyword), + (r'(char16_t|char32_t)\b', Keyword.Type), (r'(class)(\s+)', bygroups(Keyword, Text), 'classname'), inherit, ], diff --git a/pygments/lexers/functional.py b/pygments/lexers/functional.py index 16d9bad8..bbee8c83 100644 --- a/pygments/lexers/functional.py +++ b/pygments/lexers/functional.py @@ -999,9 +999,16 @@ class SchemeLexer(RegexLexer): tokens = { 'root' : [ - # the comments - always starting with semicolon + # the comments # and going to the end of the line (r';.*$', Comment.Single), + # multi-line comment + (r'#\|', Comment.Multiline, 'multiline-comment'), + # commented form (entire sexpr folliwng) + (r'#;\s*\(', Comment, 'commented-form'), + # signifies that the program text that follows is written with the + # lexical and datum syntax described in r6rs + (r'#!r6rs', Comment), # whitespaces - usually not relevant (r'\s+', Text), @@ -1050,6 +1057,17 @@ class SchemeLexer(RegexLexer): (r'(\(|\))', Punctuation), (r'(\[|\])', Punctuation), ], + 'multiline-comment' : [ + (r'#\|', Comment.Multiline, '#push'), + (r'\|#', Comment.Multiline, '#pop'), + (r'[^|#]+', Comment.Multiline), + (r'[|#]', Comment.Multiline), + ], + 'commented-form' : [ + (r'\(', Comment, '#push'), + (r'\)', Comment, '#pop'), + (r'[^()]+', Comment), + ], } diff --git a/pygments/lexers/templates.py b/pygments/lexers/templates.py index f1f879a5..50579c61 100644 --- a/pygments/lexers/templates.py +++ b/pygments/lexers/templates.py @@ -16,6 +16,7 @@ from pygments.lexers.web import \ from pygments.lexers.agile import PythonLexer, PerlLexer from pygments.lexers.compiled import JavaLexer from pygments.lexers.jvm import TeaLangLexer +from pygments.lexers.text import YamlLexer from pygments.lexer import Lexer, DelegatingLexer, RegexLexer, bygroups, \ include, using, this, default from pygments.token import Error, Punctuation, \ @@ -40,7 +41,7 @@ __all__ = ['HtmlPhpLexer', 'XmlPhpLexer', 'CssPhpLexer', 'VelocityHtmlLexer', 'VelocityXmlLexer', 'SspLexer', 'TeaTemplateLexer', 'LassoHtmlLexer', 'LassoXmlLexer', 'LassoCssLexer', 'LassoJavascriptLexer', 'HandlebarsLexer', - 'HandlebarsHtmlLexer'] + 'HandlebarsHtmlLexer', 'YamlJinjaLexer'] class ErbLexer(Lexer): @@ -1831,3 +1832,22 @@ class HandlebarsHtmlLexer(DelegatingLexer): def __init__(self, **options): super(HandlebarsHtmlLexer, self).__init__(HtmlLexer, HandlebarsLexer, **options) + + +class YamlJinjaLexer(DelegatingLexer): + """ + Subclass of the `DjangoLexer` that highighlights unlexed data with the + `YamlLexer`. + + Commonly used in Saltstack salt states. + + .. versionadded:: 2.0 + """ + + name = 'YAML+Jinja' + aliases = ['yaml+jinja', 'salt', 'sls'] + filenames = ['*.sls'] + mimetypes = ['text/x-yaml+jinja', 'text/x-sls'] + + def __init__(self, **options): + super(YamlJinjaLexer, self).__init__(YamlLexer, DjangoLexer, **options) diff --git a/pygments/lexers/web.py b/pygments/lexers/web.py index ce857c71..cd619596 100644 --- a/pygments/lexers/web.py +++ b/pygments/lexers/web.py @@ -28,7 +28,7 @@ __all__ = ['HtmlLexer', 'XmlLexer', 'JavascriptLexer', 'JsonLexer', 'CssLexer', 'ObjectiveJLexer', 'CoffeeScriptLexer', 'LiveScriptLexer', 'DuelLexer', 'ScamlLexer', 'JadeLexer', 'XQueryLexer', 'DtdLexer', 'DartLexer', 'LassoLexer', 'QmlLexer', 'TypeScriptLexer', - 'KalLexer', 'CirruLexer', 'MaskLexer', 'ZephirLexer'] + 'KalLexer', 'CirruLexer', 'MaskLexer', 'ZephirLexer', 'SlimLexer'] class JavascriptLexer(RegexLexer): @@ -4438,3 +4438,73 @@ class ZephirLexer(RegexLexer): (r"'(\\\\|\\'|[^'])*'", String.Single), ] } + +class SlimLexer(ExtendedRegexLexer): + """ + For Slim markup. + """ + + name = 'Slim' + aliases = ['slim'] + filenames = ['*.slim'] + mimetypes = ['text/x-slim'] + + flags = re.IGNORECASE + _dot = r'(?: \|\n(?=.* \|)|.)' + tokens = { + 'root': [ + (r'[ \t]*\n', Text), + (r'[ \t]*', _indentation), + ], + + 'css': [ + (r'\.[\w:-]+', Name.Class, 'tag'), + (r'\#[\w:-]+', Name.Function, 'tag'), + ], + + 'eval-or-plain': [ + (r'([ \t]*==?)(.*\n)', + bygroups(Punctuation, using(RubyLexer)), + 'root'), + (r'[ \t]+[\w:-]+(?=[=])', Name.Attribute, 'html-attributes'), + (r'', Text, 'plain'), + ], + + 'content': [ + include('css'), + (r'[\w:-]+:[ \t]*\n', Text, 'plain'), + (r'(-)(.*\n)', + bygroups(Punctuation, using(RubyLexer)), + '#pop'), + (r'\|' + _dot + r'*\n', _starts_block(Text, 'plain'), '#pop'), + (r'/' + _dot + r'*\n', _starts_block(Comment.Preproc, 'slim-comment-block'), '#pop'), + (r'[\w:-]+', Name.Tag, 'tag'), + include('eval-or-plain'), + ], + + 'tag': [ + include('css'), + (r'[<>]{1,2}(?=[ \t=])', Punctuation), + (r'[ \t]+\n', Punctuation, '#pop:2'), + include('eval-or-plain'), + ], + + 'plain': [ + (r'([^#\n]|#[^{\n]|(\\\\)*\\#\{)+', Text), + (r'(#\{)(.*?)(\})', + bygroups(String.Interpol, using(RubyLexer), String.Interpol)), + (r'\n', Text, 'root'), + ], + + 'html-attributes': [ + (r'=', Punctuation), + (r'"[^\"]+"', using(RubyLexer), 'tag'), + (r'\'[^\']+\'', using(RubyLexer), 'tag'), + (r'[\w]+', Text, 'tag'), + ], + + 'slim-comment-block': [ + (_dot + '+', Comment.Preproc), + (r'\n', Text, 'root'), + ], + } diff --git a/tests/examplefiles/example.slim b/tests/examplefiles/example.slim new file mode 100644 index 00000000..0e209200 --- /dev/null +++ b/tests/examplefiles/example.slim @@ -0,0 +1,31 @@ +doctype html +html + head + title Slim Examples + meta name="keywords" content="template language" + meta name="author" content=author + javascript: + alert('Slim supports embedded javascript!') + + body + h1 Markup examples + + #content + p This example shows you how a basic Slim file looks like. + + == yield + + - unless items.empty? + table + - for item in items do + tr + td.name = item.name + td.price = item.price + - else + p + | No items found. Please add some inventory. + Thank you! + + div id="footer" + = render 'footer' + | Copyright (C) #{year} #{author} diff --git a/tests/examplefiles/example.sls b/tests/examplefiles/example.sls new file mode 100644 index 00000000..824700e7 --- /dev/null +++ b/tests/examplefiles/example.sls @@ -0,0 +1,51 @@ +include: + - moosefs + +{% for mnt in salt['cmd.run']('ls /dev/data/moose*').split() %} +/mnt/moose{{ mnt[-1] }}: + mount.mounted: + - device: {{ mnt }} + - fstype: xfs + - mkmnt: True + file.directory: + - user: mfs + - group: mfs + - require: + - user: mfs + - group: mfs +{% endfor %} + +/etc/mfshdd.cfg: + file.managed: + - source: salt://moosefs/mfshdd.cfg + - user: root + - group: root + - mode: 644 + - template: jinja + - require: + - pkg: mfs-chunkserver + +/etc/mfschunkserver.cfg: + file.managed: + - source: salt://moosefs/mfschunkserver.cfg + - user: root + - group: root + - mode: 644 + - template: jinja + - require: + - pkg: mfs-chunkserver + +mfs-chunkserver: + pkg: + - installed +mfschunkserver: + service: + - running + - require: +{% for mnt in salt['cmd.run']('ls /dev/data/moose*') %} + - mount: /mnt/moose{{ mnt[-1] }} + - file: /mnt/moose{{ mnt[-1] }} +{% endfor %} + - file: /etc/mfschunkserver.cfg + - file: /etc/mfshdd.cfg + - file: /var/lib/mfs diff --git a/tests/examplefiles/pawn_example b/tests/examplefiles/pawn_example index e8c17e33..ee2ecca2 100644 --- a/tests/examplefiles/pawn_example +++ b/tests/examplefiles/pawn_example @@ -16,15 +16,6 @@ DEFINE TEMP-TABLE ttNames NO-UNDO /* One-line comment */ /* Two-line Comment */ -/* - Nested - /* - Multiline - /* - Comment - */ - */ -*/ CREATE ttNames. ASSIGN ttNames.cName = {&MY_NAME}. diff --git a/tests/examplefiles/r6rs-comments.scm b/tests/examplefiles/r6rs-comments.scm new file mode 100644 index 00000000..cd5c3636 --- /dev/null +++ b/tests/examplefiles/r6rs-comments.scm @@ -0,0 +1,23 @@ +#!r6rs + +#| + + The FACT procedure computes the factorial + + of a non-negative integer. + +|# + +(define fact + + (lambda (n) + + ;; base case + + (if (= n 0) + + #;(= n 1) + + 1 ; identity of * + + (* n (fact (- n 1)))))) |