Index: third_party/grpc/src/ruby/ext/grpc/rb_byte_buffer.c |
diff --git a/third_party/WebKit/Source/core/html/HTMLWBRElement.cpp b/third_party/grpc/src/ruby/ext/grpc/rb_byte_buffer.c |
similarity index 60% |
copy from third_party/WebKit/Source/core/html/HTMLWBRElement.cpp |
copy to third_party/grpc/src/ruby/ext/grpc/rb_byte_buffer.c |
index 2523cfc5388c72e5e587d4d8b6f7f72e285437c7..9b617e13d3cdaa759baf8b835e642531eef48171 100644 |
--- a/third_party/WebKit/Source/core/html/HTMLWBRElement.cpp |
+++ b/third_party/grpc/src/ruby/ext/grpc/rb_byte_buffer.c |
@@ -1,5 +1,7 @@ |
/* |
- * Copyright (C) 2014 Google Inc. All rights reserved. |
+ * |
+ * Copyright 2015-2016, Google Inc. |
+ * All rights reserved. |
* |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions are |
@@ -26,27 +28,40 @@ |
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
+ * |
*/ |
-#include "core/html/HTMLWBRElement.h" |
- |
-#include "core/HTMLNames.h" |
-#include "core/layout/LayoutWordBreak.h" |
+#include <ruby/ruby.h> |
+#include "rb_grpc_imports.generated.h" |
+#include "rb_byte_buffer.h" |
-namespace blink { |
+#include <ruby/ruby.h> |
-using namespace HTMLNames; |
+#include <grpc/grpc.h> |
+#include <grpc/byte_buffer_reader.h> |
+#include <grpc/support/slice.h> |
+#include "rb_grpc.h" |
-inline HTMLWBRElement::HTMLWBRElement(Document& document) |
- : HTMLElement(wbrTag, document) |
-{ |
+grpc_byte_buffer* grpc_rb_s_to_byte_buffer(char *string, size_t length) { |
+ gpr_slice slice = gpr_slice_from_copied_buffer(string, length); |
+ grpc_byte_buffer *buffer = grpc_raw_byte_buffer_create(&slice, 1); |
+ gpr_slice_unref(slice); |
+ return buffer; |
} |
-DEFINE_NODE_FACTORY(HTMLWBRElement) |
- |
-LayoutObject* HTMLWBRElement::createLayoutObject(const ComputedStyle& style) |
-{ |
- return new LayoutWordBreak(this); |
+VALUE grpc_rb_byte_buffer_to_s(grpc_byte_buffer *buffer) { |
+ VALUE rb_string; |
+ grpc_byte_buffer_reader reader; |
+ gpr_slice next; |
+ if (buffer == NULL) { |
+ return Qnil; |
+ } |
+ rb_string = rb_str_buf_new(grpc_byte_buffer_length(buffer)); |
+ grpc_byte_buffer_reader_init(&reader, buffer); |
+ while (grpc_byte_buffer_reader_next(&reader, &next) != 0) { |
+ rb_str_cat(rb_string, (const char *) GPR_SLICE_START_PTR(next), |
+ GPR_SLICE_LENGTH(next)); |
+ gpr_slice_unref(next); |
+ } |
+ return rb_string; |
} |
- |
-} // namespace blink |