OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
93 | 93 |
94 char* StrNDup(const char* str, int n) { | 94 char* StrNDup(const char* str, int n) { |
95 int length = StrLength(str); | 95 int length = StrLength(str); |
96 if (n < length) length = n; | 96 if (n < length) length = n; |
97 char* result = NewArray<char>(length + 1); | 97 char* result = NewArray<char>(length + 1); |
98 OS::MemCopy(result, str, length); | 98 OS::MemCopy(result, str, length); |
99 result[length] = '\0'; | 99 result[length] = '\0'; |
100 return result; | 100 return result; |
101 } | 101 } |
102 | 102 |
103 | |
104 void PreallocatedStorage::LinkTo(PreallocatedStorage* other) { | |
105 next_ = other->next_; | |
106 other->next_->previous_ = this; | |
107 previous_ = other; | |
108 other->next_ = this; | |
109 } | |
110 | |
111 | |
112 void PreallocatedStorage::Unlink() { | |
113 next_->previous_ = previous_; | |
114 previous_->next_ = next_; | |
115 } | |
116 | |
117 | |
118 PreallocatedStorage::PreallocatedStorage(size_t size) | |
119 : size_(size) { | |
120 previous_ = next_ = this; | |
121 } | |
122 | |
123 } } // namespace v8::internal | 103 } } // namespace v8::internal |
OLD | NEW |