• Home
  • Raw
  • Download

Lines Matching refs:root

86 inline std::string nameOf(NodeType *root) {  in nameOf()  argument
87 return root->Name() == NULL ? "" : root->Name(); in nameOf()
90 inline std::string getText(NodeType *root) { in getText() argument
91 return root->GetText() == NULL ? "" : root->GetText(); in getText()
112 inline bool getAttr(NodeType *root, const std::string &attrName, std::string *s) { in getAttr() argument
113 const char *c = root->Attribute(attrName.c_str()); in getAttr()
154 NodeType *root = createNode(this->elementName(), d); in serialize() local
155 this->mutateNode(o, root, d, flags); in serialize()
156 return root; in serialize()
165 inline bool deserialize(Object* object, NodeType* root) { in deserialize()
166 bool ret = deserialize(object, root, &mLastError); in deserialize()
173 inline bool deserialize(Object* object, NodeType* root, std::string* error) const { in deserialize()
174 if (nameOf(root) != this->elementName()) { in deserialize()
177 return this->buildObject(object, root, error); in deserialize()
247 inline bool parseOptionalAttr(NodeType* root, const std::string& attrName, T&& defaultValue, in parseOptionalAttr()
250 bool success = getAttr(root, attrName, &attrText) && in parseOptionalAttr()
259 inline bool parseAttr(NodeType* root, const std::string& attrName, T* attr, in parseAttr()
262 bool ret = getAttr(root, attrName, &attrText) && ::android::vintf::parse(attrText, attr); in parseAttr()
270 inline bool parseAttr(NodeType* root, const std::string& attrName, std::string* attr, in parseAttr()
272 bool ret = getAttr(root, attrName, attr); in parseAttr()
280 inline bool parseTextElement(NodeType* root, const std::string& elementName, std::string* s, in parseTextElement()
282 NodeType *child = getChild(root, elementName); in parseTextElement()
292 inline bool parseOptionalTextElement(NodeType* root, const std::string& elementName, in parseOptionalTextElement()
295 NodeType* child = getChild(root, elementName); in parseOptionalTextElement()
300 inline bool parseTextElements(NodeType* root, const std::string& elementName, in parseTextElements()
302 auto nodes = getChildren(root, elementName); in parseTextElements()
311 inline bool parseChild(NodeType* root, const XmlNodeConverter<T>& conv, T* t, in parseChild()
313 NodeType *child = getChild(root, conv.elementName()); in parseChild()
323 inline bool parseOptionalChild(NodeType* root, const XmlNodeConverter<T>& conv, in parseOptionalChild()
325 NodeType *child = getChild(root, conv.elementName()); in parseOptionalChild()
334 inline bool parseChildren(NodeType* root, const XmlNodeConverter<T>& conv, std::vector<T>* v, in parseChildren()
336 auto nodes = getChildren(root, conv.elementName()); in parseChildren()
349 inline bool parseChildren(NodeType* root, const XmlNodeConverter<T>& conv, std::set<T>* s, in parseChildren()
352 if (!parseChildren(root, conv, &vec, error)) { in parseChildren()
390 virtual void mutateNode(const Object &object, NodeType *root, DocType *d) const override { in mutateNode()
391 appendText(root, ::android::vintf::to_string(object), d); in mutateNode()
393 virtual bool buildObject(Object* object, NodeType* root, std::string* error) const override { in buildObject()
394 return this->parseText(root, object, error); in buildObject()
411 void mutateNode(const TransportArch &object, NodeType *root, DocType *d) const override { in mutateNode()
413 appendAttr(root, "arch", object.arch); in mutateNode()
415 appendText(root, ::android::vintf::to_string(object.transport), d); in mutateNode()
417 bool buildObject(TransportArch* object, NodeType* root, std::string* error) const override { in buildObject()
418 if (!parseOptionalAttr(root, "arch", Arch::ARCH_EMPTY, &object->arch, error) || in buildObject()
419 !parseText(root, &object->transport, error)) { in buildObject()
436 … void mutateNode(const KernelConfigTypedValue &object, NodeType *root, DocType *d) const override { in mutateNode()
437 appendAttr(root, "type", object.mType); in mutateNode()
438 appendText(root, ::android::vintf::to_string(object), d); in mutateNode()
440 bool buildObject(KernelConfigTypedValue* object, NodeType* root, in buildObject()
443 if (!parseAttr(root, "type", &object->mType, error) || in buildObject()
444 !parseText(root, &stringValue, error)) { in buildObject()
459 void mutateNode(const KernelConfig &object, NodeType *root, DocType *d) const override { in mutateNode()
460 appendChild(root, kernelConfigKeyConverter(object.first, d)); in mutateNode()
461 appendChild(root, kernelConfigTypedValueConverter(object.second, d)); in mutateNode()
463 bool buildObject(KernelConfig* object, NodeType* root, std::string* error) const override { in buildObject()
464 if (!parseChild(root, kernelConfigKeyConverter, &object->first, error) || in buildObject()
465 !parseChild(root, kernelConfigTypedValueConverter, &object->second, error)) { in buildObject()
476 void mutateNode(const HalInterface &intf, NodeType *root, DocType *d) const override { in mutateNode()
477 appendTextElement(root, "name", intf.name(), d); in mutateNode()
478 appendTextElements(root, "instance", intf.mInstances, d); in mutateNode()
479 appendTextElements(root, "regex-instance", intf.mRegexes, d); in mutateNode()
481 bool buildObject(HalInterface* intf, NodeType* root, std::string* error) const override { in buildObject()
484 if (!parseTextElement(root, "name", &intf->mName, error) || in buildObject()
485 !parseTextElements(root, "instance", &instances, error) || in buildObject()
486 !parseTextElements(root, "regex-instance", &regexes, error)) { in buildObject()
518 void mutateNode(const MatrixHal &hal, NodeType *root, DocType *d) const override { in mutateNode()
519 appendAttr(root, "format", hal.format); in mutateNode()
520 appendAttr(root, "optional", hal.optional); in mutateNode()
521 appendTextElement(root, "name", hal.name, d); in mutateNode()
522 appendChildren(root, versionRangeConverter, hal.versionRanges, d); in mutateNode()
523 appendChildren(root, halInterfaceConverter, iterateValues(hal.interfaces), d); in mutateNode()
525 bool buildObject(MatrixHal* object, NodeType* root, std::string* error) const override { in buildObject()
527 if (!parseOptionalAttr(root, "format", HalFormat::HIDL, &object->format, error) || in buildObject()
528 !parseOptionalAttr(root, "optional", false /* defaultValue */, &object->optional, in buildObject()
530 !parseTextElement(root, "name", &object->name, error) || in buildObject()
531 !parseChildren(root, versionRangeConverter, &object->versionRanges, error) || in buildObject()
532 !parseChildren(root, halInterfaceConverter, &interfaces, error)) { in buildObject()
589 void mutateNode(const std::vector<KernelConfig>& conds, NodeType* root, in mutateNode()
591 appendChildren(root, kernelConfigConverter, conds, d); in mutateNode()
593 bool buildObject(std::vector<KernelConfig>* object, NodeType* root, in buildObject()
595 return parseChildren(root, kernelConfigConverter, object, error); in buildObject()
603 void mutateNode(const MatrixKernel &kernel, NodeType *root, DocType *d) const override { in mutateNode()
604 appendAttr(root, "version", kernel.mMinLts); in mutateNode()
606 appendChild(root, matrixKernelConditionsConverter(kernel.mConditions, d)); in mutateNode()
608 appendChildren(root, kernelConfigConverter, kernel.mConfigs, d); in mutateNode()
610 bool buildObject(MatrixKernel* object, NodeType* root, std::string* error) const override { in buildObject()
611 if (!parseAttr(root, "version", &object->mMinLts, error) || in buildObject()
612 !parseOptionalChild(root, matrixKernelConditionsConverter, {}, &object->mConditions, in buildObject()
614 !parseChildren(root, kernelConfigConverter, &object->mConfigs, error)) { in buildObject()
627 void mutateNode(const ManifestHal& m, NodeType* root, DocType* d) const override { in mutateNode()
628 mutateNode(m, root, d, SerializeFlag::EVERYTHING); in mutateNode()
630 void mutateNode(const ManifestHal& hal, NodeType* root, DocType* d, in mutateNode()
632 appendAttr(root, "format", hal.format); in mutateNode()
633 appendTextElement(root, "name", hal.name, d); in mutateNode()
634 appendChild(root, transportArchConverter(hal.transportArch, d)); in mutateNode()
635 appendChildren(root, versionConverter, hal.versions, d); in mutateNode()
636 appendChildren(root, halInterfaceConverter, iterateValues(hal.interfaces), d); in mutateNode()
638 appendAttr(root, "override", hal.isOverride()); in mutateNode()
647 appendChildren(root, fqInstanceConverter, fqInstances, d); in mutateNode()
650 bool buildObject(ManifestHal* object, NodeType* root, std::string* error) const override { in buildObject()
652 if (!parseOptionalAttr(root, "format", HalFormat::HIDL, &object->format, error) || in buildObject()
653 !parseOptionalAttr(root, "override", false, &object->mIsOverride, error) || in buildObject()
654 !parseTextElement(root, "name", &object->name, error) || in buildObject()
655 !parseOptionalChild(root, transportArchConverter, {}, &object->transportArch, error) || in buildObject()
656 !parseChildren(root, versionConverter, &object->versions, error) || in buildObject()
657 !parseChildren(root, halInterfaceConverter, &interfaces, error)) { in buildObject()
705 if (!parseChildren(root, fqInstanceConverter, &fqInstances, error)) { in buildObject()
743 void mutateNode(const Sepolicy &object, NodeType *root, DocType *d) const override { in mutateNode()
744 appendChild(root, kernelSepolicyVersionConverter(object.kernelSepolicyVersion(), d)); in mutateNode()
745 appendChildren(root, sepolicyVersionConverter, object.sepolicyVersions(), d); in mutateNode()
747 bool buildObject(Sepolicy* object, NodeType* root, std::string* error) const override { in buildObject()
748 if (!parseChild(root, kernelSepolicyVersionConverter, &object->mKernelSepolicyVersion, in buildObject()
750 !parseChildren(root, sepolicyVersionConverter, &object->mSepolicyVersionRanges, in buildObject()
766 void mutateNode(const Vndk &object, NodeType *root, DocType *d) const override { in mutateNode()
767 appendChild(root, vndkVersionRangeConverter(object.mVersionRange, d)); in mutateNode()
768 appendChildren(root, vndkLibraryConverter, object.mLibraries, d); in mutateNode()
770 bool buildObject(Vndk* object, NodeType* root, std::string* error) const override { in buildObject()
771 if (!parseChild(root, vndkVersionRangeConverter, &object->mVersionRange, error) || in buildObject()
772 !parseChildren(root, vndkLibraryConverter, &object->mLibraries, error)) { in buildObject()
783 void mutateNode(const VendorNdk& object, NodeType* root, DocType* d) const override { in mutateNode()
784 appendChild(root, vndkVersionConverter(object.mVersion, d)); in mutateNode()
785 appendChildren(root, vndkLibraryConverter, object.mLibraries, d); in mutateNode()
787 bool buildObject(VendorNdk* object, NodeType* root, std::string* error) const override { in buildObject()
788 if (!parseChild(root, vndkVersionConverter, &object->mVersion, error) || in buildObject()
789 !parseChildren(root, vndkLibraryConverter, &object->mLibraries, error)) { in buildObject()
802 void mutateNode(const SystemSdk& object, NodeType* root, DocType* d) const override { in mutateNode()
803 appendChildren(root, systemSdkVersionConverter, object.versions(), d); in mutateNode()
805 bool buildObject(SystemSdk* object, NodeType* root, std::string* error) const override { in buildObject()
806 return parseChildren(root, systemSdkVersionConverter, &object->mVersions, error); in buildObject()
814 void mutateNode(const Version &m, NodeType *root, DocType *d) const override { in mutateNode()
815 appendChild(root, versionConverter(m, d)); in mutateNode()
817 bool buildObject(Version* object, NodeType* root, std::string* error) const override { in buildObject()
818 return parseChild(root, versionConverter, object, error); in buildObject()
825 void mutateNode(const ManifestXmlFile& f, NodeType* root, DocType* d) const override { in mutateNode()
826 appendTextElement(root, "name", f.name(), d); in mutateNode()
827 appendChild(root, versionConverter(f.version(), d)); in mutateNode()
829 appendTextElement(root, "path", f.overriddenPath(), d); in mutateNode()
832 bool buildObject(ManifestXmlFile* object, NodeType* root, std::string* error) const override { in buildObject()
833 if (!parseTextElement(root, "name", &object->mName, error) || in buildObject()
834 !parseChild(root, versionConverter, &object->mVersion, error) || in buildObject()
835 !parseOptionalTextElement(root, "path", {}, &object->mOverriddenPath, error)) { in buildObject()
845 void mutateNode(const HalManifest &m, NodeType *root, DocType *d) const override { in mutateNode()
846 mutateNode(m, root, d, SerializeFlag::EVERYTHING); in mutateNode()
848 void mutateNode(const HalManifest& m, NodeType* root, DocType* d, in mutateNode()
850 appendAttr(root, "version", m.getMetaVersion()); in mutateNode()
851 appendAttr(root, "type", m.mType); in mutateNode()
854 appendChildren(root, manifestHalConverter, m.getHals(), d, flags); in mutateNode()
858 appendChild(root, halManifestSepolicyConverter(m.device.mSepolicyVersion, d)); in mutateNode()
861 this->appendAttr(root, "target-level", m.mLevel); in mutateNode()
867 appendChildren(root, vndkConverter, m.framework.mVndks, d); in mutateNode()
870 appendChildren(root, vendorNdkConverter, m.framework.mVendorNdks, d); in mutateNode()
874 appendChild(root, systemSdkConverter(m.framework.mSystemSdk, d)); in mutateNode()
880 appendChildren(root, manifestXmlFileConverter, m.getXmlFiles(), d); in mutateNode()
883 bool buildObject(HalManifest* object, NodeType* root, std::string* error) const override { in buildObject()
885 if (!parseAttr(root, "version", &object->mMetaVersion, error) || in buildObject()
886 !parseAttr(root, "type", &object->mType, error) || in buildObject()
887 !parseChildren(root, manifestHalConverter, &hals, error)) { in buildObject()
899 if (!parseOptionalChild(root, halManifestSepolicyConverter, {}, in buildObject()
904 if (!parseOptionalAttr(root, "target-level", Level::UNSPECIFIED, &object->mLevel, in buildObject()
911 if (!parseChildren(root, vndkConverter, &object->framework.mVndks, error)) { in buildObject()
923 if (!parseChildren(root, vendorNdkConverter, &object->framework.mVendorNdks, error)) { in buildObject()
936 if (!parseOptionalChild(root, systemSdkConverter, {}, &object->framework.mSystemSdk, in buildObject()
950 if (!parseChildren(root, manifestXmlFileConverter, &xmlFiles, error)) { in buildObject()
971 void mutateNode(const Version &m, NodeType *root, DocType *d) const override { in mutateNode()
972 appendChild(root, avbVersionConverter(m, d)); in mutateNode()
974 bool buildObject(Version* object, NodeType* root, std::string* error) const override { in buildObject()
975 return parseChild(root, avbVersionConverter, object, error); in buildObject()
982 void mutateNode(const MatrixXmlFile& f, NodeType* root, DocType* d) const override { in mutateNode()
983 appendTextElement(root, "name", f.name(), d); in mutateNode()
984 appendAttr(root, "format", f.format()); in mutateNode()
985 appendAttr(root, "optional", f.optional()); in mutateNode()
986 appendChild(root, versionRangeConverter(f.versionRange(), d)); in mutateNode()
988 appendTextElement(root, "path", f.overriddenPath(), d); in mutateNode()
991 bool buildObject(MatrixXmlFile* object, NodeType* root, std::string* error) const override { in buildObject()
992 if (!parseTextElement(root, "name", &object->mName, error) || in buildObject()
993 !parseAttr(root, "format", &object->mFormat, error) || in buildObject()
994 !parseOptionalAttr(root, "optional", false, &object->mOptional, error) || in buildObject()
995 !parseChild(root, versionRangeConverter, &object->mVersionRange, error) || in buildObject()
996 !parseOptionalTextElement(root, "path", {}, &object->mOverriddenPath, error)) { in buildObject()
1006 void mutateNode(const CompatibilityMatrix &m, NodeType *root, DocType *d) const override { in mutateNode()
1007 mutateNode(m, root, d, SerializeFlag::EVERYTHING); in mutateNode()
1009 void mutateNode(const CompatibilityMatrix& m, NodeType* root, DocType* d, in mutateNode()
1011 appendAttr(root, "version", m.getMinimumMetaVersion()); in mutateNode()
1012 appendAttr(root, "type", m.mType); in mutateNode()
1015 appendChildren(root, matrixHalConverter, iterateValues(m.mHals), d); in mutateNode()
1019 appendChildren(root, matrixKernelConverter, m.framework.mKernels, d); in mutateNode()
1023 appendChild(root, sepolicyConverter(m.framework.mSepolicy, d)); in mutateNode()
1028 appendChild(root, avbConverter(m.framework.mAvbMetaVersion, d)); in mutateNode()
1032 this->appendAttr(root, "level", m.mLevel); in mutateNode()
1039 appendChild(root, vndkConverter(m.device.mVndk, d)); in mutateNode()
1044 appendChild(root, vendorNdkConverter(m.device.mVendorNdk, d)); in mutateNode()
1050 appendChild(root, systemSdkConverter(m.device.mSystemSdk, d)); in mutateNode()
1056 appendChildren(root, matrixXmlFileConverter, m.getXmlFiles(), d); in mutateNode()
1059 bool buildObject(CompatibilityMatrix* object, NodeType* root, in buildObject()
1063 if (!parseAttr(root, "version", &version, error) || in buildObject()
1064 !parseAttr(root, "type", &object->mType, error) || in buildObject()
1065 !parseChildren(root, matrixHalConverter, &hals, error)) { in buildObject()
1072 if (!parseChildren(root, matrixKernelConverter, &object->framework.mKernels, error) || in buildObject()
1073 !parseOptionalChild(root, sepolicyConverter, {}, &object->framework.mSepolicy, in buildObject()
1075 !parseOptionalChild(root, avbConverter, {}, &object->framework.mAvbMetaVersion, in buildObject()
1094 if (!parseOptionalAttr(root, "level", Level::UNSPECIFIED, &object->mLevel, error)) { in buildObject()
1103 if (!parseOptionalChild(root, vndkConverter, {}, &object->device.mVndk, error)) { in buildObject()
1108 if (!parseOptionalChild(root, vendorNdkConverter, {}, &object->device.mVendorNdk, in buildObject()
1113 if (!parseOptionalChild(root, systemSdkConverter, {}, &object->device.mSystemSdk, in buildObject()
1132 if (!parseChildren(root, matrixXmlFileConverter, &xmlFiles, error)) { in buildObject()