[svn:parrot] r37654 - in trunk: . config/gen/makefiles src/dynpmc
barney at svn.parrot.org
barney at svn.parrot.org
Mon Mar 23 20:58:22 UTC 2009
Author: barney
Date: Mon Mar 23 20:58:22 2009
New Revision: 37654
URL: https://trac.parrot.org/parrot/changeset/37654
Log:
[dynpmc] Removing the unused Pair PMC
Deleted:
trunk/src/dynpmc/pair.pmc
Modified:
trunk/MANIFEST
trunk/config/gen/makefiles/dynpmc.in
Modified: trunk/MANIFEST
==============================================================================
--- trunk/MANIFEST Mon Mar 23 20:22:29 2009 (r37653)
+++ trunk/MANIFEST Mon Mar 23 20:58:22 2009 (r37654)
@@ -1,7 +1,7 @@
# ex: set ro:
# $Id$
#
-# generated by tools/dev/mk_manifest_and_skip.pl Mon Mar 23 20:21:49 2009 UT
+# generated by tools/dev/mk_manifest_and_skip.pl Mon Mar 23 20:57:26 2009 UT
#
# See tools/dev/install_files.pl for documentation on the
# format of this file.
@@ -1239,7 +1239,6 @@
src/dynpmc/foo.pmc [devel]src
src/dynpmc/gdbmhash.pmc [devel]src
src/dynpmc/main.pasm []
-src/dynpmc/pair.pmc [devel]src
src/dynpmc/rational.pmc [devel]src
src/dynpmc/rotest.pmc [devel]src
src/dynpmc/subproxy.pmc [devel]src
Modified: trunk/config/gen/makefiles/dynpmc.in
==============================================================================
--- trunk/config/gen/makefiles/dynpmc.in Mon Mar 23 20:22:29 2009 (r37653)
+++ trunk/config/gen/makefiles/dynpmc.in Mon Mar 23 20:58:22 2009 (r37654)
@@ -34,7 +34,6 @@
PMC_TARGETS := \
dynlexpad$(LOAD_EXT) \
foo$(LOAD_EXT) \
- pair$(LOAD_EXT) \
rotest$(LOAD_EXT) \
#IF(has_gdbm): gdbmhash$(LOAD_EXT) \
rational$(LOAD_EXT) \
@@ -122,18 +121,6 @@
foo.dump: foo.pmc
$(PMC2CD) foo.pmc
-pair$(LOAD_EXT): pair$(O)
- $(LD) $(LD_OUT)pair$(LOAD_EXT) pair$(O) $(LINKARGS)
-
-pair$(O): pair.c
- $(CC) $(CC_OUT)pair$(O) $(INCLUDES) $(CFLAGS) pair.c
-
-pair.c: pair.dump
- $(PMC2CC) pair.pmc
-
-pair.dump: pair.pmc
- $(PMC2CD) pair.pmc
-
rotest$(LOAD_EXT): rotest$(O)
$(LD) $(LD_OUT)rotest$(LOAD_EXT) rotest$(O) $(LINKARGS)
Deleted: trunk/src/dynpmc/pair.pmc
==============================================================================
--- trunk/src/dynpmc/pair.pmc Mon Mar 23 20:58:22 2009 (r37653)
+++ /dev/null 00:00:00 1970 (deleted)
@@ -1,356 +0,0 @@
-/*
-Copyright (C) 2005-2009, Parrot Foundation.
-$Id$
-
-=head1 NAME
-
-src/pmc/pair.pmc - Pair PMC
-
-=head1 DESCRIPTION
-
-A Pair PMC represents one key => value mapping like a one element hash.
-
-'EclectusPair' subclasses this.
-
-=head2 Functions
-
-=over 4
-
-=cut
-
-*/
-
-#include "parrot/parrot.h"
-#include "pmc_pair.h"
-
-pmclass Pair dynpmc need_ext {
- ATTR PMC *key;
- ATTR PMC *value;
-
-/*
-
-=item C<void init()>
-
-Initializes the instance.
-
-=item C<PMC *instantiate(PMC *sig)>
-
-Class method to construct an Integer according to passed arguments.
-
-=cut
-
-*/
-
- VTABLE void init() {
- PMC_data(SELF) = mem_allocate_zeroed_typed(Parrot_Pair_attributes);
- PObj_custom_mark_SET(SELF);
- }
-
- VTABLE PMC *instantiate(PMC *sig) {
- return PMCNULL;
-
- /* TODO -- really create this thing */
-#if 0
- PMC * const _class = REG_PMC(interp, 2);
- Parrot_Pair_attributes *pair = PARROT_PAIR(SELF);
- const int argcP = REG_INT(interp, 3);
- const int argcS = REG_INT(interp, 2);
-
- SELF = pmc_new(INTERP, _class->vtable->base_type);
- if (argcS == 1 && argcP == 1) {
- PObj_key_is_string_SET(SELF);
- pair->key = REG_STR(interp, 5);
- pair->value = REG_PMC(interp, 5);
- }
- else if (argcP == 2) {
- pair->key = REG_PMC(interp, 5);
- pair->value = REG_PMC(interp, 6);
- }
- else
- Parrot_ex_throw_from_c_args(INTERP, NULL, EXCEPTION_INVALID_OPERATION,
- "wrong argument count for Pair creation");
-
- return SELF;
-#endif
- }
-/*
-
-=item C<void mark()>
-
-Marks the hash as live.
-
-=cut
-
-*/
-
- VTABLE void mark() {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
-
- if (pair->key)
- pobject_lives(INTERP, (PObj *)pair->key);
-
- if (pair->value)
- pobject_lives(INTERP, (PObj *)pair->value);
- }
-
-/*
-
-=item C<PMC *get_pmc_keyed_str(STRING *key)>
-
-=item C<PMC *get_pmc_keyed(PMC *key)>
-
-=cut
-
-*/
-
- VTABLE PMC *get_pmc_keyed_str(STRING *key) {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
- /* check key ? */
- return pair->value;
- }
-
- VTABLE PMC *get_pmc_keyed(PMC *key) {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
- /* check key ? */
- return pair->value;
- }
-
-/*
-
-=item C<void set_pmc_keyed(PMC *key, PMC *value)>
-
-=item C<void set_pmc_keyed_str(STRING *key, PMC *value)>
-
-Set key and value. The key can only set once.
-
-=item C<void assign_pmc(PMC *value)>
-
-Set the value of the Pair.
-
-=cut
-
-*/
-
- VTABLE void set_pmc_keyed(PMC *key, PMC *value) {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
-
- if (pair->key)
- Parrot_ex_throw_from_c_args(INTERP, NULL, EXCEPTION_INVALID_OPERATION,
- "attempt to set existing Pair key");
-
-
- pair->key = key;
- pair->value = value;
- }
-
-
- VTABLE void set_pmc_keyed_str(STRING *key, PMC *value) {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
- PMC *key_pmc;
-
- if (pair->key)
- Parrot_ex_throw_from_c_args(INTERP, NULL, EXCEPTION_INVALID_OPERATION,
- "attempt to set existing Pair key");
-
-
- key_pmc = pmc_new(interp, enum_class_String);
- VTABLE_set_string_native(interp, key_pmc, key);
-
- pair->key = key_pmc;
- pair->value = value;
- }
-
- VTABLE void assign_pmc(PMC *value) {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
- pair->value = value;
- }
-
-/*
-
-=item C<void set_pmc(PMC *pair)>
-
-Sets this pair to hold the value of another.
-
-=cut
-
-*/
-
- void set_pmc(PMC *pair) {
- if (pair->vtable->base_type == SELF->vtable->base_type) {
- Parrot_Pair_attributes * const from = PARROT_PAIR(SELF);
- Parrot_Pair_attributes * const to = PARROT_PAIR(SELF);
-
- to->key = from->key;
- to->value = from->value;
- }
- else
- Parrot_ex_throw_from_c_args(INTERP, NULL, EXCEPTION_INVALID_OPERATION,
- "Can only set a pair to another pair.");
- }
-
-/*
-
-=item C<INTVAL is_equal(PMC *value)>
-
-The C<==> operation.
-
-Check if two Pairs hold the same keys and values.
-
-=cut
-
-*/
-
- VTABLE INTVAL is_equal(PMC *value) {
- Parrot_Pair_attributes * const from = PARROT_PAIR(SELF);
- Parrot_Pair_attributes * const to = PARROT_PAIR(SELF);
- PMC *p1, *p2;
- PMC *k1, *k2;
- INTVAL result;
-
- if (value->vtable->base_type != SELF->vtable->base_type)
- return 0;
-
- k1 = from->key;
- k2 = to->key;
-
- Parrot_mmd_multi_dispatch_from_c_args(INTERP, "is_equal",
- "PP->I", k1, k2, &result);
- if (!result)
- return 0;
-
- p1 = from->value;
- p2 = to->value;
-
- if (!p1 && !p2)
- return 1;
- else
- return 0;
- }
-
-/*
-
-=item C<void visit(visit_info *info)>
-
-Used during archiving to visit the elements in the pair.
-
-=item C<void freeze(visit_info *info)>
-
-Used to archive the Pair.
-
-=item C<void thaw(visit_info *info)>
-
-Used to unarchive the Pair.
-
-=cut
-
-*/
-
- VTABLE void visit(visit_info *info) {
- PMC **pos;
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
- IMAGE_IO * const io = info->image_io;
- DPOINTER ** const temp_pos = (DPOINTER **)pair->key;
- info->thaw_ptr = (PMC **)temp_pos;
- (info->visit_pmc_now)(INTERP, (PMC *)temp_pos, info);
-
- pos = &pair->value;
- info->thaw_ptr = pos;
-
- (info->visit_pmc_now)(INTERP, *pos, info);
-
- SUPER(info);
- }
-
- VTABLE void freeze(visit_info *info) {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
- IMAGE_IO * const io = info->image_io;
- SUPER(info);
- VTABLE_push_pmc(INTERP, io, pair->key);
- VTABLE_push_pmc(INTERP, io, pair->value);
- }
-
- VTABLE void thaw(visit_info *info) {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
- IMAGE_IO * const io = info->image_io;
-
- SUPER(info);
-
- pair->key = VTABLE_shift_pmc(interp, io);
- pair->value = VTABLE_shift_pmc(interp, io);
- }
-/*
-
-=back
-
-=head2 Methods
-
-=over 4
-
-=item C<METHOD key()>
-
-Return the key of the pair.
-
-=cut
-
-*/
-
- METHOD key() {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
- PMC *key = pair->key;
-
- RETURN(PMC *key);
- }
-
-/*
-
-=item C<METHOD value()>
-
-Return the value of the pair.
-
-=cut
-
-*/
-
- METHOD value() {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
- PMC * const value = pair->value;
- RETURN(PMC *value);
- }
-
-/*
-
-=item C<METHOD kv()>
-
-Return a tuple of (key, value) for the pair.
-
-=cut
-
-*/
-
- METHOD kv() {
- Parrot_Pair_attributes * const pair = PARROT_PAIR(SELF);
- PMC * const t = pmc_new(INTERP,
- Parrot_get_ctx_HLL_type(INTERP, enum_class_FixedPMCArray));
-
- VTABLE_set_integer_native(INTERP, t, 2);
- VTABLE_set_pmc_keyed_int(INTERP, t, 0, pair->key);
-
- VTABLE_set_pmc_keyed_int(INTERP, t, 1, pair->value);
- RETURN(PMC *t);
- }
-}
-
-/*
-
-=back
-
-=cut
-
-*/
-
-/*
- * Local variables:
- * c-file-style: "parrot"
- * End:
- * vim: expandtab shiftwidth=4:
- */
More information about the parrot-commits
mailing list