함수 호출

함수 호출은 EGL 생성 함수 또는 시스템 함수를 호출합니다. 호출된 함수가 종료되면 호출 뒤에 오는 명령문을 사용하거나 (복잡한 경우) 표현식 또는 매개변수 목록에서 필요한 다음 프로세스를 사용하여 처리를 계속합니다.

라이브러리나 패키지의 이름 또는 this 키워드를 사용하여 함수를 규정할 수 있습니다. 이러한 규정자가 필요한 경우에 대한 자세한 정보는 범위의 내용을 참조하십시오.

다음 유형의 인수를 함수에 전달할 수 있습니다.
  • 리터럴
  • 상수
  • 변수
  • 잠재적으로 함수 호출 또는 하위 문자열을 포함하는 복잡한 숫자, 텍스트 또는 날짜/시간 표현식
  • 참조로 평가되는 표현식 또는 참조 변수
호출된 함수가 값을 리턴하는 경우 함수가 리턴하는 값을 사용하는 모든 위치에서 호출을 사용할 수 있습니다. 예를 들면, 다음 예제와 같이 조건문에서 함수를 사용할 수 있습니다.
if(getCustomer())
   ...
end

TRUE를 리턴하는 BOOLEAN 함수 또는 0이 아닌 값을 리턴하는 숫자 함수는 테스트를 통과합니다.

액세스 수정자가 in 또는 inOut인 경우 인수로 리터럴을 사용할 수 있습니다. (수정자가 inOut인 경우에는 인수가 in 수정자가 적용된 것처럼 처리됩니다.) EGL 생성 코드는 매개변수 유형의 임시 변수를 작성하고 해당 변수의 값을 초기화하며 변수를 함수에 전달합니다.

매개변수가 구조화 레코드인 경우 인수는 구조화 레코드여야 합니다.
  • BasicRecord 스테레오타입이 없는 구조화 레코드에 다음 규칙이 적용됩니다.
    • 인수와 매개변수의 유형이 동일해야 합니다.
    • 액세스 수정자는 inOut이어야 합니다.
  • BasicRecord 스테레오타입이 있는 구조화 레코드의 경우 인수와 매개변수의 유형은 다음 조건에 따라 다릅니다.
    • 액세스 수정자가 in인 경우 사용자가 전달하는 인수의 크기는 수신 매개변수의 크기보다 크거나 같아야 합니다.
    • 액세스 수정자가 Out 또는 inOut인 경우에는 사용자가 전달하는 인수의 크기가 수신 매개변수의 크기보다 작거나 같아야 합니다.