lua table - time complexity of metatable in Lua when accessing -


  स्थानीय cls = {base = "base"} स्थानीय इन = {} cls .__ index = cls setmetatable (ins , सीएलएस)   

ins.base तक पहुंच की जटिलता क्या है?

आप आधिकारिक लुआ कार्यान्वयन से O (1) समय की जटिलता की अपेक्षा कर सकते हैं।

__ अनुक्रमणिका मैनुअल से ली गई इस लिआ कोड के बराबर है:

  फ़ंक्शन gettable_event (तालिका, कुंजी) स्थानीय प्रकार यदि तालिका (तालिका) == "तालिका" तो स्थानीय v = rawget (तालिका , कुंजी) यदि v ~ = शून्य तो वापस v अंत एच = मेटाटेबल (तालिका) .__ सूचकांक यदि h == शून्य तब वापस शून्य शून्य और दूसरा h = मेटाटेबल (तालिका) .__ अनुक्रमणिका यदि h == शून्य तब त्रुटि (एक · · · एक प्रकार के अंत (एच) == "फ़ंक्शन" फिर वापसी (एच (तालिका, कुंजी)) - अंत में हेन्डलर को वापस कॉल करें [कुंजी] - या अंत अंत पर पुनरावृत्ति ऑपरेशन  < / प्री> 

__ सूचकांक लुकअप में कोई छोर नहीं है, और चूंकि लुआ तालिकाओं का समर्थन किया जाता है हैश तालिकाओं, तालिका lookups आमतौर पर एक निरंतर-समय का संचालन होता है।

Comments

Popular posts from this blog

Java - Error: no suitable method found for add(int, java.lang.String) -

java - JPA TypedQuery: Parameter value element did not match expected type -

c++ - static template member variable has internal linkage but is not defined -