프로젝트 광산의 구성 형식으로 Lua를 사용하고 있습니다. 이제 나는 다음과 같은 인위적인 예를 들어 있다고 가정합시다, 우리는 conf.lua
전화 할게 :특정 범위에서로드 된 Lua 파일 실행
title = "Lorem Ipsum"
author = "John Doe"
date = "01 January 2000"
을 이제 사소, 나는 물론과 같이이 파일을로드 할 수
이dofile("conf.lua")
그러나, 이것에 문제가 이 정의는 전역 네임 스페이스에 설정되어 있습니다. 나는 원하지 않습니다. 또한, 그것은 전체로서 상이한 변수에 액세스하는 것을 어렵게 만든다 (예를 들어, 설정 변수 세트에 대한 루프). 하나 개의 솔루션과 같이 conf.lua
를 다시 작성하는 것입니다 :
local conf = {
title = "Lorem Ipsum",
author = "John Doe",
date = "01 January 2000"
}
return conf
차례로
, 다음 코드를 사용하여 부하conf.lua
는 :
local configuration = dofile("conf.lua")
그러나, 이것은 내가 분명한 이유를 생각하기위한 비 이상적입니다. 내 사용자는 쉼표를 추적하여 끝에 테이블을 반환해야한다는 것을 기억하기 위해 local
을 작성해야합니다. 어떤 종류의 사용자 지정 범위로 conf.lua
을 실행하게하는 방법이 있다면 좋을 것입니다.