CodeSurfer API

Programmatic access to all CodeSurfer® internal representations.

Overview

The optional CodeSurfer Programming API enables you to extend and customize CodeSurfer to meet your project-specific needs. For example, you can build specialized analyses or integrate CodeSurfer with other tools. Leading companies worldwide have licensed the CodeSurfer Programmable Package for their program-analysis needs. In addition, the CodeSurfer Programmable Package has been used by researchers at over 100 universities.

Included Features

The programming API is bundled with the CodeSurfer Programmable Package, which includes:

  • Full programmatic access to all program representations calculated by CodeSurfer. The Core API consists of 19 libraries that contain 322 fully-documented program-analysis functions. In addition, an Abstract Syntax Tree (AST) library with pattern matching is provided.
  • Development shell. An interactive script interpreter is provide so you can rapidly prototype your scripts.
  • Development tools. When you write a script, it is useful to view the details of CodeSurfer’s representation of a sample project. A collection of browsers are provided for this purpose.
  • Batch-mode processing. You can run scripts from the command line.

Program Representations

Deep-structure representations:

  • Normalized ASTs
  • Points-to information
  • Call graph
  • Indirect variable usage
  • Control and data dependence
  • Per-procedure non-local variable usage
  • Per-procedure I/O dependence

Surface-structure representations:

  • ASTs
  • Symbol table
  • Direct variable usage
  • CFGs
  • Basic blocks

Free Trial | Products | Customers | Support | News | Jobs | About Us         © 2007-2008, GrammaTech, Inc. All rights reserved.