aboutsummaryrefslogtreecommitdiff
path: root/src/functionexists.cpp
blob: 0fad1e1a58712ab08acf75d5b28bb8a9538e0bf7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include "functionexists.h"

#include <unistd.h>

#include <bu/plugger.h>
PluginInterface3( pluginFunctionExists, exists, FunctionExists, Function,
        "Mike Buland", 0, 1 );

FunctionExists::FunctionExists()
{
}

FunctionExists::~FunctionExists()
{
}

Bu::String FunctionExists::getName() const
{
    return "exists";
}

Variable FunctionExists::call( Variable &input, VarList lParams )
{
    Bu::String sFile;
    if( input.getType() != Variable::typeNone )
    {
        sFile = input.toString();
    }
    else
    {
        sFile = lParams.first().toString();
    }
    if( access( sFile.getStr(), F_OK ) == 0 )
        return Variable( true );
    else
        return Variable( false );
}