Skip to content

Commit 851ab1f

Browse files
eregonandrykonchin
authored andcommitted
Remove Truffle::Debug.yarp_*, they are redundant now that Prism is the default
1 parent b38f82d commit 851ab1f

File tree

4 files changed

+3
-133
lines changed

4 files changed

+3
-133
lines changed

doc/contributor/how-to-guide.md

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1139,24 +1139,6 @@ jt -q ruby -e 'puts Truffle::Debug.java_class_of([])'
11391139
RubyArray
11401140
```
11411141
1142-
### Truffle::Debug.yarp_serialize
1143-
1144-
```
1145-
jt -q ruby -e 'puts Truffle::Debug.yarp_serialize("1").dump'
1146-
"YARP\x00\x04\x00@7\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00L\f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00S\x19\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x01\x00\x00\x00&\b\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00"
1147-
```
1148-
1149-
### Truffle::Debug.yarp_parse
1150-
1151-
```
1152-
jt -q ruby -e 'puts Truffle::Debug.yarp_parse("[].to_ary")'
1153-
ProgramNode
1154-
Scope
1155-
StatementsNode
1156-
CallNode
1157-
ArrayNode
1158-
```
1159-
11601142
### Truffle::Debug.ast
11611143
11621144
```

spec/truffle/parsing/parsing_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@
114114
end
115115

116116
unless actual_ast == expected_ast
117-
$stderr.puts "\n#{filename}\nYARP AST:", Truffle::Debug.yarp_parse(source_code)
117+
$stderr.puts "\n#{filename}\nYARP AST:", Truffle::Debug.parse_ast(source_code)
118118
end
119119
actual_ast.should == expected_ast
120120
end

spec/truffle/yarp_spec.rb

Lines changed: 0 additions & 32 deletions
This file was deleted.

src/main/java/org/truffleruby/debug/TruffleDebugNodes.java

Lines changed: 2 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -69,11 +69,9 @@
6969
import org.truffleruby.language.CallStackManager;
7070
import org.truffleruby.language.ImmutableRubyObject;
7171
import org.truffleruby.core.string.ImmutableRubyString;
72-
import org.truffleruby.language.Nil;
7372
import org.truffleruby.language.RubyDynamicObject;
7473
import org.truffleruby.language.RubyGuards;
7574
import org.truffleruby.language.RubyRootNode;
76-
import org.truffleruby.language.arguments.NoKeywordArgumentsDescriptor;
7775
import org.truffleruby.language.arguments.RubyArguments;
7876
import org.truffleruby.language.backtrace.BacktraceFormatter;
7977
import org.truffleruby.language.library.RubyStringLibrary;
@@ -112,8 +110,6 @@
112110
import org.truffleruby.parser.RubySource;
113111
import org.truffleruby.parser.TranslatorEnvironment;
114112
import org.truffleruby.parser.YARPTranslatorDriver;
115-
import org.prism.Loader;
116-
import org.prism.Parser;
117113

118114
@CoreModule("Truffle::Debug")
119115
public abstract class TruffleDebugNodes {
@@ -250,83 +246,6 @@ Object printBacktrace() {
250246

251247
}
252248

253-
@CoreMethod(names = "yarp_serialize", onSingleton = true, required = 1)
254-
public abstract static class YARPSerializeNode extends CoreMethodArrayArgumentsNode {
255-
@TruffleBoundary
256-
@Specialization(guards = "strings.isRubyString(code)", limit = "1")
257-
Object serialize(Object code,
258-
@Cached RubyStringLibrary strings,
259-
@Cached TruffleString.CopyToByteArrayNode copyToByteArrayNode,
260-
@Cached TruffleString.FromByteArrayNode fromByteArrayNode) {
261-
var tstring = strings.getTString(code);
262-
var tencoding = strings.getTEncoding(code);
263-
var source = copyToByteArrayNode.execute(tstring, tencoding);
264-
265-
byte[] serialized = Parser.parseAndSerialize(source);
266-
267-
return createString(fromByteArrayNode, serialized, Encodings.BINARY);
268-
}
269-
}
270-
271-
@CoreMethod(names = { "yarp_parse" }, onSingleton = true, required = 1)
272-
public abstract static class YARPParseNode extends CoreMethodArrayArgumentsNode {
273-
@TruffleBoundary
274-
@Specialization(guards = "strings.isRubyString(code)", limit = "1")
275-
Object parse(Object code,
276-
@Cached RubyStringLibrary strings,
277-
@Cached TruffleString.CopyToByteArrayNode copyToByteArrayNode,
278-
@Cached TruffleString.FromJavaStringNode fromJavaStringNode) {
279-
var tstring = strings.getTString(code);
280-
var tencoding = strings.getTEncoding(code);
281-
var source = copyToByteArrayNode.execute(tstring, tencoding);
282-
283-
byte[] serialized = Parser.parseAndSerialize(source);
284-
285-
var yarpSource = YARPTranslatorDriver.createYARPSource(source);
286-
var parseResult = Loader.load(serialized, yarpSource);
287-
var ast = parseResult.value;
288-
289-
return createString(fromJavaStringNode, ast.toString(), Encodings.UTF_8);
290-
}
291-
}
292-
293-
@CoreMethod(names = "yarp_execute", onSingleton = true, required = 1)
294-
public abstract static class YARPExecuteNode extends CoreMethodArrayArgumentsNode {
295-
@Specialization(guards = "strings.isRubyString(code)", limit = "1")
296-
Object yarpExecute(VirtualFrame frame, Object code,
297-
@Cached RubyStringLibrary strings) {
298-
return doExecute(code, RubyArguments.getMethod(frame));
299-
}
300-
301-
@TruffleBoundary
302-
private Object doExecute(Object code, InternalMethod method) {
303-
TranslatorEnvironment.resetTemporaryVariablesIndex();
304-
305-
final RootCallTarget callTarget = getContext().getCodeLoader().parseWithYARP(
306-
code,
307-
ParserContext.TOP_LEVEL,
308-
null,
309-
getContext().getRootLexicalScope(),
310-
null);
311-
312-
RubyRootNode truffleAST = RubyRootNode.of(callTarget);
313-
314-
System.err.println("Truffle AST:");
315-
NodeUtil.printCompactTree(getContext().getEnvErrStream(), truffleAST);
316-
317-
return truffleAST.getCallTarget().call(RubyArguments.pack(
318-
null,
319-
null,
320-
method,
321-
DeclarationContext.topLevel(getContext()),
322-
null,
323-
coreLibrary().mainObject,
324-
Nil.INSTANCE,
325-
NoKeywordArgumentsDescriptor.INSTANCE,
326-
EMPTY_ARGUMENTS));
327-
}
328-
}
329-
330249
@CoreMethod(names = "parse_ast", onSingleton = true, required = 1)
331250
public abstract static class ParseASTNode extends CoreMethodArrayArgumentsNode {
332251
@TruffleBoundary
@@ -346,8 +265,9 @@ Object ast(Object code,
346265

347266
var parseResult = YARPTranslatorDriver.parseToYARPAST(getLanguage(), rubySource, Collections.emptyList(),
348267
parseEnvironment);
268+
var ast = parseResult.value;
349269

350-
return createString(fromJavaStringNode, parseResult.value.toString(), Encodings.UTF_8);
270+
return createString(fromJavaStringNode, ast.toString(), Encodings.UTF_8);
351271
}
352272
}
353273

0 commit comments

Comments
 (0)