configuration file parser
Configuration File Library 1.1
The Configuration File Library (CFL) is a collection of routines for manipulating configuration files. more>>
It is designed to offer for C programmers common routines for manipulating configuration text files.

Unix configuration extractor 4
The Unix configuration extractor is a script more>> The Unix configuration extractor is a script that runs on the server to extract necessary security configurations. This script doesnt make any changes to the server other than creating the dump files<<less
ConfigFile for Haskell 1.0.0
ConfigFile for Haskell is a configuration file parser and writer library for Haskell. more>>
The ConfigFile module works with configuration files in a standard format that is easy for the user to edit, easy for the programmer to work with, yet remains powerful and flexible. It is inspired by, and compatible with, Pythons ConfigParser module. It uses files that resemble Windows .INI-style files, but with numerous improvements.
ConfigFile provides simple calls to both read and write config files. Its possible to make a config file parsable by this module, the Unix shell, and make.
Enhancements:
- This package was formerly part of MissingH and is being split off as part of the MissingH transition plan.
ConfigReader::Simple 1.25
ConfigReader::Simple is a simple configuration file parser. more>>
SYNOPSIS
use ConfigReader::Simple;
# parse one file
$config = ConfigReader::Simple->new("configrc", [qw(Foo Bar Baz Quux)]);
# parse multiple files, in order
$config = ConfigReader::Simple->new_multiple(
Files => [ "global", "configrc" ],
Keys => [qw(Foo Bar Baz Quux)]
);
my @directives = $config->directives;
$config->get( "Foo" );
if( $config->exists( "Bar" ) )
{
print "Bar was in the config filen";
}
# copy an object to play with it separately
my $clone = $config->clone;
# only affects clone
$clone->set( "Foo", "Buster" );
# save the config to a single file
$clone->save( "configrc" )
# save the config to a single file, but only with
# certain directives
$clone->save( "configrc" => [qw(Foo Bar)] )
# save to multiple configuration files
$clone->save(
"configrc" => [qw(Foo Bar)],
"global" => [qw(Baz Quux)],
);
ConfigReader::Simple reads and parses simple configuration files. It is designed to be smaller and simpler than the ConfigReader module and is more suited to simple configuration files.
regular expression parser 1.1
regular expression parser is a C++ regexp parser that accomplishes The Open Group specification Issue 6. more>>
regular expression parser allows you to parse input using regular expressions, and to retrieve parsed sub-expression matches in a few steps.
Makefile::Parser 0.11
Makefile::Parser is a Simple Parser for Makefiles. more>>
SYNOPSIS
use Makefile::Parser;
$parser = Makefile::Parser->new;
# Equivalent to ->parse(Makefile);
$parser->parse or
die Makefile::Parser->error;
# Get last value assigned to the specified variable CC:
print $parser->var(CC);
# Get all the variable names defined in the Makefile:
@vars = $parser->vars;
print join( , sort @vars);
@roots = $parser->roots; # Get all the "root targets"
print $roots[0]->name;
@tars = $parser->targets; # Get all the targets
$tar = join("n", $tars[0]->commands);
# Get the default target, say, the first target defined in Makefile:
$tar = $parser->target;
$tar = $parser->target(install);
# Get the name of the target, say, install here:
print $tar->name;
# Get the dependencies for the target install:
@depends = $tar->depends;
# Access the shell command used to build the current target.
@cmds = $tar->commands;
# Parse another file using the same Parser object:
$parser->parse(Makefile.old) or
die Makefile::Parser->error;
# Get the target who is specified by variable EXE_FILE
$tar = $parser->target($parser->var(EXE_FILE));
This is a parser for Makefiles. At this very early stage, the parser only supports a limited set of features, so it may not recognize some advanced features provided by certain make tools like GNU make. Its initial purpose is to provide basic support for another module named Makefile::GraphViz, which is aimed to render the building process specified by a Makefile using the amazing GraphViz library. The Make module is not satisfactory for this purpose, so I decided to build one of my own.
Rsync::Config::Parser 0.3.1
Rsync::Config::Parser is a simple Perl module for Rsync configuration parser. more>>
SYNOPSIS
use Rsync::Config::Parser;
use Rsync::Config;
sub main {
my $parser = new Rsync::Config::Parser();
my $conf = $parser->parse(/etc/rsyncd.conf);
}
SUBROUTINES/METHODS
new()
Class constructor. Accepts a hash with the following options:
eat_trail_spaces (def. 0)
Removes the trail spaces from all lines.
parse($filename, $opt)
Calls the parser. You can override the defaults options by giving a hash ref ($opt). Returns a Rsync::Config object.
eat_trail_spaces
my $eat_trails = $parser->eat_trail_spaces;
$parser->eat_trail_spaces(1);
Both accessor and mutator, eat_trail_spaces can be used to get the current value or to change it.
If no arguments are provided, it will return the current eat_trail_spaces value.
If arguments are provided, first is considered to be the new eat_trail_spaces value and applied to the current object, all others being ignored.
As mutator, the current object will be returned (useful for method chaining).
If invalid value is passed , a fatal error is threw. Valid values are non-negative integers (0 included).
It can also be called as a class method, returning the default eat_trail_spaces value. In this case, no mutator mode is possible.
PandaLex PDF Parser 0.5
PandaLex PDF Parser is a flex and bison parser for PDF documents. more>>
It is a flex and bison description of the PDF specification, which allows programmers to define callbacks to handle different document elements.
RDF::Simple::Parser 0.3
RDF::Simple::Parser is a simple RDF/XML parser that reads a string containing RDF in XML. more>>
SYNOPSIS
my $uri = http://www.zooleika.org.uk/bio/foaf.rdf;
my $rdf = LWP::Simple::get($uri);
my $parser = RDF::Simple::Parser->new(base => $uri)
my @triples = $parser->parse_rdf($rdf);
# returns an array of array references which are triples
Raptor RDF Parser Toolkit 1.4.19
Open Source C library that provides a set of parsers and serializers for generating Resource Description Framework (RDF) triples more>>
Raptor RDF Parser Toolkit 1.4.19 is a very serviceable software / Open Source C library that provides a set of parsers and serializers generating Resource Description Framework (RDF) triples by parsing syntaxes or serialize the triples into a syntax.
The supported parsing syntaxes are RDF/XML, N-Triples, TRiG, Turtle, RSS tag soup including all versions of RSS, Atom 1.0 and 0.3, GRDDL and microformats for HTML, XHTML and XML and RDFa. The serializing syntaxes are RDF/XML (regular, and abbreviated), Atom 1.0, GraphViz, JSON, N-Triples, RSS 1.0 and XMP.
Raptor was designed to work closely with the Redland RDF library (RDF Parser Toolkit for Redland) but is entirely separate. It is a portable library that works across many POSIX systems (Unix, GNU/Linux, BSDs, OSX, cygwin, win32). Raptor has no memory leaks and is fast.
Major Features:
- Designed to integrate well with Redland
- Parses content on the web if libcurl, libxml2 or BSD libfetch is available.
- Supports all RDF terms including datatyped and XML literals
- Optional features including parsers and serialisers can be selected at configure time.
- Language bindings to Perl, PHP, Python and Ruby when used via Redland
- No memory leaks
- Fast
- Standalone rapper RDF parser utility program
Enhancements:
- Many improvements to RSS tag soup (RSSes and Atom) parser and the RSS 1.0 and Atom serializers
- Several fixes and improvements to the N-Triples, RDFa and RDF/XML parsers and Turtle serializer
- Improved the use and configuration of static libxml functions for better compatibility
- Several Win32 portability fixes - Lou Sakey
- Many internal changes for upcoming Raptor V2 - primarily by Lauri Aalto
- Many other fixes and resilience improvements.
- Fixed:
-
- Fix NFC check for legal combiner sequence
- Error when raptor_new_uri() fails in Turtle parser
- Invalid turtle output syntax on empty integer/double/decimal literals
- Default/atom namespace in atom serializer output
- strstr is called in raptor_parse_chunk() on a buffer string, where it should be called on a null-terminating string.
- RSS serializer fixes for g++
- Fix raptor_sequence_set_at() when setting beyond end
- broken collection abbreviation in turtle serialization
- Fix raptor_sax2_parse_chunk() calling raptor_log_error_to_handlers() with expat raptor_get_feature function does not return feature value
- Fix RDFa parser problem when there is a subject and predicate specified on an element, but no child nodes for the object literal
- Fix performance problems when turtle parsing with lots of namespaces
- Fix RDF/XML Parser problem with legacy ordinal predicates
- Avoid calling xsltSetDefaultSecurityPrefs()
- Fix NFC check for legal combiner sequence
MultipartRequest File Upload parser 2.0B9
MultipartRequest File Upload parser provides a HttpServletMultipartRequest class... more>>
Enhancements:
- The API was completely redesigned.
- Much of the internals of the code remains the same, but the API is much more OO compatible and is for Java 2 servlets only.
Bigtop::Parser 0.16
Bigtop::Parser is the Parse::RecDescent grammar driven parser for bigtop files. more>>
SYNOPSIS
Make a file like this:
config {
base_dir `/home/username`;
Type1 Backend {}
Type2 Backend {}
Type3 Backend {}
}
app App::Name {
table name { }
controller SomeController {}
}
Then run this command:
bigtop my.bigtop all
This module is really only designed to be used by bigtop. It provides the grammar which understands bigtop files and turns them into syntax trees. It provides various utility functions for bigtop (or similar tools you might write) and for backends.
Reading further is an indication that you are interested in working on Bigtop and not just in using it to serve your needs.
Tartan text parser 0.1.0
Tartan is a text parsing engine targeted at wiki text. more>>
It supports layering and multiple output types. Rules for Markdown to HTML are included, with optional layered extensions for tables. Tartan text parser is implemented in Ruby, but looking to have implementations in other languages.
Biblio::Citation::Parser 1.10
Biblio::Citation::Parser provides a citation parsing framework. more>>
Biblio::Citation::Parser provides generic methods for reference parsers. This class should not be used directly, but rather be overridden by specific parsers.
Parsers that extend the Parser class must provide at least the two methods defined here to ensure compatibility.
METHODS
$cite_parser = Biblio::Citation::Parser->new()
The new() method creates a new parser instance.
$metadata = $parser->parse($reference)
The parse() method takes a reference and returns the extracted metadata.
Parsifal XML Parser 1.0.0
Parsifal XML Parser is a validating XML 1.0 parser written in ANSI C. more>>
Parsifal can be used for parsing XML based messages (such as REST and RSS) and for application specific data processing e.g. config files, data files etc. Parsifal can also be used for document-oriented processing (e.g. XHTML xhtml1-transitional.dtd) and for parsing modular documents because it is conforming XML 1.0 parser and it supports features like internal and external general entities, DTD parameter entities and default attributes etc. Parsifal is ideal for processing large data files and streams since its SAX based and consumes very little memory not to mention it is fast enough for most purposes cos its written in C.
Using Parsifal in place of large XML processing libraries (e.g. libxml, xerces) or even in the place of small Expat (which doesnt support DTD validation) can be justified for limited memory environments and in applications requiring bundled parser; because of its modular design parsifal can be easily compiled to support DTD validation or to perform only non-validating parsing etc. If you need higher level tools, for example dom/xpath processing, you should look for other libs of course.
Main features:
- PublicID legal chars arent fully checked
- XML Namespaces 1.0 duplicate URIs arent checked
- Allows some illegal placement for parameter entity references (see conformance test results)
- Validation of TokenizedType attributes (e.g. ID) are not yet implemented nor checking for existence of valid NOTATIONs etc.
- Doesnt check non-determinism of content models in validating mode
Supported XML encodings
- UTF-8
- ISO-8859-1
- US-ASCII
When compiled with GNU libiconv support:
- UTF-16, UCS-2, UTF-32, UCS-4
- EUC-JP
- SHIFT_JIS
- ISO-8859-{1,2,3,4,5,7,9,10,13,14,15,16}
Enhancements:
- This release fixes GCC 4 issues and polishes the configuration script.