Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(968)

Unified Diff: dart/runtime/vm/object.h

Issue 119673004: Version 1.1.0-dev.5.2 (Closed) Base URL: http://dart.googlecode.com/svn/trunk/
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « dart/runtime/vm/native_symbol_win.cc ('k') | dart/runtime/vm/object.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: dart/runtime/vm/object.h
===================================================================
--- dart/runtime/vm/object.h (revision 31530)
+++ dart/runtime/vm/object.h (working copy)
@@ -31,6 +31,7 @@
class Assembler;
class Closure;
class Code;
+class DisassemblyFormatter;
class DeoptInstr;
class FinalizablePersistentHandle;
class LocalScope;
@@ -878,6 +879,8 @@
RawArray* fields() const { return raw_ptr()->fields_; }
void SetFields(const Array& value) const;
+ intptr_t FindFieldIndex(const Field& field) const;
+ RawField* FieldFromIndex(intptr_t idx) const;
// Returns an array of all fields of this class and its superclasses indexed
// by offset in words.
@@ -889,12 +892,18 @@
RawArray* functions() const { return raw_ptr()->functions_; }
void SetFunctions(const Array& value) const;
void AddFunction(const Function& function) const;
+ intptr_t FindFunctionIndex(const Function& function) const;
+ RawFunction* FunctionFromIndex(intptr_t idx) const;
+ intptr_t FindImplicitClosureFunctionIndex(const Function& needle) const;
+ RawFunction* ImplicitClosureFunctionFromIndex(intptr_t idx) const;
RawGrowableObjectArray* closures() const {
return raw_ptr()->closure_functions_;
}
void AddClosureFunction(const Function& function) const;
RawFunction* LookupClosureFunction(intptr_t token_pos) const;
+ intptr_t FindClosureIndex(const Function& function) const;
+ RawFunction* ClosureFunctionFromIndex(intptr_t idx) const;
RawFunction* LookupDynamicFunction(const String& name) const;
RawFunction* LookupDynamicFunctionAllowPrivate(const String& name) const;
@@ -991,6 +1000,9 @@
RawArray* constants() const;
+ intptr_t FindInvocationDispatcherFunctionIndex(const Function& needle) const;
+ RawFunction* InvocationDispatcherFunctionFromIndex(intptr_t idx) const;
+
RawFunction* GetInvocationDispatcher(const String& target_name,
const Array& args_desc,
RawFunction::Kind kind) const;
@@ -1209,7 +1221,7 @@
return this->raw();
}
- // Do not canonicalize InstantiatedTypeArguments or null vectors.
+ // Null vectors are canonical.
virtual RawAbstractTypeArguments* Canonicalize() const { return this->raw(); }
// The name of this type argument vector, e.g. "<T, dynamic, List<T>, Smi>".
@@ -1383,6 +1395,7 @@
return false;
}
virtual bool IsBounded() const { return false; } // Bounds were checked.
+ virtual RawAbstractTypeArguments* Canonicalize() const;
RawAbstractTypeArguments* uninstantiated_type_arguments() const {
return raw_ptr()->uninstantiated_type_arguments_;
@@ -1595,6 +1608,8 @@
return KindBits::decode(raw_ptr()->kind_tag_);
}
+ static const char* KindToCString(RawFunction::Kind kind);
+
bool is_static() const { return StaticBit::decode(raw_ptr()->kind_tag_); }
bool is_const() const { return ConstBit::decode(raw_ptr()->kind_tag_); }
bool is_external() const { return ExternalBit::decode(raw_ptr()->kind_tag_); }
@@ -3238,7 +3253,7 @@
// Aborts if there is no static call at 'pc'.
void SetStaticCallTargetCodeAt(uword pc, const Code& code) const;
- void Disassemble() const;
+ void Disassemble(DisassemblyFormatter* formatter = NULL) const;
class Comments : public ZoneAllocated {
public:
@@ -3364,8 +3379,10 @@
: FindObjectVisitor(Isolate::Current()), pc_(pc) { }
virtual ~FindRawCodeVisitor() { }
+ virtual uword filter_addr() const { return pc_; }
+
// Check if object matches find condition.
- virtual bool FindObject(RawObject* obj);
+ virtual bool FindObject(RawObject* obj) const;
private:
const uword pc_;
@@ -5071,7 +5088,8 @@
intptr_t len);
static RawString* EscapeSpecialCharacters(const String& str);
-
+ static RawString* EncodeURI(const String& str);
+ static RawString* DecodeURI(const String& str);
static RawString* Concat(const String& str1,
const String& str2,
Heap::Space space = Heap::kNew);
@@ -5162,7 +5180,6 @@
*CharAddr(str, index) = code_point;
}
static RawOneByteString* EscapeSpecialCharacters(const String& str);
-
// We use the same maximum elements for all strings.
static const intptr_t kBytesPerElement = 1;
static const intptr_t kMaxElements = String::kMaxElements;
@@ -5386,6 +5403,8 @@
}
static RawOneByteString* EscapeSpecialCharacters(const String& str);
+ static RawOneByteString* EncodeURI(const String& str);
+ static RawOneByteString* DecodeURI(const String& str);
static const ClassId kClassId = kExternalOneByteStringCid;
« no previous file with comments | « dart/runtime/vm/native_symbol_win.cc ('k') | dart/runtime/vm/object.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698