本文整理汇总了C++中AnalysisResultPtr::isTypeAliasName方法的典型用法代码示例。如果您正苦于以下问题:C++ AnalysisResultPtr::isTypeAliasName方法的具体用法?C++ AnalysisResultPtr::isTypeAliasName怎么用?C++ AnalysisResultPtr::isTypeAliasName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AnalysisResultPtr
的用法示例。
在下文中一共展示了AnalysisResultPtr::isTypeAliasName方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getTypeSpecForClass
TypePtr ParameterExpression::getTypeSpecForClass(AnalysisResultPtr ar,
bool forInference) {
TypePtr ret;
if (forInference) {
ClassScopePtr cls = ar->findClass(m_type);
if (!cls || cls->isRedeclaring() || cls->derivedByDynamic()) {
if (!cls && getScope()->isFirstPass() && !ar->isTypeAliasName(m_type)) {
ConstructPtr self = shared_from_this();
Compiler::Error(Compiler::UnknownClass, self);
}
ret = Type::Variant;
}
if (cls) {
// Classes must be redeclaring if there are also type aliases
// with the same name.
assert(!ar->isTypeAliasName(m_type) || cls->isRedeclaring());
}
}
if (!ret) {
ret = ar->isTypeAliasName(m_type) || !Option::WholeProgram
? Type::Variant
: Type::CreateObjectType(m_type);
}
always_assert(ret);
return ret;
}