Lines Matching full:spec
60 // The singleton of the collected information of all the spec files.
88 * how specified in the spec file.
376 ConstantSpecification* spec = new ConstantSpecification(constant);
377 constant->addSpecification(spec);
379 specFile->addConstantSpecification(spec, created);
380 spec->mVersionInfo = info;
383 spec->mValue = scanner->getValue();
402 TypeSpecification* spec = new TypeSpecification(type);
403 type->addSpecification(spec);
405 specFile->addTypeSpecification(spec, created);
406 spec->mVersionInfo = info;
409 spec->mKind = SIMPLE;
410 spec->mSimpleType = scanner->getValue();
413 spec->mKind = RS_OBJECT;
416 spec->mKind = STRUCT;
417 spec->mStructName = scanner->getValue();
422 spec->mFields.push_back(s);
423 spec->mFieldComments.push_back(comment);
427 spec->mKind = ENUM;
428 spec->mEnumName = scanner->getValue();
433 spec->mValues.push_back(s);
434 spec->mValueComments.push_back(comment);
438 spec->mAttribute = scanner->getValue();
591 << "\" in spec. But some entry in the corresponding"
619 FunctionSpecification* spec = new FunctionSpecification(function);
620 function->addSpecification(spec);
622 specFile->addFunctionSpecification(spec, created);
624 spec->mUnexpandedName = unexpandedName;
625 spec->mTest = "scalar"; // default
626 spec->mVersionInfo = info;
629 spec->mInternal = (scanner->getValue() == "true");
632 spec->mIntrinsic = (scanner->getValue() == "true");
635 spec->mAttribute = scanner->getValue();
651 spec->mReplaceables.push_back(t);
653 spec->mIsRSTAllowed.push_back(false);
657 spec->mReplaceables.push_back(convertToTypeVector(scanner->getValue()));
658 spec->mIsRSTAllowed.push_back(isRSTValid(spec->mReplaceables.back()));
663 spec->checkRSTPatternValidity(unexpandedName, false, scanner);
668 spec->mReturn = p;
671 spec->checkRSTPatternValidity(p->type, false, scanner);
676 spec->mParameters.push_back(p);
679 spec->checkRSTPatternValidity(p->type, false, scanner);
680 spec->checkRSTPatternValidity(p->testOption, false, scanner);
688 spec->mInline.push_back(scanner->getValue());
691 spec->checkRSTPatternValidity(spec->mInline.back(), true, scanner);
695 spec->parseTest(scanner);
700 spec->createPermutations(function, scanner);
703 FunctionPermutation::FunctionPermutation(Function* func, FunctionSpecification* spec,
709 mName = spec->getName(replacementIndexes);
711 mTest = spec->getTest();
712 mPrecisionLimit = spec->getPrecisionLimit();
713 spec->getInlines(replacementIndexes, &mInline);
716 for (size_t i = 0; i < spec->getNumberOfParams(); i++) {
719 spec->getParam(i, replacementIndexes, &type, &name, &testOption, &lineNumber);
741 spec->getReturn(replacementIndexes, &retType, &lineNumber);
761 // Remove .spec
763 const char SPEC[] = ".spec";
764 const int SPEC_SIZE = sizeof(SPEC) - 1;
766 if (start >= 0 && core.compare(start, SPEC_SIZE, SPEC) == 0) {
775 void SpecFile::addConstantSpecification(ConstantSpecification* spec, bool hasDocumentation) {
776 mConstantSpecificationsList.push_back(spec);
778 Constant* constant = spec->getConstant();
783 void SpecFile::addTypeSpecification(TypeSpecification* spec, bool hasDocumentation) {
784 mTypeSpecificationsList.push_back(spec);
786 Type* type = spec->getType();
791 void SpecFile::addFunctionSpecification(FunctionSpecification* spec, bool hasDocumentation) {
792 mFunctionSpecificationsList.push_back(spec);
794 Function* function = spec->getFunction();
894 SpecFile* spec = new SpecFile(fileName);
895 if (!spec->readSpecFile(maxApiLevel)) {
899 mSpecFiles.push_back(spec);