Lines Matching defs:const

41   bool HasNamespaceQualification() const {
45 QualifiedName DropFirstNamespaceQualification() const {
52 friend std::ostream& operator<<(std::ostream& os, const QualifiedName& name);
72 Kind kind() const { return kind_; }
73 bool IsNamespace() const { return kind() == kNamespace; }
74 bool IsMacro() const { return IsTorqueMacro() || IsExternMacro(); }
75 bool IsTorqueMacro() const { return kind() == kTorqueMacro || IsMethod(); }
76 bool IsMethod() const { return kind() == kMethod; }
77 bool IsExternMacro() const { return kind() == kExternMacro; }
78 bool IsIntrinsic() const { return kind() == kIntrinsic; }
79 bool IsBuiltin() const { return kind() == kBuiltin; }
80 bool IsRuntimeFunction() const { return kind() == kRuntimeFunction; }
81 bool IsGenericCallable() const { return kind() == kGenericCallable; }
82 bool IsGenericType() const { return kind() == kGenericType; }
83 bool IsTypeAlias() const { return kind() == kTypeAlias; }
84 bool IsExternConstant() const { return kind() == kExternConstant; }
85 bool IsNamespaceConstant() const { return kind() == kNamespaceConstant; }
86 bool IsValue() const { return IsExternConstant() || IsNamespaceConstant(); }
87 bool IsScope() const { return IsNamespace() || IsCallable(); }
88 bool IsCallable() const {
92 virtual const char* type_name() const { return "<<unknown>>"; }
93 Scope* ParentScope() const { return parent_scope_; }
97 SourcePosition Position() const { return position_; }
98 void SetPosition(const SourcePosition& position) { position_ = position; }
104 SourcePosition IdentifierPosition() const {
108 void SetIdentifierPosition(const SourcePosition& position) {
112 bool IsUserDefined() const { return is_user_defined_; }
121 const Kind kind_;
122 Scope* const parent_scope_ = CurrentScope::Get();
133 static const x* cast(const Declarable* declarable) { \
135 return static_cast<const x*>(declarable); \
137 const char* type_name() const override { return #y; } \
143 static const x* DynamicCast(const Declarable* declarable) { \
146 return static_cast<const x*>(declarable); \
165 bool IsNone() const {
178 std::vector<Declarable*> LookupShallow(const QualifiedName& name) {
195 std::vector<Declarable*> Lookup(const QualifiedName& name);
197 T* AddDeclarable(const std::string& name, T* declarable) {
202 const SpecializationRequester& GetSpecializationRequester() const {
205 void SetSpecializationRequester(const SpecializationRequester& requester) {
221 explicit Namespace(const std::string& name)
223 const std::string& name() const { return name_; }
224 bool IsDefaultNamespace() const;
225 bool IsTestNamespace() const;
244 const Identifier* name() const { return name_; }
245 virtual bool IsConst() const { return true; }
246 VisitResult value() const { return *value_; }
247 const Type* type() const { return type_; }
255 Value(Kind kind, const Type* type, Identifier* name)
259 const Type* type_;
268 const std::string& external_name() const { return external_name_; }
269 Expression* body() const { return body_; }
274 std::string external_name, const Type* type,
290 explicit ExternConstant(Identifier* name, const Type* type, std::string value)
305 const std::string& ExternalName() const { return external_name_; }
306 const std::string& ReadableName() const { return readable_name_; }
307 const Signature& signature() const { return signature_; }
308 bool IsTransitioning() const { return signature().transitioning; }
309 const NameVector& parameter_names() const {
312 bool HasReturnValue() const {
316 bool HasReturns() const { return returns_; }
317 base::Optional<Statement*> body() const { return body_; }
318 bool IsExternal() const { return !body_.has_value(); }
319 virtual bool ShouldBeInlined(OutputType output_type) const {
324 bool ShouldGenerateExternalCode(OutputType output_type) const {
328 static std::string PrefixNameForCCOutput(const std::string& name) {
335 static std::string PrefixNameForCCDebugOutput(const std::string& name) {
343 virtual std::string CCName() const {
348 virtual std::string CCDebugName() const {
377 bool ShouldBeInlined(OutputType output_type) const override {
378 for (const LabelDeclaration& label : signature().labels) {
379 for (const Type* type : label.types) {
390 bool IsUsed() const { return used_; }
394 std::string readable_name, const Signature& signature,
412 const std::string& external_assembler_name() const {
416 std::string CCName() const override {
421 std::string CCDebugName() const override {
428 ExternMacro(const std::string& name, std::string external_assembler_name,
440 bool IsExportedToCSA() const { return exported_to_csa_; }
441 std::string CCName() const override {
447 std::string CCDebugName() const override {
456 std::string readable_name, const Signature& signature,
468 const Signature& signature, base::Optional<Statement*> body,
480 bool ShouldBeInlined(OutputType output_type) const override {
486 AggregateType* aggregate_type() const { return aggregate_type_; }
491 std::string readable_name, const Signature& signature, Statement* body)
502 Kind kind() const { return kind_; }
503 bool IsStub() const { return kind_ == kStub; }
504 bool IsVarArgsJavaScript() const { return kind_ == kVarArgsJavaScript; }
505 bool IsFixedArgsJavaScript() const { return kind_ == kFixedArgsJavaScript; }
510 Builtin::Kind kind, const Signature& signature,
525 RuntimeFunction(const std::string& name, const Signature& signature)
536 Intrinsic(std::string name, const Signature& signature)
546 base::Optional<std::string> IsViolated(const Type*) const;
549 static TypeConstraint SubtypeConstraint(const Type* upper_bound) {
556 base::Optional<const Type*> upper_bound;
560 const std::vector<const Type*>& types,
561 const std::vector<TypeConstraint>& constraints);
564 Scope* scope, const GenericParameters& parameters);
573 void AddSpecialization(const TypeVector& type_arguments,
583 const TypeVector& type_arguments) const {
590 iterator begin() const { return specializations_.begin(); }
591 iterator end() const { return specializations_.end(); }
593 const std::string& name() const { return name_; }
594 auto declaration() const { return generic_declaration_->declaration; }
595 const GenericParameters& generic_parameters() const {
599 const std::vector<TypeConstraint>& Constraints() {
606 GenericDeclarable(Declarable::Kind kind, const std::string& name,
629 const TypeVector& explicit_specialization_types,
630 const std::vector<base::Optional<const Type*>>& arguments);
634 GenericCallable(const std::string& name,
641 : public GenericDeclarable<const Type*, GenericTypeDeclaration*> {
647 GenericType(const std::string& name,
649 : GenericDeclarable<const Type*, GenericTypeDeclaration*>(
657 const Type* type() const {
661 const Type* Resolve() const;
662 bool IsRedeclaration() const { return redeclaration_; }
663 SourcePosition GetDeclarationPosition() const {
672 const Type* type, bool redeclaration,
688 mutable base::Optional<const Type*> type_;
690 const SourcePosition declaration_position_;
693 std::ostream& operator<<(std::ostream& os, const Callable& m);
694 std::ostream& operator<<(std::ostream& os, const Builtin& b);
695 std::ostream& operator<<(std::ostream& os, const RuntimeFunction& b);
696 std::ostream& operator<<(std::ostream& os, const GenericCallable& g);