Skip to main content

module lang::php::analysis::includes::IncludesInfo

rascal-0.40.17
php-analysis-0.2.4

Usage

import lang::php::analysis::includes::IncludesInfo;

Source code

http://github.com/cwi-swat/php-analysis/blob/main/src/main/rascal/lang/php/analysis/includes/IncludesInfo.rsc

Dependencies

import lang::php::ast::AbstractSyntax;
import lang::php::ast::System;
import lang::php::util::Config;
import lang::php::analysis::evaluators::AlgebraicSimplification;
import lang::php::analysis::evaluators::SimulateCalls;
import lang::php::analysis::evaluators::MagicConstants;
import lang::php::analysis::includes::NormalizeConstCase;
import lang::php::analysis::evaluators::DefinedConstants;
import lang::php::util::Utils;
import lang::php::analysis::evaluators::Simplify;
import Set;
import IO;
import ValueIO;
import Map;

function buildIncludesInfo

void buildIncludesInfo(str p, str v, loc baseloc, bool forceBuild=false)

void buildIncludesInfo(str name, loc baseloc, bool forceBuild=false)

void buildIncludesInfo(System sys, str p, str v, loc baseloc, bool forceBuild=false)

void buildIncludesInfo(System sys, str overrideName = "", bool forceBuild=false)

void buildIncludesInfo(System sys, str name, loc baseloc, bool forceBuild=false)

data IncludesInfo

data IncludesInfo  
= includesInfo(map[loc,set[ConstItemExp]] loc2consts,
rel[ConstItem,loc,Expr] constRel,
map[str, Expr] constMap,
map[str, map[str, Expr]] classConstMap)
;

function mergeIncludesInfo

IncludesInfo mergeIncludesInfo(IncludesInfo ii1, IncludesInfo ii2)

Merge two IncludesInfo records. This is useful when we have components that are treated separately but are also merged into other components or systems.

function includesInfoExists

bool includesInfoExists(str p, str v)

bool includesInfoExists(str name)

function loadIncludesInfo

IncludesInfo loadIncludesInfo(str p, str v)

IncludesInfo loadIncludesInfo(str name)