getProcedureSig :: Throws (Located GeneratorError) e => Id -> SymbolTable -> GenerateJvm e MethodSignature
getProcedureSig name table = do
  t <- getSymbolType name table
  case t of
    TFunction argTypes TVoid ->
        return $ MethodSignature (map getJvmType argTypes) ReturnsVoid
    _ -> failCheck GeneratorError $ "Invalid procedure type: " ++ show t
getProcedureSig :: Throws (Located GeneratorError) e => Id -> SymbolTable -> GenerateJvm e MethodSignature
getProcedureSig name table = do
  t <- getSymbolType name table
  case t of
    TFunction argTypes TVoid ->
        return $ MethodSignature (map getJvmType argTypes) ReturnsVoid
    _ -> failCheck GeneratorError $ "Invalid procedure type: " ++ show t
getProcedureSig name table = do
  t <- getSymbolType name table
  case t of
    TFunction argTypes TVoid ->
        return $ MethodSignature (map getJvmType argTypes) ReturnsVoid
    _ -> failCheck GeneratorError $ "Invalid procedure type: " ++ show t