1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef V8_COMPILER_TYPER_H_
6 #define V8_COMPILER_TYPER_H_
8 #include "src/compiler/graph.h"
15 // Forward declarations.
21 Typer(Isolate* isolate, Graph* graph, MaybeHandle<Context> context);
26 Graph* graph() { return graph_; }
27 MaybeHandle<Context> context() { return context_; }
28 Zone* zone() { return graph_->zone(); }
29 Isolate* isolate() { return isolate_; }
37 MaybeHandle<Context> context_;
38 Decorator* decorator_;
41 Type* boolean_or_number;
42 Type* undefined_or_null;
43 Type* undefined_or_number;
44 Type* negative_signed32;
45 Type* non_negative_signed32;
46 Type* singleton_false;
63 LazyTypeCache* cache_;
65 DISALLOW_COPY_AND_ASSIGN(Typer);
68 } // namespace compiler
69 } // namespace internal
72 #endif // V8_COMPILER_TYPER_H_