Lines Matching refs:code

42 /** This code is generated. To make changes, please modify the scripts or the relevant xml **/
378 code = ""
379 code += "static void parse_%s(const char* s, Json::Value& obj, %s& o)\n" %(baseType, self.baseTypeListMap[baseType])
380 code += "{\n"
382 code += " if (obj.isString())\n"
384 code += " %sif (obj.asString() == \"%s\")\n" %("else " if index > 0 else "", enumValue[0])
385 code += " o = %s;\n" %(enumValue[1])
387 code += " else if (obj.asString() == \"NaN\")\n"
388 code += " o = std::numeric_limits<float>::quiet_NaN();\n"
389 code += " else\n"
390 code += " assert(false);\n"
391 code += " else\n"
392 code += " o = %s;\n" %(printStr)
394 code += " o = %s;\n" %(printStr)
395 code += "}\n"
396 write(code, file=self.outFile)
444 code = ""
446 code += "/*************************************** Begin prototypes ***********************************/\n"
460 code += "#endif\n"
464 code += "#ifdef %s\n" %(currentExtension)
465 code += "static void parse_%s(const char* s, Json::Value& obj, %s& o);\n" %(name, name)
469 code += "#endif\n"
470 code += "/*************************************** End prototypes ***********************************/\n\n"
472 return code
475 code = ""
476 code += "static\n"
477 code += "void* parsePNextChain(Json::Value& obj) {\n"
478 code += " VkBaseInStructure o;\n"
479 code += " Json::Value& pNextObj = obj[\"pNext\"];\n"
480 code += " if (pNextObj.empty() || (pNextObj.isString() && pNextObj.asString() == \"NULL\")) return nullptr;\n\n"
481 code += " parse_VkStructureType(\"sType\", pNextObj[\"sType\"], (o.sType));\n"
482 code += " void* p = nullptr;\n"
483 code += " switch (o.sType) {\n"
497 code += "#endif\n"
501 code += "#ifdef %s\n" %(currentExtension)
502 code += " case %s:\n" %(m.get('values'))
503 code += " {\n"
504 code += " p = s_globalMem.allocate(sizeof(%s));\n" %(n)
505 code += " parse_%s(\"\", pNextObj, *((%s*)p));\n" %(n, n)
506 code += " }\n"
507 #code += "print_%s(((%s *)pNext), \"%s\", 1);\n" %(n, n, n)
508 code += " break;\n"
512 code += "#endif\n"
513 code += " default: {/** **/}\n"
514 code += " }\n"
515 code += " return p;\n"
516 code += " }\n"
518 return code
592 code = ""
593 code += "static void parse_%s(const char* s, Json::Value& obj, %s& o) {\n" %(name, name)
594 code += " std::string _res = obj.asString();\n"
595 code += " o = (%s)%s_map[std::string(_res)];\n" %(name, name)
596 code += "}\n"
598 code += "#endif\n"
600 return code
603 code = ""
604 code += "static void parse_%s(const char* s, Json::Value& obj, %s& o) {\n" %(name, name)
605 code += " std::string _res = obj.asString();\n"
607 code += " //VkBool is represented as VK_TRUE and VK_FALSE in the json\n"
608 code += " o = (_res == \"VK_TRUE\") ? (1) : (0);\n"
610 code += " sscanf(_res.c_str(), \"%\" SCNu64, &o);\n"
612 code += " if (_res == \"VK_WHOLE_SIZE\")\n"
613 code += " o = (~0ULL);\n"
614 code += " else\n"
615 code += " sscanf(_res.c_str(), \"%\" SCNu64, &o);\n"
617 code += " sscanf(_res.c_str(), \"%\" SCNd64, &o);\n"
619 code += " sscanf(_res.c_str(), \"%u\", &o);\n"
620 code += "}\n"
621 return code
624 code = ""
629 code += "#ifdef %s\n" %(ifdefName)
630 code += "static void parse_%s(const char* s, Json::Value& obj, %s& o) {\n" %(name, name)
631 code += "// std::string _res = obj.asString();\n"
632 code += "}\n"
634 code += "#endif\n"
635 return code
638 code = ""
646 code += "#ifdef %s\n" %(ifdefName)
649 code += "static void parse_%s(const char* s, Json::Value& obj, %s& o) {\n" %(name, name)
650 code += " o = (%s)0;\n" %(name)
651 code += " std::string _res = obj.asString();\n"
652 code += " std::vector<std::string> bitmasks;\n"
653 code += " std::istringstream inputStream(_res);\n"
654 code += " std::string tempStr;\n"
655 code += " while (getline(inputStream, tempStr, '|')) {\n"
656 code += " tempStr.erase(std::remove_if(tempStr.begin(), tempStr.end(), isspace), tempStr.end());\n"
657 code += " bitmasks.push_back(tempStr);\n"
658 code += " }\n"
659 code += " for (auto& it : bitmasks) {\n"
660 code += " o |= (%s)%s_map[it];\n" %(mapName, mapName)
661 code += " }\n"
662 code += "}\n"
664 code += "static void parse_%s(const char* s, Json::Value& obj, %s& o) {\n" %(name, name)
665 code += " if (obj.isString()) {\n"
666 code += " std::string _res = obj.asString();\n"
668 code += " sscanf(_res.c_str(), \"%\" SCNd64, &o);\n"
670 code += " sscanf(_res.c_str(), \"%u\", &o);\n"
671 code += " }\n"
672 code += " else {\n"
673 code += " o = obj.asUInt();\n"
674 code += " }\n"
676 code += "}\n"
679 code += "#endif\n"
681 return code
720 # Helper taken from the validation layers code.
728 # Helper taken from the validation layers code.
760 code = ""
767 code += " %s%s) = (%s*)s_globalMem.allocate(%s, sizeof(%s));\n" %(str2, memberName, typeName, length, typeName)
768 code += " Json::Value& obj_%s = obj[\"%s\"];\n" %(memberName, memberName)
769 code += " if (obj_%s.size() == 0) %s%s) = nullptr;\n" %(memberName, str2, memberName)
770 code += " else {\n"
771 code += " for (unsigned int i = 0; i < %s; i++) {\n" %(length)
772 code += " parse_%s(\"%s\", obj_%s[i], const_cast<%s&>(%s%s[i])));\n" %(typeName, memberName, memberName, typeName, str2, memberName)
773 code += " }\n"
774 code += " }\n"
775 return code
777 code += " {\n"
778 code += " Json::Value& obj_%s = obj[\"%s\"];\n" %(memberName, memberName)
779 code += " const int sz = obj_%s.size();\n" %(memberName)
780 code += " if (obj_%s.size() == 0) {\n" %(memberName)
781 code += " %s%s) = nullptr;\n"%(str2, memberName)
782 code += " } else {\n"
783 code += " %s%s) = (%s*)s_globalMem.allocate(1, sizeof(%s));\n" %(str2, memberName, typeName, typeName)
784 code += " parse_%s(\"%s\", obj_%s, const_cast<%s&>(*%s%s)));\n" %(typeName, memberName, memberName, typeName, str2, memberName)
785 code += " }\n"
786 code += " }\n"
787 return code
791 code += " Json::Value& obj_%s = obj[\"%s\"];\n" %(memberName, memberName)
792 code += " for (unsigned int i = 0; i < obj_%s.size(); i++) {\n" %(memberName)
793 code += " parse_%s(\"%s\", obj_%s[i], const_cast<%s&>(%s%s[i])));\n" %(typeName, memberName, memberName, typeName, str2, memberName)
794 code += " }\n"
796 code += " parse_%s(\"%s\", obj[\"%s\"], %s%s));\n" %(typeName, memberName, memberName, str2, memberName)
798 return code
801 code = ""
805 code += " %s* %sTab = (%s*)s_globalMem.allocate(%s, sizeof(%s));\n" %(mappedType, name, mappedType, arraySize, mappedType)
806 code += " Json::Value& obj_%s_arr = obj[\"%s\"];\n" %(name, name)
807 code += " for (unsigned int i = 0; i < obj_%s_arr.size(); i++) {\n" %(name)
808 code += " deUint64 %sInternal = 0;\n" %(name)
809 code += " parse_uint64_t(\"%s\", obj_%s_arr[i], %sInternal);\n" %(name, name, name)
810 code += " %sTab[i] = %s(%sInternal);\n" %(name, mappedType, name)
811 code += " }\n"
812 code += " %s%s = %sTab;\n" %(str2[1:], name, name)
815 code += " %s%s) = (%s*)s_globalMem.allocate(%s, sizeof(%s));\n" %(str2, name, mappedType, arraySize, mappedType)
816 code += " Json::Value& obj_%s_arr = obj[\"%s\"];\n" %(name, name)
817 code += " for (unsigned int i = 0; i < obj_%s_arr.size(); i++) {\n" %(name)
818 code += " parse_%s(\"%s\", obj_%s_arr[i], const_cast<%s&>(%s%s[i])));\n" %(typeName, name, name, mappedType, str2, name)
819 code += " }\n"
821 return code
825 code = ""
826 return code
829 code = ""
830 code += " deUint64 %sInternal = 0;\n" %(memberName)
831 code += " parse_uint64_t(\"%s\", obj[\"%s\"], %sInternal);\n" %(memberName, memberName, memberName)
832 code += " o.%s = %s(%sInternal);\n" %(memberName, typeName, memberName)
833 return code
836 code = ""
862 code += self.generateStructMembercode(param, str1, str2, str3, str4, memberName, typeName, isCommaNeeded)
866 code = ""
868 code += " if (o.dataSize > 0U)\n"
869 code += " {\n"
870 code += " void* data = s_globalMem.allocate(%s(%sdataSize));\n" %(self.baseTypeListMap["uint32_t"] ,str2[1:])
871 code += " parse_void_data(\"%s\", obj[\"%s\"], data, int(%sdataSize));\n" %(memberName, memberName, str2[1:])
872 code += " %s%s = data;\n" %(str2[1:], memberName)
873 code += " }\n"
874 code += " else\n"
875 code += " %s%s = NULL;\n" %(str2[1:], memberName)
876 return code
879 code += " if (o.initialDataSize > 0U)\n"
880 code += " {\n"
881 code += " void* data = s_globalMem.allocate(%s(%sinitialDataSize));\n" %(self.baseTypeListMap["uint32_t"], str2[1:])
882 code += " parse_void_data(\"%s\", obj[\"%s\"], data, int(%sinitialDataSize));\n" %(memberName, memberName, str2[1:])
883 code += " %s%s = data;\n" %(str2[1:], memberName)
884 code += " }\n"
885 code += " else\n"
886 code += " %s%s = NULL;\n" %(str2[1:], memberName)
887 return code
897 code = ""
898 code += " Json::Value& obj_%s = obj[\"%s\"];\n" %(memberName, memberName)
899 code += " if (obj_%s.empty() || (obj_%s.isString() && obj_%s.asString() == \"NULL\"))\n" %(memberName, memberName, memberName)
900 code += " o.%s = nullptr;\n" %(memberName)
901 code += " else\n"
902 code += " {\n"
903 code += " %s* samplers = (%s*)s_globalMem.allocate((o.descriptorCount), sizeof(%s));\n" %(typeName, typeName, typeName)
904 code += " for (unsigned int i = 0; i < obj_%s.size(); i++)\n" %(memberName)
905 code += " {\n"
906 code += " deUint64 sInternal = 0;\n"
907 code += " parse_uint64_t(\"%s\", obj_%s[i], sInternal);\n" %(memberName, memberName)
908 code += " samplers[i] = %s(sInternal);\n" %(typeName)
909 code += " }\n"
910 code += " o.%s = samplers;\n" %(memberName)
911 code += " }"
912 return code
918 code += " %s%s) = (%s*)s_globalMem.allocate(%s, sizeof(%s));\n" %(str2, memberName, typeName, arraySize, typeName)
919 code += " Json::Value& obj_%s = obj[\"%s\"];\n" %(memberName, memberName)
920 code += " if (o.rasterizationSamples == 0 || obj_%s.size() == 0) {\n" %(memberName)
921 code += " %s%s) = nullptr;\n" %(str2, memberName)
922 code += " } else {\n"
923 code += " for (%s i = 0; i < %s; i++) {\n" %(self.baseTypeListMap["uint32_t"], arraySize)
924 code += " parse_uint32_t(\"%s\", obj_%s[i], const_cast<%s&>(%s%s[i])));\n" %(memberName, memberName, typeName, str2, memberName)
925 code += " }\n"
926 code += " }\n"
936 code += " %s%s) = (const char*)s_globalMem.allocate(255);\n" %(str2, memberName)
937 code += " parse_%s(\"%s\", obj[\"%s\"], &%s%s));\n" %(typeName, memberName, memberName, str2, memberName)
939 code += " /** TODO: Handle this - %s **/\n" %(memberName)
942 code += " /** TODO: Handle this - %s **/\n" %(memberName)
945 code += " parse_%s(\"%s\", obj[\"%s\"], %s%s));\n" %(typeName, memberName, memberName, str2, memberName)
947 return code