mirror of
https://github.com/rubyjs/therubyracer
synced 2023-03-27 23:21:42 -04:00
51 lines
1.5 KiB
C++
51 lines
1.5 KiB
C++
#include "rr.h"
|
|
|
|
namespace rr {
|
|
VALUE ScriptOrigin::Class;
|
|
void ScriptOrigin::Init() {
|
|
ClassBuilder("ScriptOrigin").
|
|
defineSingletonMethod("new", &initialize).
|
|
|
|
defineMethod("ResourceName", &ResourceName).
|
|
defineMethod("ResourceLineOffset", &ResourceLineOffset).
|
|
defineMethod("ResourceColumnOffset", &ResourceColumnOffset).
|
|
defineMethod("ScriptID", &ScriptID).
|
|
defineMethod("SourceMapUrl", &SourceMapUrl).
|
|
|
|
store(&Class);
|
|
}
|
|
|
|
VALUE ScriptOrigin::initialize(int argc, VALUE argv[], VALUE self) {
|
|
Container* container = new Container();
|
|
rb_scan_args(argc, argv, "17",
|
|
&container->name,
|
|
&container->line_offset,
|
|
&container->column_offset,
|
|
&container->is_shared_cross_origin,
|
|
&container->script_id,
|
|
&container->is_embedder_debug_script,
|
|
&container->source_map_url,
|
|
&container->is_opaque);
|
|
return ScriptOrigin(container);
|
|
}
|
|
|
|
VALUE ScriptOrigin::ResourceName(VALUE self) {
|
|
return ScriptOrigin(self).container->name;
|
|
}
|
|
|
|
VALUE ScriptOrigin::ResourceLineOffset(VALUE self) {
|
|
return ScriptOrigin(self).container->line_offset;
|
|
}
|
|
|
|
VALUE ScriptOrigin::ResourceColumnOffset(VALUE self) {
|
|
return ScriptOrigin(self).container->column_offset;
|
|
}
|
|
|
|
VALUE ScriptOrigin::ScriptID(VALUE self) {
|
|
return ScriptOrigin(self).container->script_id;
|
|
}
|
|
|
|
VALUE ScriptOrigin::SourceMapUrl(VALUE self) {
|
|
return ScriptOrigin(self).container->source_map_url;
|
|
}
|
|
}
|